nbody -compare somewhat misleading validation lacks rigor, needs mods

For the SDK project nbody, the validation (“nbody -compare”) of the GPU method with the CPU reference implementation is kind of misleading. It mostly seems to compare initial conditions for the two computations and does not validate the compute-intensive N-body computations:

If I remove the following call at around line 186 in bodysystemcpu.cpp:
the comparison still passes!

_computeNBodyGravitation() is where all the work is done doing the N-body comparisons. If that doesn’t execute then it seems that a reasonably rigorous validation should detect such a gross change in the program. I suggest that the compare be restructured in such a way that such a change would be detected.

(Note: This is for a single-precision implementation - I don’t know if this may change with DP.)


Have you made any significant changes in the nbody code?

I was hoping someone would add a ‘save state of simulation’ button.

…also a camera that would follow a given cluster.

I would do it myself, but I am not very proficient in C++ <img src=‘http://hqnveipbwb20/public/style_emoticons/<#EMO_DIR#>/crying.gif’ class=‘bbc_emoticon’ alt=‘:’(’ />

If your are capable of doing such a thing, let me know, and I would love to help you improve this great app.


Nope, sorry, that’s not in the cards for me. Good luck with that.