Closed XavKearney closed 5 years ago
Do either of #5 and #25 help? This looks to be floating-point-related issue to me. Do remember that precision and accuracy are not synonymous!
Yes, thank you. It seems to align exactly with those issues. I should've searched better!
I've just implemented
StepWorldV3OpenCL
. I've been testing as I go bydiff
ing:and
Until now, the results have been consistent. After finishing the kernelised implementation, the results are no longer identical. They're the same up to ~5 decimal places, but differ after that. If I reduce the number of time steps to < 6, then they're equal again.
For 10k time steps, here's a comparison:
Reference output:
OpenCL output:
Is this expected? I've also tried switching devices between my GPU and CPU, to no avail.
Thanks!