GPU package errors with increasing box size

Hello,

I am currently testing the performance of different LJ and DPD fluids with the GPU package, using the LAMMPS latest feature release (21 Nov 2023). The simulations were run on a single NVIDIA A40 GPU. I found out that, if the box size of a LJ fluid equals or exceeds 13500000 atoms, I get the following error:

ERROR on proc 0: Insufficient memory on accelerator (src/GPU/pair_lj_cut_gpu.cpp:110)

This can be replicated by changing the box size in the “in.melt” file to box block 0 150 0 150 0 150.

Regarding DPD fluids, if the box size equals or exceeds 23328000 atoms, I get the following error:

ERROR on proc 0: Insufficient memory on accelerator (src/GPU/pair_dpd_gpu.cpp:257)

I encountered this after setting the variable L to 180 in the “in.dpd” file. In addition, I noticed that if I set the variable L to a larger number (e.g. 300), I get a different error:

Cuda driver error 700 in call at file '/home/user/mylammps_release_21nov23/lib/gpu/geryon/nvd_timer.h' in line 76.

Is there an upper limit of particles that a single GPU can handle?
Is there a way to fix these errors?

Thank you in advance!

Best regards,
M

Yes. You can handle only as many particles as there is memory on the GPU for particles, neighbor lists and related data. This limit is different for different systems, different potentials and different settings.