hi Christian,
There is still a significant performance impact due to _controlfp_s
usage. I would like to remove it, but before I would also like to know
why you introduced it in the 1st place. The tests pass with or without
changing the fp on almost each fp ops (sigh :).
Can you explain why we need it and what tests are affected by this
change please?
Cheers,
Pierre
Hi Pierre,
(Btw. you got the wrong Christian as CC. ;-))
There is still a significant performance impact due to _controlfp_s
usage.
Huh? After the modification I made this should only called once (!) at
PHP startup Or did we miss something? Anyway, calling it once should not
cause any performance problems at all.
Can you explain why we need it and what tests are affected by this
change please?
This ensures that FPUs on x86 systems are definitely in double precision
mode. The default situation on Windows with MSVC is that the FPU is
already in double precision setting as far as I've tested it - however
there are situations (PHP embedded into a webserver for example) where
this may not be true.
Could you please provide some details for "significant performance impact"?
Regards,
Christian
PS: My package arrived a while ago and I remember I didn't say thanks
yet - so here it goes: Thanks a lot!
hi,
This ensures that FPUs on x86 systems are definitely in double precision
mode. The default situation on Windows with MSVC is that the FPU is
already in double precision setting as far as I've tested it - however
there are situations (PHP embedded into a webserver for example) where
this may not be true.
Should it not be a configure option then?
Could you please provide some details for "significant performance impact"?
I will push the numbers online on Monday.
Cheers,
Pierre
Hey Christian,
Uh, my fault.... false alarm.
The fix that went in a while back did indeed fix the problem.
Garrett
-----Original Message-----
From: Christian Seiler [mailto:chris_se@gmx.net]
Sent: Saturday, June 13, 2009 11:01 AM
To: Pierre Joye
Cc: php-dev List
Subject: Re: [PHP-DEV] float ops and _controlfp_s
Hi Pierre,
(Btw. you got the wrong Christian as CC. ;-))
There is still a significant performance impact due to _controlfp_s
usage.
Huh? After the modification I made this should only called once (!) at
PHP startup Or did we miss something? Anyway, calling it once should not
cause any performance problems at all.
Can you explain why we need it and what tests are affected by this
change please?
This ensures that FPUs on x86 systems are definitely in double precision
mode. The default situation on Windows with MSVC is that the FPU is
already in double precision setting as far as I've tested it - however
there are situations (PHP embedded into a webserver for example) where
this may not be true.
Could you please provide some details for "significant performance impact"?
Regards,
Christian
PS: My package arrived a while ago and I remember I didn't say thanks
yet - so here it goes: Thanks a lot!