Burst floating point determinism

Burst cross-architecture floating point determinism is on the roadmap. Can you talk about what the plans are for that?

Also, what are the plans for supporting determinism on the same platform? In the future can we expect, for example, that all AVX2 CPUs will return the same results? Or will we need to enable cross-architecture floating points to guarantee determinism?

2 Likes

Nobody to my knowledge is working on it, because everybody who could is either fixing burst bugs or helping with the migration to coreclr (which is going to be great).

So, the plans are basically “wouldn’t that be cool at Some Point™.”

6 Likes

Although it’s not guaranteed that CPU will have IEEE 754 standard, practically everyone implements it. And many game dev companies just assume it’s gonna be on every platform and the result across devices gonna be the same if you use standard float precision. What you can’t expect is that you can turn off certain float features for optimization on every platform. And be aware certain unity packages change float precision of your C# code, but it doesn’t affect Burst