Fix multiple MPI ranks per node with OpenCL
authorSzilárd Páll <pall.szilard@gmail.com>
Sun, 3 Apr 2016 23:39:48 +0000 (01:39 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Wed, 27 Apr 2016 15:46:23 +0000 (17:46 +0200)
commit8a8904ad6964f7c5d003ab4510f33b635568375f
treedf19eca286dfefec92cad33e1408726ca54b8243
parent420fb6f98822acdee01139217868633c2c024c71
Fix multiple MPI ranks per node with OpenCL

Similarly to the thread-MPI case, the source of the issue was
the hardware detection broadcasting the outcome of GPU detection
within a node. The MPI platform and device IDs, OpenCL internal
entities, differ across processes even if both platform and device(s)
are shared. This caused corruption at context creation on all ranks
other than the first rank in the node (which did the detection).

This change disables the GPU data broadcasting for OpenCL with MPI.

Fixes #1804

Change-Id: I90defdcb3515796c46ba89efb0ed1e3c8b1b35f9
docs/user-guide/mdrun-performance.rst
src/gromacs/hardware/detecthardware.cpp