diff --git a/apps/gpu/TGV_3D_GridRef/TGV_3D_GridRef.cpp b/apps/gpu/TGV_3D_GridRef/TGV_3D_GridRef.cpp
index d31a31140b22afee5246016b268354fa67914062..83247df03e783395adc0ee3e04abe46e826166e5 100644
--- a/apps/gpu/TGV_3D_GridRef/TGV_3D_GridRef.cpp
+++ b/apps/gpu/TGV_3D_GridRef/TGV_3D_GridRef.cpp
@@ -67,7 +67,7 @@
 
 //////////////////////////////////////////////////////////////////////////
 
-#include "VirtualFluids_GPU/Communication/MpiCommunicator.h"
+#include "parallel/MpiCommunicator.h"
 #include "VirtualFluids_GPU/DataStructureInitializer/GridProvider.h"
 #include "VirtualFluids_GPU/DataStructureInitializer/GridReaderFiles/GridReader.h"
 #include "VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.h"
@@ -131,11 +131,12 @@ std::string simulationName("TGV_3D_Gridref_noSqPress");
 
 void multipleLevel(const std::string& configPath)
 {
-    vf::gpu::Communicator& communicator = vf::gpu::MpiCommunicator::getInstance();
+    //vf::gpu::Communicator& communicator = vf::gpu::MpiCommunicator::getInstance();
+    vf::parallel::Communicator &communicator = *vf::parallel::MPICommunicator::getInstance();
 
     vf::basics::ConfigurationFile config;
     config.load(configPath);
-    SPtr<Parameter> para = std::make_shared<Parameter>(communicator.getNumberOfProcess(), communicator.getPID(), &config);
+    SPtr<Parameter> para = std::make_shared<Parameter>(communicator.getNumberOfProcesses(), communicator.getProcessID(), &config);
     BoundaryConditionFactory bcFactory = BoundaryConditionFactory();
     GridScalingFactory scalingFactory = GridScalingFactory();
 
diff --git a/apps/gpu/WTG_RUB/WTG_RUB.cpp b/apps/gpu/WTG_RUB/WTG_RUB.cpp
index 9535488f76b8f61eb75d38f7fc5266cc2467c3ba..f9c50de1a7f8235ce69a6ed3ea170b5f53d632bb 100644
--- a/apps/gpu/WTG_RUB/WTG_RUB.cpp
+++ b/apps/gpu/WTG_RUB/WTG_RUB.cpp
@@ -128,7 +128,7 @@ std::string chooseVariation();
 void multipleLevel(const std::string& configPath)
 {
     vf::parallel::Communicator &communicator = *vf::parallel::MPICommunicator::getInstance();
-    auto gridBuilder = MultipleGridBuilder::makeShared();
+    //auto gridBuilder = MultipleGridBuilder::makeShared();
 
     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/B15/B15CompressibleNavierStokesBGKplus.cu b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/B15/B15CompressibleNavierStokesBGKplus.cu
index 46d3c6edc413781826d8dc5147e9f46c3ae5a128..955dc0736de37ed3ad680a99ced5bb0e55d77b11 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/B15/B15CompressibleNavierStokesBGKplus.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/B15/B15CompressibleNavierStokesBGKplus.cu
@@ -2,7 +2,7 @@
 
 #include "B15CompressibleNavierStokesBGKplus_Device.cuh"
 #include "Parameter/Parameter.h"
-#include "cuda/CudaGrid.h"
+#include "cuda_helper/CudaGrid.h"
 
 std::shared_ptr<B15CompressibleNavierStokesBGKplus> B15CompressibleNavierStokesBGKplus::getNewInstance(std::shared_ptr<Parameter> para, int level)
 {
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesChimeraLegacy.cu b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesChimeraLegacy.cu
index 5ef177d77d562abf6e6028fe7e024a64078ed0ac..0f637558ba9ed16afb0311ab4eefba5d7b4d1208 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesChimeraLegacy.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesChimeraLegacy.cu
@@ -2,7 +2,7 @@
 
 #include "Parameter/Parameter.h"
 #include "K17CompressibleNavierStokesChimeraLegacy_Device.cuh"
-#include "cuda/CudaGrid.h"
+#include "cuda_helper/CudaGrid.h"
 
 std::shared_ptr<K17CompressibleNavierStokesChimeraLegacy> K17CompressibleNavierStokesChimeraLegacy::getNewInstance(std::shared_ptr<Parameter> para, int level)
 {
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants.cu b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants.cu
index 1957ae332acaeed5e29584079c670bf7ddcfadd2..1b3c978487bd8c2cd39ab92e6ac6d2af59c5cf04 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Compressible/FluidFlow/K17/K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants.cu
@@ -2,7 +2,7 @@
 
 #include "K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants_Device.cuh"
 #include "Parameter/Parameter.h"
-#include "cuda/CudaGrid.h"
+#include "cuda_helper/CudaGrid.h"
 
 std::shared_ptr<K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants> K17CompressibleNavierStokesSecondDerivatesFrom5thCumulants::getNewInstance(std::shared_ptr<Parameter> para, int level)
 {
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Incompressible/FluidFlow/K15/K15IncompressibleNavierStokesRotatingVelocityField.cu b/src/gpu/VirtualFluids_GPU/Kernel/Incompressible/FluidFlow/K15/K15IncompressibleNavierStokesRotatingVelocityField.cu
index e405246db6d7ef92d86f23fd36231dfe6ea7d831..5e5f99045cdc6bdbe365a4624e73b05dc82c2438 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Incompressible/FluidFlow/K15/K15IncompressibleNavierStokesRotatingVelocityField.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Incompressible/FluidFlow/K15/K15IncompressibleNavierStokesRotatingVelocityField.cu
@@ -2,7 +2,7 @@
 
 #include "K15IncompressibleNavierStokesRotatingVelocityField_Device.cuh"
 #include "Parameter/Parameter.h"
-#include "cuda/CudaGrid.h"
+#include "cuda_helper/CudaGrid.h"
 
 std::shared_ptr<K15IncompressibleNavierStokesRotatingVelocityField> K15IncompressibleNavierStokesRotatingVelocityField::getNewInstance(std::shared_ptr<Parameter> para, int level)
 {