From 923ae041dcfe0fdebbb146ec9a9b71fa8eba5a55 Mon Sep 17 00:00:00 2001
From: Axel Kohlmeyer <akohlmey@gmail.com>
Date: Mon, 23 Jul 2018 15:52:42 -0400
Subject: [PATCH] (temporary) workaround for memory leaks with OpenCL and MPI
 for upcoming stable release

---
 lib/gpu/lal_device.cpp | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/gpu/lal_device.cpp b/lib/gpu/lal_device.cpp
index 7f54432a74..6b4d0ab2a5 100644
--- a/lib/gpu/lal_device.cpp
+++ b/lib/gpu/lal_device.cpp
@@ -130,8 +130,16 @@ int DeviceT::init_device(MPI_Comm world, MPI_Comm replica, const int first_gpu,
 
   // Time on the device only if 1 proc per gpu
   _time_device=true;
+
+#if 0
+  // XXX: the following setting triggers a memory leak with OpenCL and MPI
+  //      setting _time_device=true for all processes doesn't seem to be a
+  //      problem with either (no segfault, no (large) memory leak.
+  //      thus keeping this disabled for now. may need to review later.
+  //      2018-07-23 <akohlmey@gmail.com>
   if (_procs_per_gpu>1)
     _time_device=false;
+#endif
 
   // Set up a per device communicator
   MPI_Comm_split(node_comm,my_gpu,0,&_comm_gpu);
-- 
GitLab