I recently built lammps with gpu support enabled. Our GPU is the nVidia S1070 using a pair of Dell R710's to connect.
Using the minimization sample code provided with lammps but modified to use the GPU I can successfully use a single gpu:
pair_style lj/cut/gpu one/gpu 0 2.5
but if I try to use GPU 1 instead of GPU 0:
pair_style lj/cut/gpu one/gpu 1 2.5
then lammps fails.
It gets thru the run setup OK:
Created orthogonal box = (0 0 -0.153919) to (30.7838 30.7838 0.153919)
1 by 2 by 1 processor grid
Created 800 atoms--------------------------------------------------------------------------
- Using GPGPU acceleration for LJ-Cut:
--------------------------------------------------------------------------
GPU 1: Tesla T10 Processor, 240 cores, 4 GB, 1.4 GHZ
--------------------------------------------------------------------------Setting up run ...
Memory usage per processor = 5.65528 Mbytes
Step Temp E_pair E_mol TotEng Press
but the minimization setup goes down in flames:
--------------------------------------------------------------------------
- Using GPGPU acceleration for LJ-Cut:
--------------------------------------------------------------------------
GPU 1: Tesla T10 Processor, 240 cores, 4 GB, 1.4 GHZ
--------------------------------------------------------------------------Setting up minimization ...
lmp_openmpi_gpu: pair_gpu_cell.cu:436: void build_cell_list(double*, int*, cell_list&, int, int, int, int, int, int, int, int): Assertion `err == cudaSuccess' failed.
Not sure why I can't seem to use this second GPU.
This is a pretext to MPI based lammps job not being able to use more than a single socket and gpu per system for an mpi run. mpi jobs can use 1 core / 1 gpu per job but not multiple.
Our system is RH Linux 5.5, CUDA toolkit is v 2.2.
Thanks,
--Jeff