4 ms·
FP64 is not that precise; proper simulations usually need much higher precision. Even ancient Intel could do 80-bit FP.
by storus 3mo ago
FP64 is not that precise; proper simulations usually need much higher precision. Even ancient Intel could do 80-bit FP.
- addaon 3mo agoThis very much depends on the simulation. CFD historically used 64-bit, with extended precision used internal to an extremely small number of poorly conditioned operations, or with very stiff equations; today it's not at all unusual to use single precision or (strategically) mixed precision, depending on the problem. I think the strongest statement you could make about simulation workloads, rather than them "needing" a specific precision, is that they are usually properly analyzed to determine the needed precision, and then run at that precision.
- storus 3mo agoOne could argue that the interesting parts of simulation require higher precision. When you are in stable conditions, that's where your intuition might be sufficient already; once you hit those ugly parts then you start requiring as high precision as you can get to have any correlation with reality. Even a simple solar system simulation through gravity interactions has significant drifts in FP64.
- jetsamflotsam 3mo agoDatatype requirements vary in time and space for a given application. We're just beginning to optimize for this, so there is yet much to discover.
- fancyfredbot 3mo agoancient intel did 80 bit fp until your intermediate result was written from registers to memory. Since you typically have no control over when that happens, even in very low level languages like C, the 80 bit precision mostly had the effect of making your code produce different results on different compilers. If you needed 80 bit precision and deterministic results you had to write the algorithm in assembly.