Project

General

Profile

Bug #3091

simulator comparison test failing in gpucomm matrix

Added by Mark Abraham 28 days ago. Updated 26 days ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
mdrun
Target version:
Affected version - extra info:
Affected version:
Difficulty:
uncategorized
Close

Description

Pascal's simulation comparison tests seem to be comparing normal and modular-simulator leapfrog, and that is not interacting well with the gpubufferops and gpucomm matrices we're now running in nightly testing.

The fix could be an easy one, but we could also disable modular-simulator leapfrog with the new GPU paths in the meantime.

12:37:00 [ RUN      ] SimulatorsAreEquivalent/SimulatorComparisonTest.WithinTolerances/0
12:37:00 
12:37:00 NOTE 1 [file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_input.mdp, line 35]:
12:37:00   /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_input.mdp did not specify a value for the .mdp option "cutoff-scheme". As of GROMACS
12:37:00   2020, the Verlet scheme is the only cutoff scheme supported. This may
12:37:00   affect your simulation if you are using an old mdp file that assumes use
12:37:00   of the (removed) group cutoff scheme.
12:37:00 
12:37:00 
12:37:00 NOTE 2 [file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_input.mdp]:
12:37:00   With Verlet lists the optimal nstlist is >= 10, with GPUs >= 20. Note
12:37:00   that with the Verlet scheme, nstlist has no effect on the accuracy of
12:37:00   your simulation.
12:37:00 
12:37:00 
12:37:00 NOTE 3 [file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_input.mdp]:
12:37:00   Setting nstcalcenergy (100) equal to nstenergy (4)
12:37:00 
12:37:00 Generated 1 of the 1 non-bonded parameter combinations
12:37:00 Excluding 1 bonded neighbours molecule type 'Argon'
12:37:00 Removing all charge groups because cutoff-scheme=Verlet
12:37:00 Number of degrees of freedom in T-Coupling group System is 33.00
12:37:00 
12:37:00 NOTE 4 [file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_input.mdp]:
12:37:00   NVE simulation: will use the initial temperature of 68.810 K for
12:37:00   determining the Verlet buffer size
12:37:00 
12:37:00 
12:37:00 There were 4 notes
12:37:00 NOTE: This run uses the 'GPU buffer ops' feature, enabled by the GMX_USE_GPU_BUFFER_OPS environment variable.
12:37:00 
12:37:00 NOTE: This run uses the 'GPU halo exchange' feature, enabled by the GMX_GPU_DD_COMMS environment variable.
12:37:00 Compiled SIMD: None, but for this host/run AVX2_256 might be better (see log).
12:37:00 
12:37:00 The current CPU can measure timings more accurately than the code in
12:37:00 mdrun-test was configured to use. This might affect your simulation
12:37:00 speed as accurate timings are needed for load-balancing.
12:37:00 Please consider rebuilding mdrun-test with the GMX_USE_RDTSCP=ON CMake option.
12:37:00 Reading file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_sim.tpr, VERSION 2020-dev-20190916-f7e0fa3 (single precision)
12:37:00 Can not increase nstlist because an NVE ensemble is used
12:37:00 
12:37:00 Using 1 MPI thread
12:37:00 Using 2 OpenMP threads 
12:37:00 
12:37:00 1 GPU selected for this run.
12:37:00 Mapping of GPU IDs to the 1 GPU task in the 1 rank on this node:
12:37:00   PP:0
12:37:00 PP tasks will do (non-perturbed) short-ranged interactions on the GPU
12:37:00 
12:37:00 NOTE: The number of threads is not equal to the number of (logical) cores
12:37:00       and the -pin option is set to auto: will not pin threads to cores.
12:37:00       This can lead to significant performance degradation.
12:37:00       Consider using -pin on (and -pinoffset in case you run multiple jobs).
12:37:00 starting mdrun 'Argon'
12:37:00 16 steps,      0.0 ps.
12:37:00 Determining Verlet buffer for a tolerance of 1e-06 kJ/mol/ps at 68.8096 K
12:37:00 Calculated rlist for 1x1 atom pair-list as 0.701 nm, buffer size 0.001 nm
12:37:00 Set rlist, assuming 4x4 atom pair-list, to 0.701 nm, buffer size 0.001 nm
12:37:00 Note that mdrun will redetermine rlist based on the actual pair-list setup
12:37:00 This run will generate roughly 0 Mb of data
12:37:00 
12:37:00 Writing final coordinates.
12:37:00 
12:37:00 NOTE: 24 % of the run time was spent in pair search,
12:37:00       you might want to increase nstlist (this has no effect on accuracy)
12:37:00 
12:37:00                Core t (s)   Wall t (s)        (%)
12:37:00        Time:        0.021        0.011      199.0
12:37:00                  (ns/day)    (hour/ns)
12:37:00 Performance:      138.344        0.173
12:37:00 NOTE: This run uses the 'GPU buffer ops' feature, enabled by the GMX_USE_GPU_BUFFER_OPS environment variable.
12:37:00 
12:37:00 NOTE: This run uses the 'GPU halo exchange' feature, enabled by the GMX_GPU_DD_COMMS environment variable.
12:37:00 Compiled SIMD: None, but for this host/run AVX2_256 might be better (see log).
12:37:00 
12:37:00 The current CPU can measure timings more accurately than the code in
12:37:00 mdrun-test was configured to use. This might affect your simulation
12:37:00 speed as accurate timings are needed for load-balancing.
12:37:00 Please consider rebuilding mdrun-test with the GMX_USE_RDTSCP=ON CMake option.
12:37:00 Reading file /mnt/workspace/Matrix_OnDemand/74680f5e/gromacs/src/programs/mdrun/tests/Testing/Temporary/SimulatorsAreEquivalent_SimulatorComparisonTest_WithinTolerances_0_sim.tpr, VERSION 2020-dev-20190916-f7e0fa3 (single precision)
12:37:00 Can not increase nstlist because an NVE ensemble is used
12:37:00 
12:37:00 Using 1 MPI thread
12:37:00 Using 2 OpenMP threads 
12:37:00 
12:37:00 1 GPU selected for this run.
12:37:00 Mapping of GPU IDs to the 1 GPU task in the 1 rank on this node:
12:37:00   PP:0
12:37:00 PP tasks will do (non-perturbed) short-ranged interactions on the GPU
12:37:00 
12:37:00 NOTE: The number of threads is not equal to the number of (logical) cores
12:37:00       and the -pin option is set to auto: will not pin threads to cores.
12:37:00       This can lead to significant performance degradation.
12:37:00       Consider using -pin on (and -pinoffset in case you run multiple jobs).
12:37:00 starting mdrun 'Argon'
12:37:00 16 steps,      0.0 ps.
12:37:00 
12:37:00 -------------------------------------------------------
12:37:00 Program:     mdrun-test, version 2020-dev-20190916-f7e0fa3
12:37:00 Source file: src/gromacs/gpu_utils/devicebuffer.cuh (line 126)
12:37:00 Function:    copyToDeviceBuffer(ValueType**, const ValueType*, size_t, size_t, CommandStream, GpuApiCallBehavior, CommandEvent*)::<lambda()> [with ValueType = float [3]]
12:37:00 
12:37:00 Assertion failed:
12:37:00 Condition: isHostMemoryPinned(hostBuffer)
12:37:00 Source host buffer was not pinned for CUDA
12:37:00 
12:37:00 For more information and tips for troubleshooting, please check the GROMACS
12:37:00 website at http://www.gromacs.org/Documentation/Errors
12:37:00 -------------------------------------------------------

Associated revisions

Revision 003f96f6 (diff)
Added by Pascal Merz 27 days ago

Fix position pinning for modular simulator

This replicates Ia2b97d22 for the modular simulator, pinning the
position also in the non-DD case.

Fixes #3091

Change-Id: Ifb4b5a8897099152b7086fe700faa9a048c110a3

History

#1 Updated by Mark Abraham 28 days ago

Assigned to me, at least until I work out where the problem lies

#2 Updated by Mark Abraham 27 days ago

Looks like 32b7891450622add82abfac2f44437b3a5f6e92e needs to be replicated in statepropagatordata.cpp

#3 Updated by Anonymous 27 days ago

  • Status changed from New to Resolved

#4 Updated by Mark Abraham 26 days ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF