- Jun 29, 2023
-
-
Kurt A. O'Hearn authored
-
- Jun 28, 2023
-
-
Kurt A. O'Hearn authored
-
- Jun 27, 2023
-
-
Kurt A. O'Hearn authored
-
- May 31, 2023
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
PG-PuReMD: allow GPU threads per block to be set via control file (gpu_block_size). Refactor and simplify code accordingly. Tools: add gpu_block_size parameter.
-
- May 19, 2023
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
PG-PuReMD: pin host-side memory used in MPI comms to accelerate host-device memory transfers (partial energies local to processors).
-
- Feb 28, 2023
-
-
Kurt A. O'Hearn authored
PG-PuReMD: change to non-deprecated host memory management HIP API functions (note: differences from CUDA API). Add applicable flags to restore performance for pinned memory usage.
-
- Feb 27, 2023
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
PG-PuReMD: utilize pinned memory for GPU data transfers (CUDA). Add single GPU optimizations to skip MPI communications.
-
- Jan 23, 2023
-
-
Kurt A. O'Hearn authored
PG-PuReMD: add support for AMD GPUs using HIP (MPI+HIP codebase, use --enable-hip=yes flag at configure phase).
-
- Jul 27, 2022
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
-
- Jul 25, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: add several warp optimized kernels (Verlet list generation, storage estimation routines for initialization, etc.). Rework nonbonded kernels to decease the number of arithmetic instructions. Optimize three dimensional vector functions. Other code clean-up.
-
- Jul 21, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: fix issue with hydrogen bond interactions being evaluated for structures with no hydrogen atoms.
-
- Jul 17, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD (MPI): optimize valence and torsion interactions by pruning based on existence of parameters in the force field parameter file.
-
- Jul 11, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: properly initialize MPI for threading (MPI_THREAD_FUNNELED). Optimize SAI preconditioner computation to avoid MPI communications when neighbor MPI process is yourself in the presence of periodic boundary conditions.
-
- Jul 08, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: add OpenMP support for SAI preconditioner computation (--enable-openmp=yes flag in configure script). Other code clean-up.
-
- Jul 06, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: disable grid optimization which requires the Verlet list be in half format (all MPI+CUDA code and SAI code uses full format). Fix H-bond list initialization issue in MPI-only code. Re-write SAI MPI code to avoid extraneous data movement. Other code clean-up.
-
- May 12, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: simplify preconditioner selection logic. Fix issue with SpMV's applying SAI preconditioning (full row not applied during multiplication). Change solver iterations counts in MPI+CUDA code to match MPI-only code. Other code clean-up.
-
- May 03, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: fixes to SAI preconditioner computation (message size mismatch). Rework MPI communications to not exchange data over MPI when messages are exchanged with oneself (i.e., neighboring processor is oneself via periodic boundary conditions). Backport hydrogen bond fix from sPuReMD (omit interactions when no valid parameters in force field file). Other code clean-up.
-
- Apr 21, 2022
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
PG-PuReMD: standardize and clean-up CUB usage. Add wrapper for non-CUB reductions (rvec, rvec2). Other code clean-up.
-
- Apr 18, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: add support for using cuBLAS routines for dense linear algebra (mainly level-1 routines in sparse linear solver). Clean-up solver code for using streams.
-
- Apr 11, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: split van der Waals and Coulomb force and energy computation kernels and execute in seperate streams. Change stream of Coulomb-related kernels (init, charge solver, Coulomb). Use math function for cubic root calculations. Other code clean-up.
-
- Apr 06, 2022
-
-
Kurt A. O'Hearn authored
PG-PuReMD: default to using bundled CUB library witn recent CUDA SDK version (>= v11.x), while retaining older CUB submodule for older CUDA capabilities (use NVCCFLAGS to manually include CUB in this case). Refactor timing code to more accurately measure kernel timing. Refactor stream logic to expose more parallelism (valence+torsion branch) and to perform fewer synchronizations. Other code clean-up and refactoring.
-
- Nov 09, 2021
-
-
Kurt A. O'Hearn authored
PG-PuReMD: fix potential MPI message collision issue in SAI preconditioner (same tags to same source rank => use different tags). Reorder communications to allow message size detection and buffer reallocation if needed.
-
- Nov 01, 2021
-
-
Kurt A. O'Hearn authored
-
- Oct 22, 2021
-
-
Kurt A. O'Hearn authored
-
- Aug 16, 2021
-
-
Kurt A. O'Hearn authored
PG-PuReMD: fix bugs in the SAI preconditioner for the charge solver (memory leak, incorrect row numbers).
-
- Aug 12, 2021
-
-
Kurt A. O'Hearn authored
-
Kurt A. O'Hearn authored
PG-PuReMD: port SAI preconditioner from MPI codebase. Rework charge solver preconditioner code. Other code clean-up.
-
- Aug 10, 2021
-
-
Kurt A. O'Hearn authored
-
- Aug 05, 2021
-
-
Kurt A. O'Hearn authored
PG-PuReMD: fix cross-stream race conditions on intermediary force calculation variables (CdDelta, Cdbo, etc.). Rework valency and torsion calculations to minmize the number of atomic operations performed. Split lone pair and over-/under-coordination kernels. Fix small size mismatch in allocation routines (over-allocation). Other code clean-up.
-
- Jul 26, 2021
-
-
Kurt A. O'Hearn authored
-
- Jul 23, 2021
-
-
Kurt A. O'Hearn authored
sPuReMD, PG-PuReMD: add control file keyword (include_polarization_energy) to toggle polarization energy calcuation in ReaxFF.
-