New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixes for srp example #339
Conversation
…ing bins and stencil point, too. in addition, relevant pointers were not properly initialized to NULL
Yup, i can now successfully run both the gcmc test from anders and the basal input, too. |
@sjplimp was considering a slightly different fix, we should coordinate |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
…ghbor list, if newton settings are not compatible an alternate route to address this issue would be to allow an "ANY" setting for neighbor list requests and then query the neighbor list for newton setting instead of the force class.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This fix resolves the segmentation fault of the SRP example. However, comparing thermodynamic output to the last stable release 17/11 2016, shows all out put are completely off. Temperature ~100 not 1 and so on.
Having looked more closely into the output, and comparing the branch to the 17/11 2016 stable version, then most of the neighbor builds for this branch are dangeous and they contain much fewer ghosts and neighbors compared to the stable simulation. The fix srp modifies the cutoff after the neighbor lists have been initialized, perhaps they are not correctly reinitialized? This branch: Performance: 95080.412 tau/day, 110.047 timesteps/s MPI task timing breakdown:
|
yup, that seems to be the case. when i manually reset the communication cutoff to, say, 4.0, the results are back to what they previously were. |
… minimum value needed and error out i suspect, this communication cutoff adjustment was included into the code before it was possible to separately set it via comm_modify. stopping with an error message printing the needed/current value is cleaner, in keeping with other modules in LAMMPS and much less problematic.
after some thinking about it, i have changed fix srp to not even try to adjust the communication cutoff and then having to deal with all kinds of re-initialization issues, but rather report the cutoff needed and then exist in case it is insufficient. it'll be easy to add a comm_modify cutoff command into the LAMMPS input with a suitable cutoff after this error. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks. nice catch on the out-of-bounds read. setting the comm cutoff in the script should be just as 'usable' as the auto-set.
This adds several changes fixing problems exposed by running the example for fix srp and a bug report for compute rdf reported on lammps-users
The second fix seems to affect other problem reports as well, e.g. it fixes #316
As indicated in the comments, there may be a more general way to address the issue in Npair, however, this PR may serve as a temporary workaround.