SYCL NBNXM kernels
Testing caveats:
- Increased timeout for unit tests with SYCL build to 480 seconds.
- Increased tolerance for Exact Continuation test with BD integrator to 500 ULP (was already bumped twice in the past year, first from 64 to 128, and later to 200).
- Only OpenCL backend (
SYCL_BE=PI_OPENCL
) was tested, due to a lock-up in LevelZero. The fix is merged, but not yet a part of an official release.
Unit and regression tests confirmed to pass (except position-restraints, see #3846 (closed)) on the following configurations (2021-02-03, dc54de23):
- local desktop (GPU HD 530 (Gen9), OneAPI 2021.1.2, IGC 1.0.6083, Compute Runtime 21.04.18912),
- local laptop (GPU Xe G7 (Gen12), OneAPI 2021.1.2, IGC 1.0.6083, Compute Runtime 21.04.18912),
- intel-gpu01 (GPU UHD P630 (gen9.5), OneAPI 2021.1.1, IGC 1.0.5723, Compute Runtime 20.49.18626),
-
- To use this intel-compute-runtime, please do
MODULEPATH=/nethome/aland/modules/modulefiles:$MODULEPATH module load intel-compute-runtime/20.49.18626
,
- To use this intel-compute-runtime, please do
- intel-gpu02 (GPU DG1 (Gen12), OneAPI 2021.1.1, Compute Runtime 21.03),
-
- Even position-restraints passes fine,
-
- A patch to zero-initialize plist is needed (!1065 (merged)).
Performance differs from OpenCL but is on-par. Not including precise error estimations here, but the variation over multiple runs seems to be less than the difference between platforms. Best time in bold.
rnase-cubic, mdrun -ntmpi 1 -ntomp 4 -nb gpu -pme cpu -resethway -nsteps 5000 -nobackup -gpu_id X
, reported ns/day.
HW | SYCL (OpenCL) | SYCL (L0) | OpenCL |
---|---|---|---|
Xe G7 | 80.6 | 94.5 | 85.1 |
UHD P630 | 34.0 | N/A | 38.2 |
HD 530 | 27.9 | 30.9 | 30.5 |
rnase-cubic, mdrun -ntmpi 2 -ntomp 2 -nb gpu -pme cpu -resethway -nsteps 5000 -nobackup -gpu_id X
, reported ns/day.
HW | SYCL (OpenCL) | OpenCL |
---|---|---|
Xe G7 | 45.9 | 36.2 |
UHD P630 | 26.5 | 30.4 |
HD 530 | 19.6 | 24.3 |
Edited by Andrey Alekseenko