Re: [eigen] sse transcendental functions |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] sse transcendental functions
- From: Rohit Garg <rpg.314@xxxxxxxxx>
- Date: Thu, 26 Mar 2009 22:39:36 +0530
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=s6lzVnRKPqXRJnAgDtCTFKs1rCaqL7/LoqMJ/hwYenk=; b=lOQXJixc8K1vGnDsXVhOWnlI1BNTG+kJJ7Wyv+ol5kQ1rA+fjSQJhhnqtBHAFH4ZSa BbN7SYpvP1w7ayBAhtsE5U7cRVxIrYKwi4Mc4AA1wdRCoqJCSQIGQMzJzf69H5UeQb2Q 05lLz6QBPXacq6tcca82wZJboBCHd2lGrpTC8=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=EWJzBEDFWB4ZPhxq5XTmoF4FEmPveFJsV7HNm5lU5qMUJvRLx1YNpHLtUvxvfjOaf8 Jk2PAZiUKDjF1R+KWSzKGYIsu6BuT9DWKwUqaH1KoMgT6ObzDgWSSFuX9aOr6aDwplFS l0Og+/FFwgQcg198enQ3lqUUP3DjW3qyULLgY=
<snip>
>> 1) It could be obvious but what does the DEIGEN_FAST_MATH macro do?
>
> this is explained in the doxy doc, just on top of EIGEN_FAST_MATH,
> basically it allows you to disable some optimizations which might
> degrades the accuracy
Thanks.
>
>> 2) do you feel there is place for fast implementations of such
>> transcendental functions in eigen? I think we should clearly advertise
>> in the documentation that the SSE version is for 'fast-operations' as
>> seems to be the case. BTW, automagically enabling these when the user
>> compiles with -ffast-math would be cool.
>
> well, currently the only problem of accuracy is for sin/cos and single
> precision floating point values out of the range [-8000 : 8000]. In
> such cases, the error is still lower than taking the same value modulo
> 2pi and then call the glibc sin/cos function. So, really, I think, it
> is safe to enable them by default.
Ok.
>
>> 3) any particular reason why the sincos4f from the Julian's sources
>> hasn't made it in yet?
>
> because currently there is no sincos function in eigen.
Well that's exactly what I was asking, sincos function has been
implemented by Julian, then why was it not committed. AFAICS, is it
because the return values are passed by pointer to it?
--
Rohit Garg
http://rpg-314.blogspot.com/
Senior Undergraduate
Department of Physics
Indian Institute of Technology
Bombay