-
Notifications
You must be signed in to change notification settings - Fork 132
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
Further improve GSD performance. #1541
Conversation
Also move initFileIO to the constructor. This prevents the need for double caching of the buffer size prior to opening the file.
Ensure that we do not rely on Python's garbage collector to ensure that the file is written after the call to write() ends.
Frontier performance (Orion) with 1 rank writing frames with N positions:
Log-only files show a massive improvement:
The limitation here might be the index buffer limit. Perhaps we should re-implement the index buffer limit as a fraction of the write buffer so they scale together. Not that there is anything wrong with a 380x speedup, but there might be room for a little more. |
Also check for errors in new GSD API calls.
34cee0a
to
9c17fe5
Compare
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.
LGTM
Description
Add write buffers to further improve GSD performance.
Motivation and context
See glotzerlab/gsd#237.
Most users will not need to change the write buffer size. I make the API available so that users wishing to push the limits can increase the buffer size.
How has this been tested?
TODO:
Change log
Checklist:
sphinx-doc/credits.rst
) in the pull request source branch.