[ODE] deterministic simulations

J. Eric Coleman eric at strategon.com
Wed Jun 21 06:44:07 MST 2006


How do you account for variances in the the internal floating point 
accuracy of processors?  I thought Intel processors did 32bit floating 
point math internally at 36bits (or something slightly larger than 
32).   And I'm pretty sure this is different from the way AMD performs 
floating point math.

Erwin de Vries wrote:

>I've modified the dRand functions not to use the static seed variable 
>anymore, and simply take a parameter instead. Your option would also work, 
>but i needed this to make ODE able to handle multithreading.
>
>Regards,
>Erwin
>
>----- Original Message ----- 
>From: "Ricardo Kirkner" <ricardokirkner at gmail.com>
>To: "Erwin de Vries" <erwin at vo.com>
>Cc: "ode-list" <ode at q12.org>
>Sent: Wednesday, June 21, 2006 1:59 PM
>Subject: Re: [ODE] deterministic simulations
>
>
>  
>
>>How do you do that ('fix the randoms used in iteration')? Just using
>>dRandSet? When do you use it, at each iteration step, or at the
>>beginning of the simulation?
>>
>>regards
>>
>>ricardo
>>
>>Erwin de Vries wrote:
>>    
>>
>>>To my knowledge ODE is deterministic as is, as long as you fix the 
>>>randoms
>>>used in iteration. I've fixed it up for my own usage a while ago, and it
>>>looks like its working perfectly for the things i've done. (Capturing 
>>>input
>>>on a P4, and playing it back on a Athlon worked fine, even in lengthy
>>>simulations.)
>>>
>>>Are there FPU specifics that could mess things up?
>>>
>>>Regards,
>>>Erwin
>>>
>>>----- Original Message ----- 
>>>From: "Hampus" <hampus at sxp.se>
>>>To: "ode-list" <ode at q12.org>
>>>Sent: Wednesday, June 21, 2006 10:23 AM
>>>Subject: [ODE] deterministic simulations
>>>
>>>
>>>      
>>>
>>>>I know this topic has been up before.
>>>>
>>>>I got a reply from another mailing list from a warcraft programmer on
>>>>how they solved FPU problems for deterministic simulations.
>>>>
>>>>        
>>>>
>>>>>No, I wrote an FPU emulator in C that used the integer unit for all
>>>>>          
>>>>>
>>>>its work. It wasn't pretty. But >by god it worked everywhere, even
>>>>PowerPC. I only had to drop to assembly for __cntlzw (as >well as an
>>>>Intel equivalent that used BSR).
>>>>
>>>>        
>>>>
>>>>>Warcraft III utilizes this code; when I last checked, about 5% of
>>>>>          
>>>>>
>>>>our execution time was >dedicated to FPU-less floating point math.
>>>>
>>>>Would and FPU emulator be feasable for ODE too?
>>>>
>>>>Cheers,
>>>>Hampa
>>>>Toribash.com
>>>>
>>>>
>>>>
>>>>
>>>>_______________________________________________
>>>>ODE mailing list
>>>>ODE at q12.org
>>>>http://q12.org/mailman/listinfo/ode
>>>>
>>>>        
>>>>
>>>_______________________________________________
>>>ODE mailing list
>>>ODE at q12.org
>>>http://q12.org/mailman/listinfo/ode
>>>
>>>      
>>>
>>    
>>
>
>_______________________________________________
>ODE mailing list
>ODE at q12.org
>http://q12.org/mailman/listinfo/ode
>
>  
>


More information about the ODE mailing list