NEB on GPUs
Posted: Wed Jul 13, 2016 4:45 am
A cluster I work on has multiple K80 nodes, with each K80 (two virtual GPUs) being logically tied to six CPU cores, with up to 8 GPU/24 CPU (4 K80s) available in a node. I get best performance for my systems (by total CPU hours) using just 2 GPUs/6 CPUs and 6 MPI threads. (Incidentally, if I try to use more GPUs I'm better off running with the number of MPI threads equal to the number of GPUs.)
Is there any general advice available on how to run a NEB calculation on such a setup? If I was to do a four image NEB on 8 GPU/24 CPU/24 MPI threads, I imagine I would be able to get similar performance to the 2 GPU/6 CPU case for one image. But how about for higher numbers of images? Should I expect to get good performance if I have, say, six images, one MPI thread per image, running on 2 GPUs/6 CPUs?
Is there any general advice available on how to run a NEB calculation on such a setup? If I was to do a four image NEB on 8 GPU/24 CPU/24 MPI threads, I imagine I would be able to get similar performance to the 2 GPU/6 CPU case for one image. But how about for higher numbers of images? Should I expect to get good performance if I have, say, six images, one MPI thread per image, running on 2 GPUs/6 CPUs?