Package GPU Does Not Build Neighbor Lists?

Hello,

I am trying to run a simulation of two colloids in a polymer solution with explicit solvents. However when I try to run this simulation by building my neighbor lists on the GPUs, the output tells me it is not building any neighbor lists at all. When I make the small change of

package gpu neigh yes -> package gpu neigh no
It does start building the neighbor lists. I would like to build my neighbor lists on the GPUs because I believe it should run much faster.

Here is my input script:

I get the same output with gpu package and gpu-enabled pair_style for another system -

Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 3.81711
Neighbor list builds = 65980
Dangerous builds = 0

I assume that ave neighs/atom and total number of neighbors just aren’t being communicated from GPU, but neighbor lists are certainly being built in your case ( Neighbor list builds = 10)

By the way, you should also consider using pair_style table/gpu, main speedup does not come from neighbor lists, it comes from parallel calculation of pair forces.

Hello,

I am trying to run a simulation of two colloids in a polymer solution with explicit solvents. However when I try to run this simulation by building my neighbor lists on the GPUs, the output tells me it is not building any neighbor lists at all. When I make the small change of

package gpu neigh yes -> package gpu neigh no
It does start building the neighbor lists. I would like to build my neighbor lists on the GPUs because I believe it should run much faster.

well, if that is the case, then you should be able to empirically confirm this by comparing the run time of the two run.

indeed, your neighbor lists are built on the GPU. since the neighbor list data is kept on the GPU, it cannot be accessed by the code, that prints the neighbor list statistics (which is a bit deceptive and can be outright misleading in extreme cases, as it only prints the information for the most inclusive list on MPI rank 0).
so best don’t put too much emphasis on that.

axel.