diff --git a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/SubbandProc.cc b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/SubbandProc.cc
index c6050d41a32621d32dd73db9f5d467fcea02d3a5..6f33de85b0c8adb272fc8b2591de7f4bb479a978 100644
--- a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/SubbandProc.cc
+++ b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/SubbandProc.cc
@@ -31,6 +31,7 @@
 
 #include <ApplCommon/PosixTime.h>
 #include <Common/LofarLogger.h>
+#include <Common/Thread/Thread.h>
 
 #include <iomanip>
 
@@ -223,7 +224,13 @@ namespace LOFAR
       processCPUTimer.stop();
 
       // Synchronise to assure that all the work in the data is done
-      queue.synchronize();
+      {
+        // If we delay the reception of the DONE signal from the GPU,
+        // we can't schedule the next batch of work in time.
+        Thread::ScopedPriority sp(SCHED_RR, 10);
+
+        queue.synchronize();
+      }
     }