diff --git a/src/GPU/Install.sh b/src/GPU/Install.sh index e84cc2b6f5..81cb0a73fa 100644 --- a/src/GPU/Install.sh +++ b/src/GPU/Install.sh @@ -104,6 +104,8 @@ elif (test $1 = 0) then rm -f ../pair_lj_class2_gpu.cpp rm -f ../pair_lj_class2_coul_long_gpu.cpp rm -f ../pair_lj_charmm_coul_long_gpu.cpp + rm -f ../pair_lj_sdk_gpu.cpp + rm -f ../pair_lj_sdk_coul_long_gpu.cpp rm -f ../pair_coul_long_gpu.cpp rm -f ../fix_gpu.cpp @@ -120,6 +122,8 @@ elif (test $1 = 0) then rm -f ../pair_lj_class2_gpu.h rm -f ../pair_lj_class2_coul_long_gpu.h rm -f ../pair_lj_charmm_coul_long_gpu.h + rm -f ../pair_lj_sdk_gpu.h + rm -f ../pair_lj_sdk_coul_long_gpu.h rm -f ../pair_coul_long_gpu.h rm -f ../fix_gpu.h diff --git a/src/GPU/Package.sh b/src/GPU/Package.sh index cb7213c2bc..89049b8b8b 100644 --- a/src/GPU/Package.sh +++ b/src/GPU/Package.sh @@ -21,16 +21,16 @@ for file in *.cpp *.h; do if (test $file = pair_coul_long_gpu.h -a ! -e ../pair_coul_long.cpp) then continue fi - if (test $file = pair_cg_cmm_gpu.cpp -a ! -e ../pair_cg_cmm.cpp) then + if (test $file = pair_lj_sdk_gpu.cpp -a ! -e ../pair_lj_sdk.cpp) then continue fi - if (test $file = pair_cg_cmm_gpu.h -a ! -e ../pair_cg_cmm.cpp) then + if (test $file = pair_lj_sdk_gpu.h -a ! -e ../pair_lj_sdk.cpp) then continue fi - if (test $file = pair_cg_cmm_coul_long_gpu.cpp -a ! -e ../pair_cg_cmm_coul_long.cpp) then + if (test $file = pair_lj_sdk_coul_long_gpu.cpp -a ! -e ../pair_lj_sdk_coul_long.cpp) then continue fi - if (test $file = pair_cg_cmm_coul_long_gpu.h -a ! -e ../pair_cg_cmm_coul_long.cpp) then + if (test $file = pair_lj_sdk_coul_long_gpu.h -a ! -e ../pair_lj_sdk_coul_long.cpp) then continue fi diff --git a/src/GPU/gpu_extra.h b/src/GPU/gpu_extra.h index d03beaf21a..abae643e54 100644 --- a/src/GPU/gpu_extra.h +++ b/src/GPU/gpu_extra.h @@ -1,4 +1,4 @@ -/* ---------------------------------------------------------------------- +/* -*- c++ -*- ---------------------------------------------------------- LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator http://lammps.sandia.gov, Sandia National Laboratories Steve Plimpton, sjplimp@sandia.gov @@ -18,6 +18,7 @@ #ifndef LMP_GPU_EXTRA_H #define LMP_GPU_EXTRA_H +#include "modify.h" #include "error.h" namespace GPU_EXTRA { @@ -47,8 +48,13 @@ namespace GPU_EXTRA { else error->all(FLERR,"Unknown error in GPU library"); } - } + }; + inline void gpu_ready(LAMMPS_NS::Modify *modify, LAMMPS_NS::Error *error) { + int ifix = modify->find_fix("package_gpu"); + if (ifix < 0) + error->all(FLERR,"The 'package gpu' command is required for /gpu styles"); + }; } #endif diff --git a/src/GPU/pair_coul_long_gpu.cpp b/src/GPU/pair_coul_long_gpu.cpp index 5d311a34f4..6d7981d2e6 100644 --- a/src/GPU/pair_coul_long_gpu.cpp +++ b/src/GPU/pair_coul_long_gpu.cpp @@ -77,6 +77,7 @@ PairCoulLongGPU::PairCoulLongGPU(LAMMPS *lmp) : { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_gayberne_gpu.cpp b/src/GPU/pair_gayberne_gpu.cpp index ce65ca2c83..18c9f6356d 100644 --- a/src/GPU/pair_gayberne_gpu.cpp +++ b/src/GPU/pair_gayberne_gpu.cpp @@ -77,6 +77,7 @@ PairGayBerneGPU::PairGayBerneGPU(LAMMPS *lmp) : PairGayBerne(lmp), error->all(FLERR,"Pair gayberne requires atom style ellipsoid"); quat_nmax = 0; quat = NULL; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj96_cut_gpu.cpp b/src/GPU/pair_lj96_cut_gpu.cpp index b678d842e9..b67bdb28dd 100644 --- a/src/GPU/pair_lj96_cut_gpu.cpp +++ b/src/GPU/pair_lj96_cut_gpu.cpp @@ -66,6 +66,7 @@ PairLJ96CutGPU::PairLJ96CutGPU(LAMMPS *lmp) : PairLJ96Cut(lmp), gpu_mode(GPU_FOR { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_charmm_coul_long_gpu.cpp b/src/GPU/pair_lj_charmm_coul_long_gpu.cpp index 488d4195f4..f654212abe 100644 --- a/src/GPU/pair_lj_charmm_coul_long_gpu.cpp +++ b/src/GPU/pair_lj_charmm_coul_long_gpu.cpp @@ -83,6 +83,7 @@ PairLJCharmmCoulLongGPU::PairLJCharmmCoulLongGPU(LAMMPS *lmp) : { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_class2_coul_long_gpu.cpp b/src/GPU/pair_lj_class2_coul_long_gpu.cpp index adaee7ab6a..289ddfa9ca 100644 --- a/src/GPU/pair_lj_class2_coul_long_gpu.cpp +++ b/src/GPU/pair_lj_class2_coul_long_gpu.cpp @@ -80,6 +80,7 @@ PairLJClass2CoulLongGPU::PairLJClass2CoulLongGPU(LAMMPS *lmp) : PairLJClass2CoulLong(lmp), gpu_mode(GPU_FORCE) { cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_class2_gpu.cpp b/src/GPU/pair_lj_class2_gpu.cpp index 65dcea9040..66395f28d3 100644 --- a/src/GPU/pair_lj_class2_gpu.cpp +++ b/src/GPU/pair_lj_class2_gpu.cpp @@ -65,6 +65,7 @@ using namespace LAMMPS_NS; PairLJClass2GPU::PairLJClass2GPU(LAMMPS *lmp) : PairLJClass2(lmp), gpu_mode(GPU_FORCE) { cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_cut_coul_cut_gpu.cpp b/src/GPU/pair_lj_cut_coul_cut_gpu.cpp index 33a49f20f3..8311b6d732 100644 --- a/src/GPU/pair_lj_cut_coul_cut_gpu.cpp +++ b/src/GPU/pair_lj_cut_coul_cut_gpu.cpp @@ -71,6 +71,7 @@ PairLJCutCoulCutGPU::PairLJCutCoulCutGPU(LAMMPS *lmp) : PairLJCutCoulCut(lmp), g { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_cut_coul_long_gpu.cpp b/src/GPU/pair_lj_cut_coul_long_gpu.cpp index 077e3eff71..7f4a09f540 100644 --- a/src/GPU/pair_lj_cut_coul_long_gpu.cpp +++ b/src/GPU/pair_lj_cut_coul_long_gpu.cpp @@ -81,6 +81,7 @@ PairLJCutCoulLongGPU::PairLJCutCoulLongGPU(LAMMPS *lmp) : { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_cut_gpu.cpp b/src/GPU/pair_lj_cut_gpu.cpp index 2c0c2f3f1d..19c3df9227 100644 --- a/src/GPU/pair_lj_cut_gpu.cpp +++ b/src/GPU/pair_lj_cut_gpu.cpp @@ -66,6 +66,7 @@ PairLJCutGPU::PairLJCutGPU(LAMMPS *lmp) : PairLJCut(lmp), gpu_mode(GPU_FORCE) { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_lj_expand_gpu.cpp b/src/GPU/pair_lj_expand_gpu.cpp index 40c7ea1a37..8e208489cb 100644 --- a/src/GPU/pair_lj_expand_gpu.cpp +++ b/src/GPU/pair_lj_expand_gpu.cpp @@ -67,6 +67,7 @@ PairLJExpandGPU::PairLJExpandGPU(LAMMPS *lmp) : PairLJExpand(lmp), gpu_mode(GPU_ { respa_enable = 0; cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_morse_gpu.cpp b/src/GPU/pair_morse_gpu.cpp index 0867e5a998..ef470f925a 100644 --- a/src/GPU/pair_morse_gpu.cpp +++ b/src/GPU/pair_morse_gpu.cpp @@ -65,6 +65,7 @@ using namespace LAMMPS_NS; PairMorseGPU::PairMorseGPU(LAMMPS *lmp) : PairMorse(lmp), gpu_mode(GPU_FORCE) { cpu_time = 0.0; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pair_resquared_gpu.cpp b/src/GPU/pair_resquared_gpu.cpp index 4057f45c5e..566712ec46 100644 --- a/src/GPU/pair_resquared_gpu.cpp +++ b/src/GPU/pair_resquared_gpu.cpp @@ -76,6 +76,7 @@ PairRESquaredGPU::PairRESquaredGPU(LAMMPS *lmp) : PairRESquared(lmp), error->all(FLERR,"Pair gayberne requires atom style ellipsoid"); quat_nmax = 0; quat = NULL; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ---------------------------------------------------------------------- diff --git a/src/GPU/pppm_gpu.cpp b/src/GPU/pppm_gpu.cpp index 9dc7362867..437f9c115f 100644 --- a/src/GPU/pppm_gpu.cpp +++ b/src/GPU/pppm_gpu.cpp @@ -84,6 +84,7 @@ PPPMGPU::PPPMGPU(LAMMPS *lmp, int narg, char **arg) : PPPM(lmp, narg, arg) if (narg != 1) error->all(FLERR,"Illegal kspace_style pppm/gpu command"); density_brick_gpu = vd_brick = NULL; + GPU_EXTRA::gpu_ready(lmp->modify, lmp->error); } /* ----------------------------------------------------------------------