Hi christian,
Thanks very much!
Here is the input file, please let me know if there is anything wrong.
newton off
package gpu force 0 1 1
units real
atom_style full
pair_style lj/cut/coul/long/gpu 12.0
kspace_style pppm/gpu 0.0001
pair_modify shift yes mix arithmetic
neighbor 0.3 bin
neigh_modify every 1 delay 10 check yes
boundary p p p
read_data data.lammps
timestep 1.0
thermo_style custom step temp etotal
group cnt type 1 2
group water type 3 4
neigh_modify exclude group cnt cnt
fix 1 cnt setforce 0 0 0
min_style cg
min_modify dmax 0.2
minimize 0.01 0.001 100 100000
fix rigid rigidpart shake 0.0000001 30 0 b 1 a 1
thermo_style custom step temp epair etotal press vol
fix 2 water nvt temp 300.0 300.0 100.0
run 1000
unfix 2
suffix gpu
2012/2/17 Christian Trott <ceearem@…116…>
A few remarks:
-Could you post your input script?
-Why do you think that you cant use neigh_modify together with a package command?
When I use neigh_modify with the package gpu command, the output energy is not the same(it is infinite) as the result calculated by CPU. Therefore, I suppose that the neigh_modify command can not work with package command.
-You probably should let the GPU do the neighbor list update as well and use force/neigh instead of force as an argument to the package command.
I tried to do that but I got wrong energy.
-The GPU package should be used with more than one MPI process per GPU. Did you do that?
Yes, I did.
-You could also try out the USER-CUDA package, depending on your system size and hardware config it might be faster.
I will try that later. Thanks for reminder.
-What kind of GPU do you have? Small GPUs like they are typical for some workstations (like a cheap Quadro) are not that well suited for computations.
It is 16 NVIDIA Tesla C2050 GPU, with 448 cores and 2 GB of memory.
2012/2/17 Christian Trott <ceearem@…116…>