Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This updates the benchmarking script to use LangevinMiddleIntegrator and a larger time step where possible. Here are the speeds I get for the PME benchmark with different possible combinations of settings.
LangevinIntegrator, 2 fs, HBonds constraints: 417
LangevinMiddleIntegrator, 4 fs, HBonds constraints: 740
LangevinMiddleIntegrator, 5 fs, AllBonds constraints, HMR: 568
Langevintegrator, 5 fs, AllBonds constraints, HMR: 775
The ordering is the same for most benchmarks. Using LangevinMiddleIntegrator with the larger step size produces a big speed improvement compared to LangevinIntegrator. But the very fastest combination is to use LangevinIntegrator with HMR and more constraints. Since LangevinMiddleIntegrator needs to apply constraints more often, it takes a big hit from using AllBonds constraints.
Therefore if you specify
--heavy-hydrogens
, I made the script continue to use LangevinIntegrator in place of LangevinMiddleIntegrator.