diff --git a/SAS/Scheduler/src/blocksize.h b/SAS/Scheduler/src/blocksize.h
index eb141a626c79b909890f2a7eec4e71580849ec24..359dcc8c97257f62c65411f388c39a1a76564c0c 100644
--- a/SAS/Scheduler/src/blocksize.h
+++ b/SAS/Scheduler/src/blocksize.h
@@ -101,20 +101,21 @@ public:
           if (correlatedEnabled) {
             // Add required multiples for the Correlator
 
-            // 16 is number of PPF taps
+            // 16 is number of PPF taps (FIR_Filter.cu)
             factor = lcm(factor, 16 * correlatorChannelsPerSubband);
 
-            // each subblock needs at least 16 samples
-            factor = lcm(factor, 16 * _nrSubblocks(requestedIntegrationTime));
+            // each subblock needs at least 16 samples per channel (Correlator.cu)
+            factor = lcm(factor, 16 * correlatorChannelsPerSubband * _nrSubblocks(requestedIntegrationTime));
           }
 
           if (coherentStokesEnabled) {
             // Add required multiples for the CS Beamformer
 
-            // 16 * 64 is required by the Cobalt DelayAndBandPassKernel
+            // 16 * 64 (DelayAndBandPass.cu)
             factor = lcm(factor, 16 * 64);
 
-            // 1024 is the maxNrThreadsPerBlock, required by the CoherentStokesKernel
+            // 1024 is the maxNrThreadsPerBlock (CoherentStokesKernel.cc)
+            // Note that coherenthannelsPerSubband is always a power of 2 < 1024
             factor = lcm(factor, 1024 * coherentTimeIntegrationFactor);
 
 	    (void)coherentChannelsPerSubband;
@@ -123,9 +124,10 @@ public:
           if (incoherentStokesEnabled) {
             // Add required multiples for the IS Beamformer
 
-            // 16 * 64 is required by the Cobalt DelayAndBandPassKernel
+            // 16 * 64 (DelayAndBandPass.cu)
             factor = lcm(factor, 16 * 64);
 
+            // integration should fit (IncoherentStokes.cu)
             factor = lcm(factor, incoherentTimeIntegrationFactor * incoherentChannelsPerSubband);
           }