diff --git a/src/USER-CUDA/Install.sh b/src/USER-CUDA/Install.sh index b282807208..0c43de7ef2 100755 --- a/src/USER-CUDA/Install.sh +++ b/src/USER-CUDA/Install.sh @@ -1,6 +1,164 @@ # Install/unInstall package files in LAMMPS -# edit 2 Makefile.package files to include/exclude CUDA info -# do not install child files if parent does not exist +# mode = 0/1/2 for uninstall/install/update + +mode=$1 + +# arg1 = file, arg2 = file it depends on + +action () { + if (test $mode = 0) then + rm -f ../$1 + elif (! cmp -s $1 ../$1) then + if (test -z "$2" || test -e ../$2) then + cp $1 .. + if (test $mode = 2) then + echo " updating src/$1" + fi + fi + elif (test ! -z "$2") then + if (test ! -e ../$2) then + rm -f ../$1 + fi + fi +} + +# force rebuild of files with LMP_USER_CUDA switch + +touch ../accelerator_cuda.h + +# list of files with optional dependencies + +action atom_vec_angle_cuda.cpp atom_vec_angle.cpp +action atom_vec_angle_cuda.h atom_vec_angle.cpp +action atom_vec_atomic_cuda.cpp +action atom_vec_atomic_cuda.h +action atom_vec_charge_cuda.cpp +action atom_vec_charge_cuda.h +action atom_vec_full_cuda.cpp atom_vec_full.cpp +action atom_vec_full_cuda.h atom_vec_full.cpp +action comm_cuda.cpp +action comm_cuda.h +action compute_pe_cuda.cpp +action compute_pe_cuda.h +action compute_pressure_cuda.cpp +action compute_pressure_cuda.h +action compute_temp_cuda.cpp +action compute_temp_cuda.h +action compute_temp_partial_cuda.cpp +action compute_temp_partial_cuda.h +action cuda.cpp +action cuda.h +action cuda_data.h +action cuda_modify_flags.h +action cuda_neigh_list.cpp +action cuda_neigh_list.h +action domain_cuda.cpp +action domain_cuda.h +action fft3d_cuda.cpp pppm.cpp +action fft3d_cuda.h pppm.cpp +action fft3d_wrap_cuda.cpp pppm.cpp +action fft3d_wrap_cuda.h pppm.cpp +action fix_addforce_cuda.cpp +action fix_addforce_cuda.h +action fix_aveforce_cuda.cpp +action fix_aveforce_cuda.h +action fix_enforce2d_cuda.cpp +action fix_enforce2d_cuda.h +action fix_freeze_cuda.cpp fix_freeze.cpp +action fix_freeze_cuda.h fix_freeze.cpp +action fix_gravity_cuda.cpp +action fix_gravity_cuda.h +action fix_nh_cuda.cpp +action fix_nh_cuda.h +action fix_npt_cuda.cpp +action fix_npt_cuda.h +action fix_nve_cuda.cpp +action fix_nve_cuda.h +action fix_nvt_cuda.cpp +action fix_nvt_cuda.h +action fix_set_force_cuda.cpp +action fix_set_force_cuda.h +action fix_shake_cuda.cpp +action fix_shake_cuda.h +action fix_temp_berendsen_cuda.cpp +action fix_temp_berendsen_cuda.h +action fix_temp_rescale_cuda.cpp +action fix_temp_rescale_cuda.h +action fix_temp_rescale_limit_cuda.cpp +action fix_temp_rescale_limit_cuda.h +action fix_viscous_cuda.cpp +action fix_viscous_cuda.h +action modify_cuda.cpp +action modify_cuda.h +action neigh_full_cuda.cpp +action neighbor_cuda.cpp +action neighbor_cuda.h +action pair_born_coul_long_cuda.cpp pair_born_coul_long.cpp +action pair_born_coul_long_cuda.h pair_born_coul_long.cpp +action pair_buck_coul_cut_cuda.cpp +action pair_buck_coul_cut_cuda.h +action pair_buck_coul_long_cuda.cpp pair_buck_coul_long.cpp +action pair_buck_coul_long_cuda.h pair_buck_coul_long.cpp +action pair_buck_cuda.cpp +action pair_buck_cuda.h +action pair_eam_alloy_cuda.cpp pair_eam_alloy.cpp +action pair_eam_alloy_cuda.h pair_eam_alloy.cpp +action pair_eam_cuda.cpp pair_eam.cpp +action pair_eam_cuda.h pair_eam.cpp +action pair_eam_fs_cuda.cpp pair_eam_fs.cpp +action pair_eam_fs_cuda.h pair_eam_fs.cpp +action pair_gran_hooke_cuda.cpp pair_gran_hooke.cpp +action pair_gran_hooke_cuda.h pair_gran_hooke.cpp +action pair_lj96_cut_cuda.cpp +action pair_lj96_cut_cuda.h +action pair_lj_charmm_coul_charmm_cuda.cpp pair_lj_charmm_coul_charmm.cpp +action pair_lj_charmm_coul_charmm_cuda.h pair_lj_charmm_coul_charmm.cpp +action pair_lj_charmm_coul_charmm_implicit_cuda.cpp pair_lj_charmm_coul_charmm_implicit.cpp +action pair_lj_charmm_coul_charmm_implicit_cuda.h pair_lj_charmm_coul_charmm_implicit.cpp +action pair_lj_charmm_coul_long_cuda.cpp pair_lj_charmm_coul_long.cpp +action pair_lj_charmm_coul_long_cuda.h pair_lj_charmm_coul_long.cpp +action pair_lj_class2_coul_cut_cuda.cpp pair_lj_class2_coul_cut.cpp +action pair_lj_class2_coul_cut_cuda.h pair_lj_class2_coul_cut.cpp +action pair_lj_class2_coul_long_cuda.cpp pair_lj_class2_coul_long.cpp +action pair_lj_class2_coul_long_cuda.h pair_lj_class2_coul_long.cpp +action pair_lj_class2_cuda.cpp pair_lj_class2.cpp +action pair_lj_class2_cuda.h pair_lj_class2.cpp +action pair_lj_cut_coul_cut_cuda.cpp +action pair_lj_cut_coul_cut_cuda.h +action pair_lj_cut_coul_debye_cuda.cpp +action pair_lj_cut_coul_debye_cuda.h +action pair_lj_cut_coul_long_cuda.cpp pair_lj_cut_coul_long.cpp +action pair_lj_cut_coul_long_cuda.h pair_lj_cut_coul_long.cpp +action pair_lj_cut_cuda.cpp +action pair_lj_cut_cuda.h +action pair_lj_cut_experimental_cuda.cpp +action pair_lj_cut_experimental_cuda.h +action pair_lj_expand_cuda.cpp +action pair_lj_expand_cuda.h +action pair_lj_gromacs_coul_gromacs_cuda.cpp +action pair_lj_gromacs_coul_gromacs_cuda.h +action pair_lj_gromacs_cuda.cpp +action pair_lj_gromacs_cuda.h +action pair_lj_sdk_coul_long_cuda.cpp pair_lj_sdk_coul_long.cpp +action pair_lj_sdk_coul_long_cuda.h pair_lj_sdk_coul_long.cpp +action pair_lj_sdk_cuda.cpp pair_lj_sdk.cpp +action pair_lj_sdk_cuda.h pair_lj_sdk.cpp +action pair_lj_smooth_cuda.cpp +action pair_lj_smooth_cuda.h +action pair_morse_cuda.cpp +action pair_morse_cuda.h +action pair_sw_cuda.cpp pair_sw.cpp +action pair_sw_cuda.h pair_sw.cpp +action pair_tersoff_cuda.cpp pair_tersoff.cpp +action pair_tersoff_cuda.h pair_tersoff.cpp +action pair_tersoff_zbl_cuda.cpp pair_tersoff_zbl.cpp +action pair_tersoff_zbl_cuda.h pair_tersoff_zbl.cpp +action pppm_cuda.cpp pppm.cpp +action pppm_cuda.h pppm.cpp +action verlet_cuda.cpp +action verlet_cuda.h + +# edit 2 Makefile.package files to include/exclude package info if (test $1 = 1) then @@ -24,187 +182,6 @@ include ..\/..\/lib\/cuda\/Makefile.lammps fi - # force rebuild of files with LMP_USER_CUDA switch - - touch ../accelerator_cuda.h - - if (test -e ../atom_vec_angle.cpp) then - cp atom_vec_angle_cuda.cpp .. - cp atom_vec_angle_cuda.h .. - fi - - if (test -e ../atom_vec_full.cpp) then - cp atom_vec_full_cuda.cpp .. - cp atom_vec_full_cuda.h .. - fi - - if (test -e ../fix_freeze.cpp) then - cp fix_freeze_cuda.cpp .. - cp fix_freeze_cuda.h .. - fi - - if (test -e ../pair_born_coul_long.cpp) then - cp pair_born_coul_long_cuda.cpp .. - cp pair_born_coul_long_cuda.h .. - fi - - if (test -e ../pair_buck_coul_long.cpp) then - cp pair_buck_coul_long_cuda.cpp .. - cp pair_buck_coul_long_cuda.h .. - fi - - if (test -e ../pair_lj_sdk.cpp) then - cp pair_lj_sdk_cuda.cpp .. - #cp pair_lj_sdk_coul_cut_cuda.cpp .. - #cp pair_lj_sdk_coul_debye_cuda.cpp .. - cp pair_lj_sdk_cuda.h .. - #cp pair_lj_sdk_coul_cut_cuda.h .. - #cp pair_lj_sdk_coul_debye_cuda.h .. - if (test -e ../pair_lj_sdk_coul_long.cpp) then - cp pair_lj_sdk_coul_long_cuda.cpp .. - cp pair_lj_sdk_coul_long_cuda.h .. - fi - fi - - if (test -e ../pppm.cpp) then - cp pppm_cuda.cpp .. - cp fft3d_cuda.cpp .. - cp fft3d_wrap_cuda.cpp .. - cp pppm_cuda.h .. - cp fft3d_cuda.h .. - cp fft3d_wrap_cuda.h .. - cp pair_lj_cut_coul_long_cuda.cpp .. - cp pair_lj_cut_coul_long_cuda.h .. - fi - - if (test -e ../pair_eam.cpp) then - cp pair_eam_alloy_cuda.cpp .. - cp pair_eam_cuda.cpp .. - cp pair_eam_fs_cuda.cpp .. - cp pair_eam_alloy_cuda.h .. - cp pair_eam_cuda.h .. - cp pair_eam_fs_cuda.h .. - cp pair_sw_cuda.h .. - cp pair_sw_cuda.cpp .. - cp pair_tersoff_cuda.h .. - cp pair_tersoff_cuda.cpp .. - cp pair_tersoff_zbl_cuda.h .. - cp pair_tersoff_zbl_cuda.cpp .. - fi - - if (test -e ../pair_gran_hooke.cpp) then - cp pair_gran_hooke_cuda.cpp .. - cp pair_gran_hooke_cuda.h .. - fi - - if (test -e ../pair_lj_charmm_coul_charmm.cpp) then - cp pair_lj_charmm_coul_charmm_cuda.cpp .. - cp pair_lj_charmm_coul_charmm_implicit_cuda.cpp .. - cp pair_lj_charmm_coul_charmm_cuda.h .. - cp pair_lj_charmm_coul_charmm_implicit_cuda.h .. - if (test -e ../pair_lj_charmm_coul_long.cpp) then - cp pair_lj_charmm_coul_long_cuda.cpp .. - cp pair_lj_charmm_coul_long_cuda.h .. - fi - fi - - if (test -e ../pair_lj_class2.cpp) then - cp pair_lj_class2_coul_cut_cuda.cpp .. - cp pair_lj_class2_cuda.cpp .. - cp pair_lj_class2_coul_cut_cuda.h .. - cp pair_lj_class2_cuda.h .. - if (test -e ../pair_lj_class2_coul_long.cpp) then - cp pair_lj_class2_coul_long_cuda.cpp .. - cp pair_lj_class2_coul_long_cuda.h .. - fi - fi - - cp atom_vec_atomic_cuda.cpp .. - cp atom_vec_charge_cuda.cpp .. - cp comm_cuda.cpp .. - cp compute_pe_cuda.cpp .. - cp compute_pressure_cuda.cpp .. - cp compute_temp_cuda.cpp .. - cp compute_temp_partial_cuda.cpp .. - cp domain_cuda.cpp .. - cp fix_addforce_cuda.cpp .. - cp fix_aveforce_cuda.cpp .. - cp fix_enforce2d_cuda.cpp .. - cp fix_gravity_cuda.cpp .. - cp fix_nh_cuda.cpp .. - cp fix_npt_cuda.cpp .. - cp fix_nve_cuda.cpp .. - cp fix_nvt_cuda.cpp .. - cp fix_set_force_cuda.cpp .. - cp fix_shake_cuda.cpp .. - cp fix_temp_berendsen_cuda.cpp .. - cp fix_temp_rescale_cuda.cpp .. - cp fix_temp_rescale_limit_cuda.cpp .. - cp fix_viscous_cuda.cpp .. - cp modify_cuda.cpp .. - cp neighbor_cuda.cpp .. - cp neigh_full_cuda.cpp .. - cp pair_buck_coul_cut_cuda.cpp .. - cp pair_buck_cuda.cpp .. - cp pair_lj96_cut_cuda.cpp .. - cp pair_lj_cut_coul_cut_cuda.cpp .. - cp pair_lj_cut_coul_debye_cuda.cpp .. - cp pair_lj_cut_cuda.cpp .. - cp pair_lj_cut_experimental_cuda.cpp .. - cp pair_lj_expand_cuda.cpp .. - cp pair_lj_gromacs_coul_gromacs_cuda.cpp .. - cp pair_lj_gromacs_cuda.cpp .. - cp pair_lj_smooth_cuda.cpp .. - cp pair_morse_cuda.cpp .. - cp verlet_cuda.cpp .. - - cp cuda.cpp .. - cp cuda_neigh_list.cpp .. - - cp atom_vec_atomic_cuda.h .. - cp atom_vec_charge_cuda.h .. - cp comm_cuda.h .. - cp compute_pe_cuda.h .. - cp compute_pressure_cuda.h .. - cp compute_temp_cuda.h .. - cp compute_temp_partial_cuda.h .. - cp domain_cuda.h .. - cp fix_addforce_cuda.h .. - cp fix_aveforce_cuda.h .. - cp fix_enforce2d_cuda.h .. - cp fix_gravity_cuda.h .. - cp fix_nh_cuda.h .. - cp fix_npt_cuda.h .. - cp fix_nve_cuda.h .. - cp fix_nvt_cuda.h .. - cp fix_set_force_cuda.h .. - cp fix_shake_cuda.h .. - cp fix_temp_berendsen_cuda.h .. - cp fix_temp_rescale_cuda.h .. - cp fix_temp_rescale_limit_cuda.h .. - cp fix_viscous_cuda.h .. - cp modify_cuda.h .. - cp neighbor_cuda.h .. - cp pair_buck_coul_cut_cuda.h .. - cp pair_buck_cuda.h .. - - cp pair_lj96_cut_cuda.h .. - cp pair_lj_cut_coul_cut_cuda.h .. - cp pair_lj_cut_coul_debye_cuda.h .. - cp pair_lj_cut_cuda.h .. - cp pair_lj_cut_experimental_cuda.h .. - cp pair_lj_expand_cuda.h .. - cp pair_lj_gromacs_coul_gromacs_cuda.h .. - cp pair_lj_gromacs_cuda.h .. - cp pair_lj_smooth_cuda.h .. - cp pair_morse_cuda.h .. - cp verlet_cuda.h .. - - cp cuda.h .. - cp cuda_data.h .. - cp cuda_modify_flags.h .. - cp cuda_neigh_list.h .. - elif (test $1 = 0) then if (test -e ../Makefile.package) then @@ -216,146 +193,4 @@ elif (test $1 = 0) then sed -i -e '/^include.*cuda.*$/d' ../Makefile.package.settings fi - # force rebuild of files with LMP_USER_CUDA switch - - touch ../accelerator_cuda.h - - rm -f ../atom_vec_angle_cuda.cpp - rm -f ../atom_vec_atomic_cuda.cpp - rm -f ../atom_vec_charge_cuda.cpp - rm -f ../atom_vec_full_cuda.cpp - rm -f ../comm_cuda.cpp - rm -f ../compute_pe_cuda.cpp - rm -f ../compute_pressure_cuda.cpp - rm -f ../compute_temp_cuda.cpp - rm -f ../compute_temp_partial_cuda.cpp - rm -f ../domain_cuda.cpp - rm -f ../fft3d_cuda.cpp - rm -f ../fft3d_wrap_cuda.cpp - rm -f ../fix_addforce_cuda.cpp - rm -f ../fix_aveforce_cuda.cpp - rm -f ../fix_enforce2d_cuda.cpp - rm -f ../fix_freeze_cuda.cpp - rm -f ../fix_gravity_cuda.cpp - rm -f ../fix_nh_cuda.cpp - rm -f ../fix_npt_cuda.cpp - rm -f ../fix_nve_cuda.cpp - rm -f ../fix_nvt_cuda.cpp - rm -f ../fix_set_force_cuda.cpp - rm -f ../fix_shake_cuda.cpp - rm -f ../fix_temp_berendsen_cuda.cpp - rm -f ../fix_temp_rescale_cuda.cpp - rm -f ../fix_temp_rescale_limit_cuda.cpp - rm -f ../fix_viscous_cuda.cpp - rm -f ../modify_cuda.cpp - rm -f ../neighbor_cuda.cpp - rm -f ../neigh_full_cuda.cpp - rm -f ../pair_born_coul_long_cuda.cpp - rm -f ../pair_buck_coul_cut_cuda.cpp - rm -f ../pair_buck_coul_long_cuda.cpp - rm -f ../pair_buck_cuda.cpp - rm -f ../pair_lj_sdk_cuda.cpp - #rm -f ../pair_lj_sdk_coul_cut_cuda.cpp - #rm -f ../pair_lj_sdk_coul_debye_cuda.cpp - rm -f ../pair_lj_sdk_coul_long_cuda.cpp - rm -f ../pair_eam_alloy_cuda.cpp - rm -f ../pair_eam_cuda.cpp - rm -f ../pair_eam_fs_cuda.cpp - rm -f ../pair_gran_hooke_cuda.cpp - rm -f ../pair_lj96_cut_cuda.cpp - rm -f ../pair_lj_charmm_coul_charmm_cuda.cpp - rm -f ../pair_lj_charmm_coul_charmm_implicit_cuda.cpp - rm -f ../pair_lj_charmm_coul_long_cuda.cpp - rm -f ../pair_lj_class2_coul_cut_cuda.cpp - rm -f ../pair_lj_class2_coul_long_cuda.cpp - rm -f ../pair_lj_class2_cuda.cpp - rm -f ../pair_lj_cut_coul_cut_cuda.cpp - rm -f ../pair_lj_cut_coul_debye_cuda.cpp - rm -f ../pair_lj_cut_coul_long_cuda.cpp - rm -f ../pair_lj_cut_cuda.cpp - rm -f ../pair_lj_cut_experimental_cuda.cpp - rm -f ../pair_lj_expand_cuda.cpp - rm -f ../pair_lj_gromacs_coul_gromacs_cuda.cpp - rm -f ../pair_lj_gromacs_cuda.cpp - rm -f ../pair_lj_smooth_cuda.cpp - rm -f ../pair_morse_cuda.cpp - rm -f ../pppm_cuda.cpp - rm -f ../verlet_cuda.cpp - - rm -f ../cuda.cpp - rm -f ../cuda_neigh_list.cpp - - rm -f ../atom_vec_angle_cuda.h - rm -f ../atom_vec_atomic_cuda.h - rm -f ../atom_vec_charge_cuda.h - rm -f ../atom_vec_full_cuda.h - rm -f ../comm_cuda.h - rm -f ../compute_pe_cuda.h - rm -f ../compute_pressure_cuda.h - rm -f ../compute_temp_cuda.h - rm -f ../compute_temp_partial_cuda.h - rm -f ../domain_cuda.h - rm -f ../fft3d_cuda.h - rm -f ../fft3d_wrap_cuda.h - rm -f ../fix_addforce_cuda.h - rm -f ../fix_aveforce_cuda.h - rm -f ../fix_enforce2d_cuda.h - rm -f ../fix_freeze_cuda.h - rm -f ../fix_gravity_cuda.h - rm -f ../fix_nh_cuda.h - rm -f ../fix_npt_cuda.h - rm -f ../fix_nve_cuda.h - rm -f ../fix_nvt_cuda.h - rm -f ../fix_set_force_cuda.h - rm -f ../fix_shake_cuda.h - rm -f ../fix_temp_berendsen_cuda.h - rm -f ../fix_temp_rescale_cuda.h - rm -f ../fix_temp_rescale_limit_cuda.h - rm -f ../fix_viscous_cuda.h - rm -f ../modify_cuda.h - rm -f ../neighbor_cuda.h - rm -f ../pair_born_coul_long_cuda.h - rm -f ../pair_buck_coul_cut_cuda.h - rm -f ../pair_buck_coul_long_cuda.h - rm -f ../pair_buck_cuda.h - rm -f ../pair_lj_sdk_cuda.h - #rm -f ../pair_lj_sdk_coul_cut_cuda.h - #rm -f ../pair_lj_sdk_coul_debye_cuda.h - rm -f ../pair_lj_sdk_coul_long_cuda.h - rm -f ../pair_lj_sdk_cuda.h - rm -f ../pair_eam_alloy_cuda.h - rm -f ../pair_eam_cuda.h - rm -f ../pair_eam_fs_cuda.h - rm -f ../pair_gran_hooke_cuda.h - rm -f ../pair_lj96_cut_cuda.h - rm -f ../pair_lj_charmm_coul_charmm_cuda.h - rm -f ../pair_lj_charmm_coul_charmm_implicit_cuda.h - rm -f ../pair_lj_charmm_coul_long_cuda.h - rm -f ../pair_lj_class2_coul_cut_cuda.h - rm -f ../pair_lj_class2_coul_long_cuda.h - rm -f ../pair_lj_class2_cuda.h - rm -f ../pair_lj_cut_coul_cut_cuda.h - rm -f ../pair_lj_cut_coul_debye_cuda.h - rm -f ../pair_lj_cut_coul_long_cuda.h - rm -f ../pair_lj_cut_cuda.h - rm -f ../pair_lj_cut_experimental_cuda.h - rm -f ../pair_lj_expand_cuda.h - rm -f ../pair_lj_gromacs_coul_gromacs_cuda.h - rm -f ../pair_lj_gromacs_cuda.h - rm -f ../pair_lj_smooth_cuda.h - rm -f ../pair_morse_cuda.h - rm -f ../pppm_cuda.h - rm -f ../verlet_cuda.h - - rm -f ../pair_sw_cuda.h - rm -f ../pair_sw_cuda.cpp - rm -f ../pair_tersoff_cuda.h - rm -f ../pair_tersoff_cuda.cpp - rm -f ../pair_tersoff_zbl_cuda.h - rm -f ../pair_tersoff_zbl_cuda.cpp - - rm -f ../cuda.h - rm -f ../cuda_data.h - rm -f ../cuda_modify_flags.h - rm -f ../cuda_neigh_list.h fi