Cross-platform determinism
Posted: Sat Apr 28, 2012 11:09 am
With "cross-platform determinism", I mean that a simulation will give bit-identical results given the same initial conditions, sources of randomness, on a reasonable selection of platforms (can't expect bug-for-bug compatibility between an ancient 8087 and an AMD Turion).
I see that determinism does come up occationally, but I haven't found any advice on the various web pages that I checked, and I wasn't always sure whether anybody ever talked about cross-platform determinism (CPD), so here goes:
Is Bullet even supposed to have CPD, or is that beyond Bullet's scope?
What parts of Bullet should be avoided since they cannot be made CPD?
What parts of Bullet would need to be used or set up in specific ways to make them CPD?
(The remaining parts would be CPD no matter what.)
If a part of Bullet is CPD, and becomes non-CPD in an update, would that be considered a bug worth fixing? What priority would that fix have, in relation to other bugs?
My use case is that I'm currently exploring possible architectural decisions for a new project, and the availability of CPD would make some choices viable that wouldn't be otherwise.
I see that determinism does come up occationally, but I haven't found any advice on the various web pages that I checked, and I wasn't always sure whether anybody ever talked about cross-platform determinism (CPD), so here goes:
Is Bullet even supposed to have CPD, or is that beyond Bullet's scope?
What parts of Bullet should be avoided since they cannot be made CPD?
What parts of Bullet would need to be used or set up in specific ways to make them CPD?
(The remaining parts would be CPD no matter what.)
If a part of Bullet is CPD, and becomes non-CPD in an update, would that be considered a bug worth fixing? What priority would that fix have, in relation to other bugs?
My use case is that I'm currently exploring possible architectural decisions for a new project, and the availability of CPD would make some choices viable that wouldn't be otherwise.