Click here to Skip to main content
15,889,116 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Urgent Help ~!! Convert Lab to RGB Pin
Rajesh R Subramanian28-Jan-08 23:31
professionalRajesh R Subramanian28-Jan-08 23:31 
GeneralRe: Urgent Help ~!! Convert Lab to RGB [modified] Pin
azusakt29-Jan-08 15:26
azusakt29-Jan-08 15:26 
GeneralRe: Urgent Help ~!! Convert Lab to RGB Pin
CPallini28-Jan-08 23:57
mveCPallini28-Jan-08 23:57 
GeneralRe: Urgent Help ~!! Convert Lab to RGB [modified] Pin
Mr. Surprise29-Jan-08 7:35
Mr. Surprise29-Jan-08 7:35 
GeneralRe: Urgent Help ~!! Convert Lab to RGB Pin
azusakt29-Jan-08 19:10
azusakt29-Jan-08 19:10 
GeneralRe: Urgent Help ~!! Convert Lab to RGB [modified] Pin
Mr. Surprise29-Jan-08 22:07
Mr. Surprise29-Jan-08 22:07 
GeneralStoring ptint setup info Pin
g_sandipan28-Jan-08 23:12
g_sandipan28-Jan-08 23:12 
GeneralFloating point arithmetic Pin
User 345557728-Jan-08 23:12
User 345557728-Jan-08 23:12 
Check out these two code paths:
float s = 1.0f + pow(2.0f,-8.0f) + pow(2.0f,-18.0f);

float fRes1 = 1024 * s;

float fRes2 = 0.0f;
for(int i=0; i<1024; ++i)
    fRes2 +=s;


now watch the results:
fRes1: 1028.0039
fRes2: 1028.0002

This was tested on Intel Dual-core, VS2005. the direct multiplication was compiled to use fmul, the accumulation was compiled to use fadd. The scalar value s was crafted to know analytically which is the correct result. it is fRes1 (the fmul result).

Can anyone shed some light on the source of the difference??

it can't be (i think) a direct precision issue - all arguments and intermediate values are *exactly* representable in single precision.


any insight would be greatly appreciated!

-Ofek

modified 23-Jan-21 21:03pm.

GeneralRe: Floating point arithmetic Pin
Maxwell Chen28-Jan-08 23:32
Maxwell Chen28-Jan-08 23:32 
GeneralRe: Floating point arithmetic Pin
CPallini28-Jan-08 23:36
mveCPallini28-Jan-08 23:36 
GeneralRe: Floating point arithmetic Pin
Maxwell Chen28-Jan-08 23:39
Maxwell Chen28-Jan-08 23:39 
GeneralRe: Floating point arithmetic Pin
CPallini28-Jan-08 23:51
mveCPallini28-Jan-08 23:51 
GeneralRe: Floating point arithmetic Pin
User 345557728-Jan-08 23:53
User 345557728-Jan-08 23:53 
GeneralRe: Floating point arithmetic Pin
Maxwell Chen28-Jan-08 23:57
Maxwell Chen28-Jan-08 23:57 
GeneralRe: Floating point arithmetic Pin
User 345557728-Jan-08 23:57
User 345557728-Jan-08 23:57 
GeneralRe: Floating point arithmetic Pin
CPallini29-Jan-08 0:13
mveCPallini29-Jan-08 0:13 
GeneralRe: Floating point arithmetic Pin
User 345557729-Jan-08 1:46
User 345557729-Jan-08 1:46 
GeneralRe: Floating point arithmetic Pin
Maxwell Chen29-Jan-08 4:33
Maxwell Chen29-Jan-08 4:33 
GeneralThe villain is found! Pin
User 34555776-Feb-08 1:06
User 34555776-Feb-08 1:06 
QuestionTimer Intervals Pin
Derick Magagula28-Jan-08 22:03
Derick Magagula28-Jan-08 22:03 
GeneralRe: Timer Intervals Pin
Cedric Moonen28-Jan-08 22:09
Cedric Moonen28-Jan-08 22:09 
GeneralRe: Timer Intervals [modified] Pin
Maxwell Chen28-Jan-08 22:09
Maxwell Chen28-Jan-08 22:09 
GeneralRe: Timer Intervals Pin
David Crow29-Jan-08 3:07
David Crow29-Jan-08 3:07 
GeneralRe: Timer Intervals Pin
Maxwell Chen29-Jan-08 4:35
Maxwell Chen29-Jan-08 4:35 
GeneralRe: Timer Intervals Pin
CPallini28-Jan-08 22:54
mveCPallini28-Jan-08 22:54 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.