diff --git a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp index 9dc20cceb489e35bc3b986885372cb52d19fb04a..0debc795de1f51e6289d05e73d241bca86a89602 100644 --- a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp +++ b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp @@ -921,7 +921,7 @@ void GridGenerator::allocArrays_OffsetScale() builder->getOffsetFC(para->getParH(level)->offFC.xOffFC, para->getParH(level)->offFC.yOffFC, para->getParH(level)->offFC.zOffFC, level); builder->getGridInterfaceIndices(para->getParH(level)->intCF.ICellCFC, para->getParH(level)->intCF.ICellCFF, para->getParH(level)->intFC.ICellFCC, para->getParH(level)->intFC.ICellFCF, level); - if (para->getUseStreams()) { + if (para->getUseStreams() || para->getNumprocs() > 1) { // split fine-to-coarse indices into border and bulk para->getParH(level)->intFCBorder.ICellFCC = para->getParH(level)->intFC.ICellFCC; para->getParH(level)->intFCBorder.ICellFCF = para->getParH(level)->intFC.ICellFCF; diff --git a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp index d50129fbb17324decfb8fc5b2136e1d8cb434774..4a7556499c5ce953e72c576f8e89cfff0b432916 100644 --- a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp +++ b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp @@ -139,10 +139,9 @@ void Simulation::init(SPtr<Parameter> para, SPtr<GridProvider> gridProvider, std cudaManager->setMemsizeGPU(0, true); ////////////////////////////////////////////////////////////////////////// gridProvider->allocArrays_CoordNeighborGeo(); + gridProvider->allocArrays_OffsetScale(); gridProvider->allocArrays_BoundaryValues(); gridProvider->allocArrays_BoundaryQs(); - gridProvider->allocArrays_OffsetScale(); - ////////////////////////////////////////////////////////////////////////// //Kernel init