diff --git a/README.md b/README.md
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/CMakeLists.txt b/gpu/CMakeLists.txt
similarity index 100%
rename from CMakeLists.txt
rename to gpu/CMakeLists.txt
diff --git a/CMakeMacros/Cuda/Link.cmake b/gpu/CMakeMacros/Cuda/Link.cmake
similarity index 100%
rename from CMakeMacros/Cuda/Link.cmake
rename to gpu/CMakeMacros/Cuda/Link.cmake
diff --git a/CMakeMacros/OpenMP/Link.cmake b/gpu/CMakeMacros/OpenMP/Link.cmake
similarity index 100%
rename from CMakeMacros/OpenMP/Link.cmake
rename to gpu/CMakeMacros/OpenMP/Link.cmake
diff --git a/CMakeMacros/README.md b/gpu/CMakeMacros/README.md
similarity index 100%
rename from CMakeMacros/README.md
rename to gpu/CMakeMacros/README.md
diff --git a/CMakeMacros/general/BuildTarget.cmake b/gpu/CMakeMacros/general/BuildTarget.cmake
similarity index 100%
rename from CMakeMacros/general/BuildTarget.cmake
rename to gpu/CMakeMacros/general/BuildTarget.cmake
diff --git a/CMakeMacros/general/BuildTargetUtilities.cmake b/gpu/CMakeMacros/general/BuildTargetUtilities.cmake
similarity index 100%
rename from CMakeMacros/general/BuildTargetUtilities.cmake
rename to gpu/CMakeMacros/general/BuildTargetUtilities.cmake
diff --git a/CMakeMacros/general/EndingsToCollect.cmake b/gpu/CMakeMacros/general/EndingsToCollect.cmake
similarity index 100%
rename from CMakeMacros/general/EndingsToCollect.cmake
rename to gpu/CMakeMacros/general/EndingsToCollect.cmake
diff --git a/CMakeMacros/general/FileUtilities.cmake b/gpu/CMakeMacros/general/FileUtilities.cmake
similarity index 100%
rename from CMakeMacros/general/FileUtilities.cmake
rename to gpu/CMakeMacros/general/FileUtilities.cmake
diff --git a/CMakeMacros/general/FindCompiler.cmake b/gpu/CMakeMacros/general/FindCompiler.cmake
similarity index 100%
rename from CMakeMacros/general/FindCompiler.cmake
rename to gpu/CMakeMacros/general/FindCompiler.cmake
diff --git a/CMakeMacros/git/GetGitRevisionDescription.cmake b/gpu/CMakeMacros/git/GetGitRevisionDescription.cmake
similarity index 100%
rename from CMakeMacros/git/GetGitRevisionDescription.cmake
rename to gpu/CMakeMacros/git/GetGitRevisionDescription.cmake
diff --git a/CMakeMacros/git/GetGitRevisionDescription.cmake.in b/gpu/CMakeMacros/git/GetGitRevisionDescription.cmake.in
similarity index 100%
rename from CMakeMacros/git/GetGitRevisionDescription.cmake.in
rename to gpu/CMakeMacros/git/GetGitRevisionDescription.cmake.in
diff --git a/COPYING.txt b/gpu/COPYING.txt
similarity index 100%
rename from COPYING.txt
rename to gpu/COPYING.txt
diff --git a/Documentation/doxygen/VF_Doxyfile.dox b/gpu/Documentation/doxygen/VF_Doxyfile.dox
similarity index 100%
rename from Documentation/doxygen/VF_Doxyfile.dox
rename to gpu/Documentation/doxygen/VF_Doxyfile.dox
diff --git a/Documentation/doxygen/VirtualFluidsLogo_lowResolution.png b/gpu/Documentation/doxygen/VirtualFluidsLogo_lowResolution.png
similarity index 100%
rename from Documentation/doxygen/VirtualFluidsLogo_lowResolution.png
rename to gpu/Documentation/doxygen/VirtualFluidsLogo_lowResolution.png
diff --git a/readme.md b/gpu/readme.md
similarity index 100%
rename from readme.md
rename to gpu/readme.md
diff --git a/src/Core/ArrayTypes.h b/gpu/src/Core/ArrayTypes.h
similarity index 100%
rename from src/Core/ArrayTypes.h
rename to gpu/src/Core/ArrayTypes.h
diff --git a/src/Core/DataTypes.h b/gpu/src/Core/DataTypes.h
similarity index 100%
rename from src/Core/DataTypes.h
rename to gpu/src/Core/DataTypes.h
diff --git a/src/Core/LbmOrGks.h b/gpu/src/Core/LbmOrGks.h
similarity index 100%
rename from src/Core/LbmOrGks.h
rename to gpu/src/Core/LbmOrGks.h
diff --git a/src/Core/Logger/Logger.cpp b/gpu/src/Core/Logger/Logger.cpp
similarity index 100%
rename from src/Core/Logger/Logger.cpp
rename to gpu/src/Core/Logger/Logger.cpp
diff --git a/src/Core/Logger/Logger.h b/gpu/src/Core/Logger/Logger.h
similarity index 100%
rename from src/Core/Logger/Logger.h
rename to gpu/src/Core/Logger/Logger.h
diff --git a/src/Core/Logger/implementations/LoggerImp.cpp b/gpu/src/Core/Logger/implementations/LoggerImp.cpp
similarity index 100%
rename from src/Core/Logger/implementations/LoggerImp.cpp
rename to gpu/src/Core/Logger/implementations/LoggerImp.cpp
diff --git a/src/Core/Logger/implementations/LoggerImp.h b/gpu/src/Core/Logger/implementations/LoggerImp.h
similarity index 100%
rename from src/Core/Logger/implementations/LoggerImp.h
rename to gpu/src/Core/Logger/implementations/LoggerImp.h
diff --git a/src/Core/Logger/implementations/LoggerTest.cpp b/gpu/src/Core/Logger/implementations/LoggerTest.cpp
similarity index 100%
rename from src/Core/Logger/implementations/LoggerTest.cpp
rename to gpu/src/Core/Logger/implementations/LoggerTest.cpp
diff --git a/src/Core/Logger/implementations/package.include b/gpu/src/Core/Logger/implementations/package.include
similarity index 100%
rename from src/Core/Logger/implementations/package.include
rename to gpu/src/Core/Logger/implementations/package.include
diff --git a/src/Core/Logger/package.include b/gpu/src/Core/Logger/package.include
similarity index 100%
rename from src/Core/Logger/package.include
rename to gpu/src/Core/Logger/package.include
diff --git a/src/Core/NonCreatable.h b/gpu/src/Core/NonCreatable.h
similarity index 100%
rename from src/Core/NonCreatable.h
rename to gpu/src/Core/NonCreatable.h
diff --git a/src/Core/PointerDefinitions.h b/gpu/src/Core/PointerDefinitions.h
similarity index 100%
rename from src/Core/PointerDefinitions.h
rename to gpu/src/Core/PointerDefinitions.h
diff --git a/src/Core/RealConstants.h b/gpu/src/Core/RealConstants.h
similarity index 100%
rename from src/Core/RealConstants.h
rename to gpu/src/Core/RealConstants.h
diff --git a/src/Core/Timer/Timer.cpp b/gpu/src/Core/Timer/Timer.cpp
similarity index 100%
rename from src/Core/Timer/Timer.cpp
rename to gpu/src/Core/Timer/Timer.cpp
diff --git a/src/Core/Timer/Timer.h b/gpu/src/Core/Timer/Timer.h
similarity index 100%
rename from src/Core/Timer/Timer.h
rename to gpu/src/Core/Timer/Timer.h
diff --git a/src/Core/Timer/TimerImp.cpp b/gpu/src/Core/Timer/TimerImp.cpp
similarity index 100%
rename from src/Core/Timer/TimerImp.cpp
rename to gpu/src/Core/Timer/TimerImp.cpp
diff --git a/src/Core/Timer/TimerImp.h b/gpu/src/Core/Timer/TimerImp.h
similarity index 100%
rename from src/Core/Timer/TimerImp.h
rename to gpu/src/Core/Timer/TimerImp.h
diff --git a/src/Core/Timer/package.include b/gpu/src/Core/Timer/package.include
similarity index 100%
rename from src/Core/Timer/package.include
rename to gpu/src/Core/Timer/package.include
diff --git a/src/Core/VectorTypes.cpp b/gpu/src/Core/VectorTypes.cpp
similarity index 100%
rename from src/Core/VectorTypes.cpp
rename to gpu/src/Core/VectorTypes.cpp
diff --git a/src/Core/VectorTypes.h b/gpu/src/Core/VectorTypes.h
similarity index 100%
rename from src/Core/VectorTypes.h
rename to gpu/src/Core/VectorTypes.h
diff --git a/src/Core/buildInfo.h b/gpu/src/Core/buildInfo.h
similarity index 100%
rename from src/Core/buildInfo.h
rename to gpu/src/Core/buildInfo.h
diff --git a/src/Core/package.include b/gpu/src/Core/package.include
similarity index 100%
rename from src/Core/package.include
rename to gpu/src/Core/package.include
diff --git a/src/GksGpu/Analyzer/ConvergenceAnalyzer.cpp b/gpu/src/GksGpu/Analyzer/ConvergenceAnalyzer.cpp
similarity index 100%
rename from src/GksGpu/Analyzer/ConvergenceAnalyzer.cpp
rename to gpu/src/GksGpu/Analyzer/ConvergenceAnalyzer.cpp
diff --git a/src/GksGpu/Analyzer/ConvergenceAnalyzer.h b/gpu/src/GksGpu/Analyzer/ConvergenceAnalyzer.h
similarity index 100%
rename from src/GksGpu/Analyzer/ConvergenceAnalyzer.h
rename to gpu/src/GksGpu/Analyzer/ConvergenceAnalyzer.h
diff --git a/src/GksGpu/Analyzer/CupsAnalyzer.cpp b/gpu/src/GksGpu/Analyzer/CupsAnalyzer.cpp
similarity index 100%
rename from src/GksGpu/Analyzer/CupsAnalyzer.cpp
rename to gpu/src/GksGpu/Analyzer/CupsAnalyzer.cpp
diff --git a/src/GksGpu/Analyzer/CupsAnalyzer.h b/gpu/src/GksGpu/Analyzer/CupsAnalyzer.h
similarity index 100%
rename from src/GksGpu/Analyzer/CupsAnalyzer.h
rename to gpu/src/GksGpu/Analyzer/CupsAnalyzer.h
diff --git a/src/GksGpu/Analyzer/package.include b/gpu/src/GksGpu/Analyzer/package.include
similarity index 100%
rename from src/GksGpu/Analyzer/package.include
rename to gpu/src/GksGpu/Analyzer/package.include
diff --git a/src/GksGpu/BoundaryConditions/BoundaryCondition.cpp b/gpu/src/GksGpu/BoundaryConditions/BoundaryCondition.cpp
similarity index 100%
rename from src/GksGpu/BoundaryConditions/BoundaryCondition.cpp
rename to gpu/src/GksGpu/BoundaryConditions/BoundaryCondition.cpp
diff --git a/src/GksGpu/BoundaryConditions/BoundaryCondition.h b/gpu/src/GksGpu/BoundaryConditions/BoundaryCondition.h
similarity index 100%
rename from src/GksGpu/BoundaryConditions/BoundaryCondition.h
rename to gpu/src/GksGpu/BoundaryConditions/BoundaryCondition.h
diff --git a/src/GksGpu/BoundaryConditions/IsothermalWall.cu b/gpu/src/GksGpu/BoundaryConditions/IsothermalWall.cu
similarity index 100%
rename from src/GksGpu/BoundaryConditions/IsothermalWall.cu
rename to gpu/src/GksGpu/BoundaryConditions/IsothermalWall.cu
diff --git a/src/GksGpu/BoundaryConditions/IsothermalWall.h b/gpu/src/GksGpu/BoundaryConditions/IsothermalWall.h
similarity index 100%
rename from src/GksGpu/BoundaryConditions/IsothermalWall.h
rename to gpu/src/GksGpu/BoundaryConditions/IsothermalWall.h
diff --git a/src/GksGpu/BoundaryConditions/package.include b/gpu/src/GksGpu/BoundaryConditions/package.include
similarity index 100%
rename from src/GksGpu/BoundaryConditions/package.include
rename to gpu/src/GksGpu/BoundaryConditions/package.include
diff --git a/src/GksGpu/CellProperties/CellProperties.cuh b/gpu/src/GksGpu/CellProperties/CellProperties.cuh
similarity index 100%
rename from src/GksGpu/CellProperties/CellProperties.cuh
rename to gpu/src/GksGpu/CellProperties/CellProperties.cuh
diff --git a/src/GksGpu/CellProperties/package.include b/gpu/src/GksGpu/CellProperties/package.include
similarity index 100%
rename from src/GksGpu/CellProperties/package.include
rename to gpu/src/GksGpu/CellProperties/package.include
diff --git a/src/GksGpu/CellUpdate/CellUpdate.cu b/gpu/src/GksGpu/CellUpdate/CellUpdate.cu
similarity index 100%
rename from src/GksGpu/CellUpdate/CellUpdate.cu
rename to gpu/src/GksGpu/CellUpdate/CellUpdate.cu
diff --git a/src/GksGpu/CellUpdate/CellUpdate.h b/gpu/src/GksGpu/CellUpdate/CellUpdate.h
similarity index 100%
rename from src/GksGpu/CellUpdate/CellUpdate.h
rename to gpu/src/GksGpu/CellUpdate/CellUpdate.h
diff --git a/src/GksGpu/CellUpdate/package.include b/gpu/src/GksGpu/CellUpdate/package.include
similarity index 100%
rename from src/GksGpu/CellUpdate/package.include
rename to gpu/src/GksGpu/CellUpdate/package.include
diff --git a/src/GksGpu/CudaUtility/CudaRunKernel.hpp b/gpu/src/GksGpu/CudaUtility/CudaRunKernel.hpp
similarity index 100%
rename from src/GksGpu/CudaUtility/CudaRunKernel.hpp
rename to gpu/src/GksGpu/CudaUtility/CudaRunKernel.hpp
diff --git a/src/GksGpu/CudaUtility/CudaUtility.cpp b/gpu/src/GksGpu/CudaUtility/CudaUtility.cpp
similarity index 100%
rename from src/GksGpu/CudaUtility/CudaUtility.cpp
rename to gpu/src/GksGpu/CudaUtility/CudaUtility.cpp
diff --git a/src/GksGpu/CudaUtility/CudaUtility.h b/gpu/src/GksGpu/CudaUtility/CudaUtility.h
similarity index 100%
rename from src/GksGpu/CudaUtility/CudaUtility.h
rename to gpu/src/GksGpu/CudaUtility/CudaUtility.h
diff --git a/src/GksGpu/CudaUtility/package.include b/gpu/src/GksGpu/CudaUtility/package.include
similarity index 100%
rename from src/GksGpu/CudaUtility/package.include
rename to gpu/src/GksGpu/CudaUtility/package.include
diff --git a/src/GksGpu/DataBase/DataBase.cpp b/gpu/src/GksGpu/DataBase/DataBase.cpp
similarity index 100%
rename from src/GksGpu/DataBase/DataBase.cpp
rename to gpu/src/GksGpu/DataBase/DataBase.cpp
diff --git a/src/GksGpu/DataBase/DataBase.h b/gpu/src/GksGpu/DataBase/DataBase.h
similarity index 100%
rename from src/GksGpu/DataBase/DataBase.h
rename to gpu/src/GksGpu/DataBase/DataBase.h
diff --git a/src/GksGpu/DataBase/DataBaseAllocator.cpp b/gpu/src/GksGpu/DataBase/DataBaseAllocator.cpp
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocator.cpp
rename to gpu/src/GksGpu/DataBase/DataBaseAllocator.cpp
diff --git a/src/GksGpu/DataBase/DataBaseAllocator.h b/gpu/src/GksGpu/DataBase/DataBaseAllocator.h
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocator.h
rename to gpu/src/GksGpu/DataBase/DataBaseAllocator.h
diff --git a/src/GksGpu/DataBase/DataBaseAllocatorCPU.cpp b/gpu/src/GksGpu/DataBase/DataBaseAllocatorCPU.cpp
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocatorCPU.cpp
rename to gpu/src/GksGpu/DataBase/DataBaseAllocatorCPU.cpp
diff --git a/src/GksGpu/DataBase/DataBaseAllocatorCPU.h b/gpu/src/GksGpu/DataBase/DataBaseAllocatorCPU.h
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocatorCPU.h
rename to gpu/src/GksGpu/DataBase/DataBaseAllocatorCPU.h
diff --git a/src/GksGpu/DataBase/DataBaseAllocatorGPU.cpp b/gpu/src/GksGpu/DataBase/DataBaseAllocatorGPU.cpp
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocatorGPU.cpp
rename to gpu/src/GksGpu/DataBase/DataBaseAllocatorGPU.cpp
diff --git a/src/GksGpu/DataBase/DataBaseAllocatorGPU.h b/gpu/src/GksGpu/DataBase/DataBaseAllocatorGPU.h
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseAllocatorGPU.h
rename to gpu/src/GksGpu/DataBase/DataBaseAllocatorGPU.h
diff --git a/src/GksGpu/DataBase/DataBaseStruct.h b/gpu/src/GksGpu/DataBase/DataBaseStruct.h
similarity index 100%
rename from src/GksGpu/DataBase/DataBaseStruct.h
rename to gpu/src/GksGpu/DataBase/DataBaseStruct.h
diff --git a/src/GksGpu/DataBase/package.include b/gpu/src/GksGpu/DataBase/package.include
similarity index 100%
rename from src/GksGpu/DataBase/package.include
rename to gpu/src/GksGpu/DataBase/package.include
diff --git a/src/GksGpu/Definitions/AccumulatorDataType.h b/gpu/src/GksGpu/Definitions/AccumulatorDataType.h
similarity index 100%
rename from src/GksGpu/Definitions/AccumulatorDataType.h
rename to gpu/src/GksGpu/Definitions/AccumulatorDataType.h
diff --git a/src/GksGpu/Definitions/MemoryAccessPattern.h b/gpu/src/GksGpu/Definitions/MemoryAccessPattern.h
similarity index 100%
rename from src/GksGpu/Definitions/MemoryAccessPattern.h
rename to gpu/src/GksGpu/Definitions/MemoryAccessPattern.h
diff --git a/src/GksGpu/Definitions/PassiveScalar.h b/gpu/src/GksGpu/Definitions/PassiveScalar.h
similarity index 100%
rename from src/GksGpu/Definitions/PassiveScalar.h
rename to gpu/src/GksGpu/Definitions/PassiveScalar.h
diff --git a/src/GksGpu/Definitions/package.include b/gpu/src/GksGpu/Definitions/package.include
similarity index 100%
rename from src/GksGpu/Definitions/package.include
rename to gpu/src/GksGpu/Definitions/package.include
diff --git a/src/GksGpu/FlowStateData/AccessDeviceData.cuh b/gpu/src/GksGpu/FlowStateData/AccessDeviceData.cuh
similarity index 100%
rename from src/GksGpu/FlowStateData/AccessDeviceData.cuh
rename to gpu/src/GksGpu/FlowStateData/AccessDeviceData.cuh
diff --git a/src/GksGpu/FlowStateData/FlowStateData.cuh b/gpu/src/GksGpu/FlowStateData/FlowStateData.cuh
similarity index 100%
rename from src/GksGpu/FlowStateData/FlowStateData.cuh
rename to gpu/src/GksGpu/FlowStateData/FlowStateData.cuh
diff --git a/src/GksGpu/FlowStateData/FlowStateDataConversion.cuh b/gpu/src/GksGpu/FlowStateData/FlowStateDataConversion.cuh
similarity index 100%
rename from src/GksGpu/FlowStateData/FlowStateDataConversion.cuh
rename to gpu/src/GksGpu/FlowStateData/FlowStateDataConversion.cuh
diff --git a/src/GksGpu/FlowStateData/package.include b/gpu/src/GksGpu/FlowStateData/package.include
similarity index 100%
rename from src/GksGpu/FlowStateData/package.include
rename to gpu/src/GksGpu/FlowStateData/package.include
diff --git a/src/GksGpu/FluxComputation/ApplyFlux.cuh b/gpu/src/GksGpu/FluxComputation/ApplyFlux.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/ApplyFlux.cuh
rename to gpu/src/GksGpu/FluxComputation/ApplyFlux.cuh
diff --git a/src/GksGpu/FluxComputation/AssembleFlux.cuh b/gpu/src/GksGpu/FluxComputation/AssembleFlux.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/AssembleFlux.cuh
rename to gpu/src/GksGpu/FluxComputation/AssembleFlux.cuh
diff --git a/src/GksGpu/FluxComputation/ExpansionCoefficients.cuh b/gpu/src/GksGpu/FluxComputation/ExpansionCoefficients.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/ExpansionCoefficients.cuh
rename to gpu/src/GksGpu/FluxComputation/ExpansionCoefficients.cuh
diff --git a/src/GksGpu/FluxComputation/FluxComputation.cu b/gpu/src/GksGpu/FluxComputation/FluxComputation.cu
similarity index 100%
rename from src/GksGpu/FluxComputation/FluxComputation.cu
rename to gpu/src/GksGpu/FluxComputation/FluxComputation.cu
diff --git a/src/GksGpu/FluxComputation/FluxComputation.h b/gpu/src/GksGpu/FluxComputation/FluxComputation.h
similarity index 100%
rename from src/GksGpu/FluxComputation/FluxComputation.h
rename to gpu/src/GksGpu/FluxComputation/FluxComputation.h
diff --git a/src/GksGpu/FluxComputation/Moments.cuh b/gpu/src/GksGpu/FluxComputation/Moments.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/Moments.cuh
rename to gpu/src/GksGpu/FluxComputation/Moments.cuh
diff --git a/src/GksGpu/FluxComputation/Reconstruction.cuh b/gpu/src/GksGpu/FluxComputation/Reconstruction.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/Reconstruction.cuh
rename to gpu/src/GksGpu/FluxComputation/Reconstruction.cuh
diff --git a/src/GksGpu/FluxComputation/SutherlandsLaw.cuh b/gpu/src/GksGpu/FluxComputation/SutherlandsLaw.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/SutherlandsLaw.cuh
rename to gpu/src/GksGpu/FluxComputation/SutherlandsLaw.cuh
diff --git a/src/GksGpu/FluxComputation/Transformation.cuh b/gpu/src/GksGpu/FluxComputation/Transformation.cuh
similarity index 100%
rename from src/GksGpu/FluxComputation/Transformation.cuh
rename to gpu/src/GksGpu/FluxComputation/Transformation.cuh
diff --git a/src/GksGpu/FluxComputation/package.include b/gpu/src/GksGpu/FluxComputation/package.include
similarity index 100%
rename from src/GksGpu/FluxComputation/package.include
rename to gpu/src/GksGpu/FluxComputation/package.include
diff --git a/src/GksGpu/Initializer/Initializer.cpp b/gpu/src/GksGpu/Initializer/Initializer.cpp
similarity index 100%
rename from src/GksGpu/Initializer/Initializer.cpp
rename to gpu/src/GksGpu/Initializer/Initializer.cpp
diff --git a/src/GksGpu/Initializer/Initializer.h b/gpu/src/GksGpu/Initializer/Initializer.h
similarity index 100%
rename from src/GksGpu/Initializer/Initializer.h
rename to gpu/src/GksGpu/Initializer/Initializer.h
diff --git a/src/GksGpu/Initializer/InitializerKernel.cu b/gpu/src/GksGpu/Initializer/InitializerKernel.cu
similarity index 100%
rename from src/GksGpu/Initializer/InitializerKernel.cu
rename to gpu/src/GksGpu/Initializer/InitializerKernel.cu
diff --git a/src/GksGpu/Initializer/package.include b/gpu/src/GksGpu/Initializer/package.include
similarity index 100%
rename from src/GksGpu/Initializer/package.include
rename to gpu/src/GksGpu/Initializer/package.include
diff --git a/src/GksGpu/Output/VtkWriter.cpp b/gpu/src/GksGpu/Output/VtkWriter.cpp
similarity index 100%
rename from src/GksGpu/Output/VtkWriter.cpp
rename to gpu/src/GksGpu/Output/VtkWriter.cpp
diff --git a/src/GksGpu/Output/VtkWriter.h b/gpu/src/GksGpu/Output/VtkWriter.h
similarity index 100%
rename from src/GksGpu/Output/VtkWriter.h
rename to gpu/src/GksGpu/Output/VtkWriter.h
diff --git a/src/GksGpu/Output/package.include b/gpu/src/GksGpu/Output/package.include
similarity index 100%
rename from src/GksGpu/Output/package.include
rename to gpu/src/GksGpu/Output/package.include
diff --git a/src/GksGpu/Parameters/Parameters.h b/gpu/src/GksGpu/Parameters/Parameters.h
similarity index 100%
rename from src/GksGpu/Parameters/Parameters.h
rename to gpu/src/GksGpu/Parameters/Parameters.h
diff --git a/src/GksGpu/Parameters/package.include b/gpu/src/GksGpu/Parameters/package.include
similarity index 100%
rename from src/GksGpu/Parameters/package.include
rename to gpu/src/GksGpu/Parameters/package.include
diff --git a/src/GksGpu/TimeStepping/NestedTimeStep.cpp b/gpu/src/GksGpu/TimeStepping/NestedTimeStep.cpp
similarity index 100%
rename from src/GksGpu/TimeStepping/NestedTimeStep.cpp
rename to gpu/src/GksGpu/TimeStepping/NestedTimeStep.cpp
diff --git a/src/GksGpu/TimeStepping/NestedTimeStep.h b/gpu/src/GksGpu/TimeStepping/NestedTimeStep.h
similarity index 100%
rename from src/GksGpu/TimeStepping/NestedTimeStep.h
rename to gpu/src/GksGpu/TimeStepping/NestedTimeStep.h
diff --git a/src/GksGpu/TimeStepping/package.include b/gpu/src/GksGpu/TimeStepping/package.include
similarity index 100%
rename from src/GksGpu/TimeStepping/package.include
rename to gpu/src/GksGpu/TimeStepping/package.include
diff --git a/src/GksGpu/package.include b/gpu/src/GksGpu/package.include
similarity index 100%
rename from src/GksGpu/package.include
rename to gpu/src/GksGpu/package.include
diff --git a/src/GksMeshAdapter/GksMeshAdapter.cpp b/gpu/src/GksMeshAdapter/GksMeshAdapter.cpp
similarity index 100%
rename from src/GksMeshAdapter/GksMeshAdapter.cpp
rename to gpu/src/GksMeshAdapter/GksMeshAdapter.cpp
diff --git a/src/GksMeshAdapter/GksMeshAdapter.h b/gpu/src/GksMeshAdapter/GksMeshAdapter.h
similarity index 100%
rename from src/GksMeshAdapter/GksMeshAdapter.h
rename to gpu/src/GksMeshAdapter/GksMeshAdapter.h
diff --git a/src/GksMeshAdapter/MeshCell.cpp b/gpu/src/GksMeshAdapter/MeshCell.cpp
similarity index 100%
rename from src/GksMeshAdapter/MeshCell.cpp
rename to gpu/src/GksMeshAdapter/MeshCell.cpp
diff --git a/src/GksMeshAdapter/MeshCell.h b/gpu/src/GksMeshAdapter/MeshCell.h
similarity index 100%
rename from src/GksMeshAdapter/MeshCell.h
rename to gpu/src/GksMeshAdapter/MeshCell.h
diff --git a/src/GksMeshAdapter/MeshFace.cpp b/gpu/src/GksMeshAdapter/MeshFace.cpp
similarity index 100%
rename from src/GksMeshAdapter/MeshFace.cpp
rename to gpu/src/GksMeshAdapter/MeshFace.cpp
diff --git a/src/GksMeshAdapter/MeshFace.h b/gpu/src/GksMeshAdapter/MeshFace.h
similarity index 100%
rename from src/GksMeshAdapter/MeshFace.h
rename to gpu/src/GksMeshAdapter/MeshFace.h
diff --git a/src/GksMeshAdapter/package.include b/gpu/src/GksMeshAdapter/package.include
similarity index 100%
rename from src/GksMeshAdapter/package.include
rename to gpu/src/GksMeshAdapter/package.include
diff --git a/src/GridGenerator/geometries/BoundingBox/BoundingBox.cu b/gpu/src/GridGenerator/geometries/BoundingBox/BoundingBox.cu
similarity index 100%
rename from src/GridGenerator/geometries/BoundingBox/BoundingBox.cu
rename to gpu/src/GridGenerator/geometries/BoundingBox/BoundingBox.cu
diff --git a/src/GridGenerator/geometries/BoundingBox/BoundingBox.h b/gpu/src/GridGenerator/geometries/BoundingBox/BoundingBox.h
similarity index 100%
rename from src/GridGenerator/geometries/BoundingBox/BoundingBox.h
rename to gpu/src/GridGenerator/geometries/BoundingBox/BoundingBox.h
diff --git a/src/GridGenerator/geometries/BoundingBox/BoundingBoxTest.cpp b/gpu/src/GridGenerator/geometries/BoundingBox/BoundingBoxTest.cpp
similarity index 100%
rename from src/GridGenerator/geometries/BoundingBox/BoundingBoxTest.cpp
rename to gpu/src/GridGenerator/geometries/BoundingBox/BoundingBoxTest.cpp
diff --git a/src/GridGenerator/geometries/BoundingBox/package.include b/gpu/src/GridGenerator/geometries/BoundingBox/package.include
similarity index 100%
rename from src/GridGenerator/geometries/BoundingBox/package.include
rename to gpu/src/GridGenerator/geometries/BoundingBox/package.include
diff --git a/src/GridGenerator/geometries/Cuboid/Cuboid.cu b/gpu/src/GridGenerator/geometries/Cuboid/Cuboid.cu
similarity index 100%
rename from src/GridGenerator/geometries/Cuboid/Cuboid.cu
rename to gpu/src/GridGenerator/geometries/Cuboid/Cuboid.cu
diff --git a/src/GridGenerator/geometries/Cuboid/Cuboid.h b/gpu/src/GridGenerator/geometries/Cuboid/Cuboid.h
similarity index 100%
rename from src/GridGenerator/geometries/Cuboid/Cuboid.h
rename to gpu/src/GridGenerator/geometries/Cuboid/Cuboid.h
diff --git a/src/GridGenerator/geometries/Cuboid/package.include b/gpu/src/GridGenerator/geometries/Cuboid/package.include
similarity index 100%
rename from src/GridGenerator/geometries/Cuboid/package.include
rename to gpu/src/GridGenerator/geometries/Cuboid/package.include
diff --git a/src/GridGenerator/geometries/Object.cu b/gpu/src/GridGenerator/geometries/Object.cu
similarity index 100%
rename from src/GridGenerator/geometries/Object.cu
rename to gpu/src/GridGenerator/geometries/Object.cu
diff --git a/src/GridGenerator/geometries/Object.h b/gpu/src/GridGenerator/geometries/Object.h
similarity index 100%
rename from src/GridGenerator/geometries/Object.h
rename to gpu/src/GridGenerator/geometries/Object.h
diff --git a/src/GridGenerator/geometries/Vertex/Vertex.cu b/gpu/src/GridGenerator/geometries/Vertex/Vertex.cu
similarity index 100%
rename from src/GridGenerator/geometries/Vertex/Vertex.cu
rename to gpu/src/GridGenerator/geometries/Vertex/Vertex.cu
diff --git a/src/GridGenerator/geometries/Vertex/Vertex.h b/gpu/src/GridGenerator/geometries/Vertex/Vertex.h
similarity index 100%
rename from src/GridGenerator/geometries/Vertex/Vertex.h
rename to gpu/src/GridGenerator/geometries/Vertex/Vertex.h
diff --git a/src/GridGenerator/geometries/Vertex/package.include b/gpu/src/GridGenerator/geometries/Vertex/package.include
similarity index 100%
rename from src/GridGenerator/geometries/Vertex/package.include
rename to gpu/src/GridGenerator/geometries/Vertex/package.include
diff --git a/src/GridGenerator/geometries/package.include b/gpu/src/GridGenerator/geometries/package.include
similarity index 100%
rename from src/GridGenerator/geometries/package.include
rename to gpu/src/GridGenerator/geometries/package.include
diff --git a/src/GridGenerator/global.h b/gpu/src/GridGenerator/global.h
similarity index 100%
rename from src/GridGenerator/global.h
rename to gpu/src/GridGenerator/global.h
diff --git a/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp b/gpu/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
similarity index 100%
rename from src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
rename to gpu/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
diff --git a/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h b/gpu/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
similarity index 100%
rename from src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
rename to gpu/src/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
diff --git a/src/GridGenerator/grid/BoundaryConditions/Side.cpp b/gpu/src/GridGenerator/grid/BoundaryConditions/Side.cpp
similarity index 100%
rename from src/GridGenerator/grid/BoundaryConditions/Side.cpp
rename to gpu/src/GridGenerator/grid/BoundaryConditions/Side.cpp
diff --git a/src/GridGenerator/grid/BoundaryConditions/Side.h b/gpu/src/GridGenerator/grid/BoundaryConditions/Side.h
similarity index 100%
rename from src/GridGenerator/grid/BoundaryConditions/Side.h
rename to gpu/src/GridGenerator/grid/BoundaryConditions/Side.h
diff --git a/src/GridGenerator/grid/BoundaryConditions/package.include b/gpu/src/GridGenerator/grid/BoundaryConditions/package.include
similarity index 100%
rename from src/GridGenerator/grid/BoundaryConditions/package.include
rename to gpu/src/GridGenerator/grid/BoundaryConditions/package.include
diff --git a/src/GridGenerator/grid/Cell.h b/gpu/src/GridGenerator/grid/Cell.h
similarity index 100%
rename from src/GridGenerator/grid/Cell.h
rename to gpu/src/GridGenerator/grid/Cell.h
diff --git a/src/GridGenerator/grid/Field.cu b/gpu/src/GridGenerator/grid/Field.cu
similarity index 100%
rename from src/GridGenerator/grid/Field.cu
rename to gpu/src/GridGenerator/grid/Field.cu
diff --git a/src/GridGenerator/grid/Field.h b/gpu/src/GridGenerator/grid/Field.h
similarity index 100%
rename from src/GridGenerator/grid/Field.h
rename to gpu/src/GridGenerator/grid/Field.h
diff --git a/src/GridGenerator/grid/Grid.h b/gpu/src/GridGenerator/grid/Grid.h
similarity index 100%
rename from src/GridGenerator/grid/Grid.h
rename to gpu/src/GridGenerator/grid/Grid.h
diff --git a/src/GridGenerator/grid/GridBuilder/GridBuilder.h b/gpu/src/GridGenerator/grid/GridBuilder/GridBuilder.h
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/GridBuilder.h
rename to gpu/src/GridGenerator/grid/GridBuilder/GridBuilder.h
diff --git a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp b/gpu/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
rename to gpu/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
diff --git a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h b/gpu/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
rename to gpu/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
diff --git a/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp b/gpu/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
rename to gpu/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
diff --git a/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h b/gpu/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
rename to gpu/src/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
diff --git a/src/GridGenerator/grid/GridBuilder/package.include b/gpu/src/GridGenerator/grid/GridBuilder/package.include
similarity index 100%
rename from src/GridGenerator/grid/GridBuilder/package.include
rename to gpu/src/GridGenerator/grid/GridBuilder/package.include
diff --git a/src/GridGenerator/grid/GridFactory.h b/gpu/src/GridGenerator/grid/GridFactory.h
similarity index 100%
rename from src/GridGenerator/grid/GridFactory.h
rename to gpu/src/GridGenerator/grid/GridFactory.h
diff --git a/src/GridGenerator/grid/GridImp.cu b/gpu/src/GridGenerator/grid/GridImp.cu
similarity index 100%
rename from src/GridGenerator/grid/GridImp.cu
rename to gpu/src/GridGenerator/grid/GridImp.cu
diff --git a/src/GridGenerator/grid/GridImp.h b/gpu/src/GridGenerator/grid/GridImp.h
similarity index 100%
rename from src/GridGenerator/grid/GridImp.h
rename to gpu/src/GridGenerator/grid/GridImp.h
diff --git a/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.cpp b/gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.cpp
similarity index 100%
rename from src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.cpp
rename to gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.cpp
diff --git a/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h b/gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
similarity index 100%
rename from src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
rename to gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
diff --git a/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/package.include b/gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/package.include
similarity index 100%
rename from src/GridGenerator/grid/GridStrategy/GridCpuStrategy/package.include
rename to gpu/src/GridGenerator/grid/GridStrategy/GridCpuStrategy/package.include
diff --git a/src/GridGenerator/grid/GridStrategy/GridStrategy.h b/gpu/src/GridGenerator/grid/GridStrategy/GridStrategy.h
similarity index 100%
rename from src/GridGenerator/grid/GridStrategy/GridStrategy.h
rename to gpu/src/GridGenerator/grid/GridStrategy/GridStrategy.h
diff --git a/src/GridGenerator/grid/GridStrategy/package.include b/gpu/src/GridGenerator/grid/GridStrategy/package.include
similarity index 100%
rename from src/GridGenerator/grid/GridStrategy/package.include
rename to gpu/src/GridGenerator/grid/GridStrategy/package.include
diff --git a/src/GridGenerator/grid/NodeValues.h b/gpu/src/GridGenerator/grid/NodeValues.h
similarity index 100%
rename from src/GridGenerator/grid/NodeValues.h
rename to gpu/src/GridGenerator/grid/NodeValues.h
diff --git a/src/GridGenerator/grid/distributions/D3Q27.h b/gpu/src/GridGenerator/grid/distributions/D3Q27.h
similarity index 100%
rename from src/GridGenerator/grid/distributions/D3Q27.h
rename to gpu/src/GridGenerator/grid/distributions/D3Q27.h
diff --git a/src/GridGenerator/grid/distributions/Distribution.cpp b/gpu/src/GridGenerator/grid/distributions/Distribution.cpp
similarity index 100%
rename from src/GridGenerator/grid/distributions/Distribution.cpp
rename to gpu/src/GridGenerator/grid/distributions/Distribution.cpp
diff --git a/src/GridGenerator/grid/distributions/Distribution.h b/gpu/src/GridGenerator/grid/distributions/Distribution.h
similarity index 100%
rename from src/GridGenerator/grid/distributions/Distribution.h
rename to gpu/src/GridGenerator/grid/distributions/Distribution.h
diff --git a/src/GridGenerator/grid/distributions/package.include b/gpu/src/GridGenerator/grid/distributions/package.include
similarity index 100%
rename from src/GridGenerator/grid/distributions/package.include
rename to gpu/src/GridGenerator/grid/distributions/package.include
diff --git a/src/GridGenerator/grid/package.include b/gpu/src/GridGenerator/grid/package.include
similarity index 100%
rename from src/GridGenerator/grid/package.include
rename to gpu/src/GridGenerator/grid/package.include
diff --git a/src/GridGenerator/package.include b/gpu/src/GridGenerator/package.include
similarity index 100%
rename from src/GridGenerator/package.include
rename to gpu/src/GridGenerator/package.include
diff --git a/src/GridGenerator/utilities/math/Math.cu b/gpu/src/GridGenerator/utilities/math/Math.cu
similarity index 100%
rename from src/GridGenerator/utilities/math/Math.cu
rename to gpu/src/GridGenerator/utilities/math/Math.cu
diff --git a/src/GridGenerator/utilities/math/Math.h b/gpu/src/GridGenerator/utilities/math/Math.h
similarity index 100%
rename from src/GridGenerator/utilities/math/Math.h
rename to gpu/src/GridGenerator/utilities/math/Math.h
diff --git a/src/GridGenerator/utilities/math/package.include b/gpu/src/GridGenerator/utilities/math/package.include
similarity index 100%
rename from src/GridGenerator/utilities/math/package.include
rename to gpu/src/GridGenerator/utilities/math/package.include
diff --git a/src/GridGenerator/utilities/package.include b/gpu/src/GridGenerator/utilities/package.include
similarity index 100%
rename from src/GridGenerator/utilities/package.include
rename to gpu/src/GridGenerator/utilities/package.include
diff --git a/src/VirtualFluidsBasics/basics/container/CbArray2D.h b/gpu/src/VirtualFluidsBasics/basics/container/CbArray2D.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/container/CbArray2D.h
rename to gpu/src/VirtualFluidsBasics/basics/container/CbArray2D.h
diff --git a/src/VirtualFluidsBasics/basics/container/CbArray3D.h b/gpu/src/VirtualFluidsBasics/basics/container/CbArray3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/container/CbArray3D.h
rename to gpu/src/VirtualFluidsBasics/basics/container/CbArray3D.h
diff --git a/src/VirtualFluidsBasics/basics/container/CbArray4D.h b/gpu/src/VirtualFluidsBasics/basics/container/CbArray4D.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/container/CbArray4D.h
rename to gpu/src/VirtualFluidsBasics/basics/container/CbArray4D.h
diff --git a/src/VirtualFluidsBasics/basics/container/CbVector.h b/gpu/src/VirtualFluidsBasics/basics/container/CbVector.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/container/CbVector.h
rename to gpu/src/VirtualFluidsBasics/basics/container/CbVector.h
diff --git a/src/VirtualFluidsBasics/basics/container/package.include b/gpu/src/VirtualFluidsBasics/basics/container/package.include
similarity index 100%
rename from src/VirtualFluidsBasics/basics/container/package.include
rename to gpu/src/VirtualFluidsBasics/basics/container/package.include
diff --git a/src/VirtualFluidsBasics/basics/objects/ObObject.h b/gpu/src/VirtualFluidsBasics/basics/objects/ObObject.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/objects/ObObject.h
rename to gpu/src/VirtualFluidsBasics/basics/objects/ObObject.h
diff --git a/src/VirtualFluidsBasics/basics/objects/package.include b/gpu/src/VirtualFluidsBasics/basics/objects/package.include
similarity index 100%
rename from src/VirtualFluidsBasics/basics/objects/package.include
rename to gpu/src/VirtualFluidsBasics/basics/objects/package.include
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbComparators.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbComparators.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbComparators.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbComparators.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbEqual.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbEqual.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbEqual.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbEqual.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbException.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbException.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbException.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbException.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbInfinity.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbInfinity.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbInfinity.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbInfinity.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbKeys.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbKeys.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbKeys.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbKeys.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbLimits.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbLimits.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbLimits.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbLimits.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbLogger.cpp b/gpu/src/VirtualFluidsBasics/basics/utilities/UbLogger.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbLogger.cpp
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbLogger.cpp
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbLogger.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbLogger.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbLogger.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbLogger.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbMath.cpp b/gpu/src/VirtualFluidsBasics/basics/utilities/UbMath.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbMath.cpp
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbMath.cpp
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbMath.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbMath.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbMath.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbMath.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbObservable.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbObservable.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbObservable.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbObservable.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbObserver.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbObserver.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbObserver.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbObserver.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbRandom.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbRandom.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbRandom.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbRandom.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbScheduler.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbScheduler.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbScheduler.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbScheduler.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.cpp b/gpu/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.cpp
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.cpp
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbStaticPathMap.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbSystem.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbSystem.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbSystem.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbSystem.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbTiming.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbTiming.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbTiming.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbTiming.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/UbTuple.h b/gpu/src/VirtualFluidsBasics/basics/utilities/UbTuple.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/UbTuple.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/UbTuple.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/Vector3D.cpp b/gpu/src/VirtualFluidsBasics/basics/utilities/Vector3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/Vector3D.cpp
rename to gpu/src/VirtualFluidsBasics/basics/utilities/Vector3D.cpp
diff --git a/src/VirtualFluidsBasics/basics/utilities/Vector3D.h b/gpu/src/VirtualFluidsBasics/basics/utilities/Vector3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/Vector3D.h
rename to gpu/src/VirtualFluidsBasics/basics/utilities/Vector3D.h
diff --git a/src/VirtualFluidsBasics/basics/utilities/package.include b/gpu/src/VirtualFluidsBasics/basics/utilities/package.include
similarity index 100%
rename from src/VirtualFluidsBasics/basics/utilities/package.include
rename to gpu/src/VirtualFluidsBasics/basics/utilities/package.include
diff --git a/src/VirtualFluidsBasics/basics/writer/WbWriter.h b/gpu/src/VirtualFluidsBasics/basics/writer/WbWriter.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/WbWriter.h
rename to gpu/src/VirtualFluidsBasics/basics/writer/WbWriter.h
diff --git a/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.cpp b/gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.cpp
rename to gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.cpp
diff --git a/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.h b/gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.h
rename to gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlASCII.h
diff --git a/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.cpp b/gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.cpp
rename to gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.cpp
diff --git a/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.h b/gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.h
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.h
rename to gpu/src/VirtualFluidsBasics/basics/writer/WbWriterVtkXmlBinary.h
diff --git a/src/VirtualFluidsBasics/basics/writer/package.include b/gpu/src/VirtualFluidsBasics/basics/writer/package.include
similarity index 100%
rename from src/VirtualFluidsBasics/basics/writer/package.include
rename to gpu/src/VirtualFluidsBasics/basics/writer/package.include
diff --git a/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/CoordinateTransformation3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbCuboid3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbCuboid3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbCuboid3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbLine3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbLine3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbLine3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbLine3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbLine3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbLine3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbLine3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbLine3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbObject3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbObject3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbObject3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbObject3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbObject3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbObject3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbObject3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbObject3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbPoint3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbPoint3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbPoint3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbPoint3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbPoint3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbPoint3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbPoint3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbPoint3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbPolygon3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbPolygon3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbPolygon3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbSystem3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbSystem3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbSystem3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbSystem3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbSystem3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbSystem3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbSystem3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbSystem3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbTriangle3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbTriangle3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbTriangle3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/GbVector3D.cpp b/gpu/src/VirtualFluidsBasics/geometry3d/GbVector3D.cpp
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbVector3D.cpp
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbVector3D.cpp
diff --git a/src/VirtualFluidsBasics/geometry3d/GbVector3D.h b/gpu/src/VirtualFluidsBasics/geometry3d/GbVector3D.h
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/GbVector3D.h
rename to gpu/src/VirtualFluidsBasics/geometry3d/GbVector3D.h
diff --git a/src/VirtualFluidsBasics/geometry3d/package.include b/gpu/src/VirtualFluidsBasics/geometry3d/package.include
similarity index 100%
rename from src/VirtualFluidsBasics/geometry3d/package.include
rename to gpu/src/VirtualFluidsBasics/geometry3d/package.include
diff --git a/src/VirtualFluidsDefinitions.in.h b/gpu/src/VirtualFluidsDefinitions.in.h
similarity index 100%
rename from src/VirtualFluidsDefinitions.in.h
rename to gpu/src/VirtualFluidsDefinitions.in.h
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.cpp b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.cpp
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.cpp
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.h b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.h
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.h
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridProvider.h
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.h b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.h
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.h
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.h
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/package.include b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/package.include
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/package.include
diff --git a/src/VirtualFluids_GPU/DataStructureInitializer/package.include b/gpu/src/VirtualFluids_GPU/DataStructureInitializer/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/DataStructureInitializer/package.include
rename to gpu/src/VirtualFluids_GPU/DataStructureInitializer/package.include
diff --git a/src/VirtualFluids_GPU/GPU/CalcMac27.cu b/gpu/src/VirtualFluids_GPU/GPU/CalcMac27.cu
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/CalcMac27.cu
rename to gpu/src/VirtualFluids_GPU/GPU/CalcMac27.cu
diff --git a/src/VirtualFluids_GPU/GPU/CudaMemoryManager.cpp b/gpu/src/VirtualFluids_GPU/GPU/CudaMemoryManager.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/CudaMemoryManager.cpp
rename to gpu/src/VirtualFluids_GPU/GPU/CudaMemoryManager.cpp
diff --git a/src/VirtualFluids_GPU/GPU/CudaMemoryManager.h b/gpu/src/VirtualFluids_GPU/GPU/CudaMemoryManager.h
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/CudaMemoryManager.h
rename to gpu/src/VirtualFluids_GPU/GPU/CudaMemoryManager.h
diff --git a/src/VirtualFluids_GPU/GPU/Cumulant27chim.cu b/gpu/src/VirtualFluids_GPU/GPU/Cumulant27chim.cu
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/Cumulant27chim.cu
rename to gpu/src/VirtualFluids_GPU/GPU/Cumulant27chim.cu
diff --git a/src/VirtualFluids_GPU/GPU/GPU_Interface.h b/gpu/src/VirtualFluids_GPU/GPU/GPU_Interface.h
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/GPU_Interface.h
rename to gpu/src/VirtualFluids_GPU/GPU/GPU_Interface.h
diff --git a/src/VirtualFluids_GPU/GPU/GPU_Kernels.cuh b/gpu/src/VirtualFluids_GPU/GPU/GPU_Kernels.cuh
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/GPU_Kernels.cuh
rename to gpu/src/VirtualFluids_GPU/GPU/GPU_Kernels.cuh
diff --git a/src/VirtualFluids_GPU/GPU/Init27.cu b/gpu/src/VirtualFluids_GPU/GPU/Init27.cu
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/Init27.cu
rename to gpu/src/VirtualFluids_GPU/GPU/Init27.cu
diff --git a/src/VirtualFluids_GPU/GPU/LBMKernel.cu b/gpu/src/VirtualFluids_GPU/GPU/LBMKernel.cu
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/LBMKernel.cu
rename to gpu/src/VirtualFluids_GPU/GPU/LBMKernel.cu
diff --git a/src/VirtualFluids_GPU/GPU/VelocityBCs27.cu b/gpu/src/VirtualFluids_GPU/GPU/VelocityBCs27.cu
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/VelocityBCs27.cu
rename to gpu/src/VirtualFluids_GPU/GPU/VelocityBCs27.cu
diff --git a/src/VirtualFluids_GPU/GPU/devCheck.cpp b/gpu/src/VirtualFluids_GPU/GPU/devCheck.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/devCheck.cpp
rename to gpu/src/VirtualFluids_GPU/GPU/devCheck.cpp
diff --git a/src/VirtualFluids_GPU/GPU/devCheck.h b/gpu/src/VirtualFluids_GPU/GPU/devCheck.h
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/devCheck.h
rename to gpu/src/VirtualFluids_GPU/GPU/devCheck.h
diff --git a/src/VirtualFluids_GPU/GPU/package.include b/gpu/src/VirtualFluids_GPU/GPU/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/GPU/package.include
rename to gpu/src/VirtualFluids_GPU/GPU/package.include
diff --git a/src/VirtualFluids_GPU/Init/InitLattice.cpp b/gpu/src/VirtualFluids_GPU/Init/InitLattice.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/Init/InitLattice.cpp
rename to gpu/src/VirtualFluids_GPU/Init/InitLattice.cpp
diff --git a/src/VirtualFluids_GPU/Init/InitLattice.h b/gpu/src/VirtualFluids_GPU/Init/InitLattice.h
similarity index 100%
rename from src/VirtualFluids_GPU/Init/InitLattice.h
rename to gpu/src/VirtualFluids_GPU/Init/InitLattice.h
diff --git a/src/VirtualFluids_GPU/Init/package.include b/gpu/src/VirtualFluids_GPU/Init/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/Init/package.include
rename to gpu/src/VirtualFluids_GPU/Init/package.include
diff --git a/src/VirtualFluids_GPU/LBM/D3Q27.h b/gpu/src/VirtualFluids_GPU/LBM/D3Q27.h
similarity index 100%
rename from src/VirtualFluids_GPU/LBM/D3Q27.h
rename to gpu/src/VirtualFluids_GPU/LBM/D3Q27.h
diff --git a/src/VirtualFluids_GPU/LBM/LB.h b/gpu/src/VirtualFluids_GPU/LBM/LB.h
similarity index 100%
rename from src/VirtualFluids_GPU/LBM/LB.h
rename to gpu/src/VirtualFluids_GPU/LBM/LB.h
diff --git a/src/VirtualFluids_GPU/LBM/Simulation.cpp b/gpu/src/VirtualFluids_GPU/LBM/Simulation.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/LBM/Simulation.cpp
rename to gpu/src/VirtualFluids_GPU/LBM/Simulation.cpp
diff --git a/src/VirtualFluids_GPU/LBM/Simulation.h b/gpu/src/VirtualFluids_GPU/LBM/Simulation.h
similarity index 100%
rename from src/VirtualFluids_GPU/LBM/Simulation.h
rename to gpu/src/VirtualFluids_GPU/LBM/Simulation.h
diff --git a/src/VirtualFluids_GPU/LBM/package.include b/gpu/src/VirtualFluids_GPU/LBM/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/LBM/package.include
rename to gpu/src/VirtualFluids_GPU/LBM/package.include
diff --git a/src/VirtualFluids_GPU/Output/DataWriter.h b/gpu/src/VirtualFluids_GPU/Output/DataWriter.h
similarity index 100%
rename from src/VirtualFluids_GPU/Output/DataWriter.h
rename to gpu/src/VirtualFluids_GPU/Output/DataWriter.h
diff --git a/src/VirtualFluids_GPU/Output/FileWriter.cpp b/gpu/src/VirtualFluids_GPU/Output/FileWriter.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/Output/FileWriter.cpp
rename to gpu/src/VirtualFluids_GPU/Output/FileWriter.cpp
diff --git a/src/VirtualFluids_GPU/Output/FileWriter.h b/gpu/src/VirtualFluids_GPU/Output/FileWriter.h
similarity index 100%
rename from src/VirtualFluids_GPU/Output/FileWriter.h
rename to gpu/src/VirtualFluids_GPU/Output/FileWriter.h
diff --git a/src/VirtualFluids_GPU/Output/LogWriter.hpp b/gpu/src/VirtualFluids_GPU/Output/LogWriter.hpp
similarity index 100%
rename from src/VirtualFluids_GPU/Output/LogWriter.hpp
rename to gpu/src/VirtualFluids_GPU/Output/LogWriter.hpp
diff --git a/src/VirtualFluids_GPU/Output/package.include b/gpu/src/VirtualFluids_GPU/Output/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/Output/package.include
rename to gpu/src/VirtualFluids_GPU/Output/package.include
diff --git a/src/VirtualFluids_GPU/Parameter/Parameter.cpp b/gpu/src/VirtualFluids_GPU/Parameter/Parameter.cpp
similarity index 100%
rename from src/VirtualFluids_GPU/Parameter/Parameter.cpp
rename to gpu/src/VirtualFluids_GPU/Parameter/Parameter.cpp
diff --git a/src/VirtualFluids_GPU/Parameter/Parameter.h b/gpu/src/VirtualFluids_GPU/Parameter/Parameter.h
similarity index 100%
rename from src/VirtualFluids_GPU/Parameter/Parameter.h
rename to gpu/src/VirtualFluids_GPU/Parameter/Parameter.h
diff --git a/src/VirtualFluids_GPU/Parameter/package.include b/gpu/src/VirtualFluids_GPU/Parameter/package.include
similarity index 100%
rename from src/VirtualFluids_GPU/Parameter/package.include
rename to gpu/src/VirtualFluids_GPU/Parameter/package.include
diff --git a/targets/apps/LidDrivenCavity/3rdPartyLinking.cmake b/gpu/targets/apps/LidDrivenCavity/3rdPartyLinking.cmake
similarity index 100%
rename from targets/apps/LidDrivenCavity/3rdPartyLinking.cmake
rename to gpu/targets/apps/LidDrivenCavity/3rdPartyLinking.cmake
diff --git a/targets/apps/LidDrivenCavity/CMakeLists.txt b/gpu/targets/apps/LidDrivenCavity/CMakeLists.txt
similarity index 100%
rename from targets/apps/LidDrivenCavity/CMakeLists.txt
rename to gpu/targets/apps/LidDrivenCavity/CMakeLists.txt
diff --git a/targets/apps/LidDrivenCavity/CMakePackage.cmake b/gpu/targets/apps/LidDrivenCavity/CMakePackage.cmake
similarity index 100%
rename from targets/apps/LidDrivenCavity/CMakePackage.cmake
rename to gpu/targets/apps/LidDrivenCavity/CMakePackage.cmake
diff --git a/targets/apps/LidDrivenCavity/LidDrivenCavity.cpp b/gpu/targets/apps/LidDrivenCavity/LidDrivenCavity.cpp
similarity index 100%
rename from targets/apps/LidDrivenCavity/LidDrivenCavity.cpp
rename to gpu/targets/apps/LidDrivenCavity/LidDrivenCavity.cpp
diff --git a/targets/apps/LidDrivenCavity/package.include b/gpu/targets/apps/LidDrivenCavity/package.include
similarity index 100%
rename from targets/apps/LidDrivenCavity/package.include
rename to gpu/targets/apps/LidDrivenCavity/package.include
diff --git a/targets/libs/Core/3rdPartyLinking.cmake b/gpu/targets/libs/Core/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/Core/3rdPartyLinking.cmake
rename to gpu/targets/libs/Core/3rdPartyLinking.cmake
diff --git a/targets/libs/Core/CMakeLists.txt b/gpu/targets/libs/Core/CMakeLists.txt
similarity index 100%
rename from targets/libs/Core/CMakeLists.txt
rename to gpu/targets/libs/Core/CMakeLists.txt
diff --git a/targets/libs/Core/CMakePackage.cmake b/gpu/targets/libs/Core/CMakePackage.cmake
similarity index 100%
rename from targets/libs/Core/CMakePackage.cmake
rename to gpu/targets/libs/Core/CMakePackage.cmake
diff --git a/targets/libs/Core/buildInfo.cmake b/gpu/targets/libs/Core/buildInfo.cmake
similarity index 100%
rename from targets/libs/Core/buildInfo.cmake
rename to gpu/targets/libs/Core/buildInfo.cmake
diff --git a/targets/libs/Core/buildInfoInput/buildInfo.in.cpp b/gpu/targets/libs/Core/buildInfoInput/buildInfo.in.cpp
similarity index 100%
rename from targets/libs/Core/buildInfoInput/buildInfo.in.cpp
rename to gpu/targets/libs/Core/buildInfoInput/buildInfo.in.cpp
diff --git a/targets/libs/Core/package.include b/gpu/targets/libs/Core/package.include
similarity index 100%
rename from targets/libs/Core/package.include
rename to gpu/targets/libs/Core/package.include
diff --git a/targets/libs/GksGpu/3rdPartyLinking.cmake b/gpu/targets/libs/GksGpu/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/GksGpu/3rdPartyLinking.cmake
rename to gpu/targets/libs/GksGpu/3rdPartyLinking.cmake
diff --git a/targets/libs/GksGpu/CMakeLists.txt b/gpu/targets/libs/GksGpu/CMakeLists.txt
similarity index 100%
rename from targets/libs/GksGpu/CMakeLists.txt
rename to gpu/targets/libs/GksGpu/CMakeLists.txt
diff --git a/targets/libs/GksGpu/CMakePackage.cmake b/gpu/targets/libs/GksGpu/CMakePackage.cmake
similarity index 100%
rename from targets/libs/GksGpu/CMakePackage.cmake
rename to gpu/targets/libs/GksGpu/CMakePackage.cmake
diff --git a/targets/libs/GksMeshAdapter/3rdPartyLinking.cmake b/gpu/targets/libs/GksMeshAdapter/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/GksMeshAdapter/3rdPartyLinking.cmake
rename to gpu/targets/libs/GksMeshAdapter/3rdPartyLinking.cmake
diff --git a/targets/libs/GksMeshAdapter/CMakeLists.txt b/gpu/targets/libs/GksMeshAdapter/CMakeLists.txt
similarity index 100%
rename from targets/libs/GksMeshAdapter/CMakeLists.txt
rename to gpu/targets/libs/GksMeshAdapter/CMakeLists.txt
diff --git a/targets/libs/GksMeshAdapter/CMakePackage.cmake b/gpu/targets/libs/GksMeshAdapter/CMakePackage.cmake
similarity index 100%
rename from targets/libs/GksMeshAdapter/CMakePackage.cmake
rename to gpu/targets/libs/GksMeshAdapter/CMakePackage.cmake
diff --git a/targets/libs/GridGenerator/3rdPartyLinking.cmake b/gpu/targets/libs/GridGenerator/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/GridGenerator/3rdPartyLinking.cmake
rename to gpu/targets/libs/GridGenerator/3rdPartyLinking.cmake
diff --git a/targets/libs/GridGenerator/CMakeLists.txt b/gpu/targets/libs/GridGenerator/CMakeLists.txt
similarity index 100%
rename from targets/libs/GridGenerator/CMakeLists.txt
rename to gpu/targets/libs/GridGenerator/CMakeLists.txt
diff --git a/targets/libs/GridGenerator/CMakePackage.cmake b/gpu/targets/libs/GridGenerator/CMakePackage.cmake
similarity index 100%
rename from targets/libs/GridGenerator/CMakePackage.cmake
rename to gpu/targets/libs/GridGenerator/CMakePackage.cmake
diff --git a/targets/libs/VirtualFluidsBasics/3rdPartyLinking.cmake b/gpu/targets/libs/VirtualFluidsBasics/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/VirtualFluidsBasics/3rdPartyLinking.cmake
rename to gpu/targets/libs/VirtualFluidsBasics/3rdPartyLinking.cmake
diff --git a/targets/libs/VirtualFluidsBasics/CMakeLists.txt b/gpu/targets/libs/VirtualFluidsBasics/CMakeLists.txt
similarity index 100%
rename from targets/libs/VirtualFluidsBasics/CMakeLists.txt
rename to gpu/targets/libs/VirtualFluidsBasics/CMakeLists.txt
diff --git a/targets/libs/VirtualFluidsBasics/CMakePackage.cmake b/gpu/targets/libs/VirtualFluidsBasics/CMakePackage.cmake
similarity index 100%
rename from targets/libs/VirtualFluidsBasics/CMakePackage.cmake
rename to gpu/targets/libs/VirtualFluidsBasics/CMakePackage.cmake
diff --git a/targets/libs/VirtualFluids_GPU/3rdPartyLinking.cmake b/gpu/targets/libs/VirtualFluids_GPU/3rdPartyLinking.cmake
similarity index 100%
rename from targets/libs/VirtualFluids_GPU/3rdPartyLinking.cmake
rename to gpu/targets/libs/VirtualFluids_GPU/3rdPartyLinking.cmake
diff --git a/targets/libs/VirtualFluids_GPU/CMakeLists.txt b/gpu/targets/libs/VirtualFluids_GPU/CMakeLists.txt
similarity index 100%
rename from targets/libs/VirtualFluids_GPU/CMakeLists.txt
rename to gpu/targets/libs/VirtualFluids_GPU/CMakeLists.txt
diff --git a/targets/libs/VirtualFluids_GPU/CMakePackage.cmake b/gpu/targets/libs/VirtualFluids_GPU/CMakePackage.cmake
similarity index 100%
rename from targets/libs/VirtualFluids_GPU/CMakePackage.cmake
rename to gpu/targets/libs/VirtualFluids_GPU/CMakePackage.cmake