diff --git a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
index 562140eb24bad470604b5782a816a4e60d5000f3..130702b5e3bf1a7761550edf9821e4e8746076cd 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
@@ -266,15 +266,15 @@ extern "C" __global__ void LBCalcMacCompSP27(real *vxD, real *vyD, real *vzD, re
 {
     const unsigned k = vf::gpu::getNodeIndex();
 
+    if (!vf::gpu::isValidFluidNode(k, size_Mat, geoD[k]))
+        return;
+
     pressD[k] = c0o1;
     rhoD[k]   = c0o1;
     vxD[k]    = c0o1;
     vyD[k]    = c0o1;
     vzD[k]    = c0o1;
 
-    if (!vf::gpu::isValidFluidNode(k, size_Mat, geoD[k]))
-        return;
-
     vf::gpu::DistributionWrapper distr_wrapper(distributions, size_Mat, isEvenTimestep, k, neighborX, neighborY,
                                                neighborZ);
     const auto &distribution = distr_wrapper.distribution;