diff --git a/CMake/cmake_config_files/MOLLOK.config.cmake b/CMake/cmake_config_files/MOLLOK.config.cmake index 4bb199d69dd2f88f786752374d244c643ca51d8a..2407cda6287cd0e171453d1559ab6585b0a09a33 100644 --- a/CMake/cmake_config_files/MOLLOK.config.cmake +++ b/CMake/cmake_config_files/MOLLOK.config.cmake @@ -5,8 +5,6 @@ ################################################################################# #SET TO CORRECT PATH: -SET(BOOST_ROOT "D:/libraries/boost_1_74_0" CACHE PATH "BOOST_ROOT") -SET(BOOST_LIBRARYDIR "D:/libraries/boost_1_74_0/stageMSVC64VS2019/lib" CACHE PATH "BOOST_LIBRARYDIR") SET(CMAKE_CUDA_ARCHITECTURES 52) SET(PATH_NUMERICAL_TESTS "D:/out/numericalTests/") diff --git a/src/gpu/VirtualFluids_GPU/Calculation/UpdateGrid27.cpp b/src/gpu/VirtualFluids_GPU/Calculation/UpdateGrid27.cpp index 45323203a1d540ddd630c9e7751a4340329e0da9..5add06165da4d213f8a1d483435c3fc1bd7bbef6 100644 --- a/src/gpu/VirtualFluids_GPU/Calculation/UpdateGrid27.cpp +++ b/src/gpu/VirtualFluids_GPU/Calculation/UpdateGrid27.cpp @@ -336,13 +336,21 @@ void postCollisionBC(Parameter* para, int level, unsigned int t) // para->getParD(level)->size_Mat_SP, para->getParD(level)->evenOrOdd); //getLastCudaError("QDevComp27 (Geom) execution failed"); - QVelDevComp27(para->getParD(level)->numberofthreads, para->getParD(level)->nx, para->getParD(level)->ny, - para->getParD(level)->QGeom.Vx, para->getParD(level)->QGeom.Vy, para->getParD(level)->QGeom.Vz, - para->getParD(level)->d0SP.f[0], para->getParD(level)->QGeom.k, para->getParD(level)->QGeom.q27[0], - para->getParD(level)->QGeom.kQ, para->getParD(level)->QGeom.kQ, para->getParD(level)->omega, - para->getParD(level)->neighborX_SP, para->getParD(level)->neighborY_SP, para->getParD(level)->neighborZ_SP, - para->getParD(level)->size_Mat_SP, para->getParD(level)->evenOrOdd); - getLastCudaError("QVelDevComp27 execution failed"); + //QVelDevComp27(para->getParD(level)->numberofthreads, para->getParD(level)->nx, para->getParD(level)->ny, + // para->getParD(level)->QGeom.Vx, para->getParD(level)->QGeom.Vy, para->getParD(level)->QGeom.Vz, + // para->getParD(level)->d0SP.f[0], para->getParD(level)->QGeom.k, para->getParD(level)->QGeom.q27[0], + // para->getParD(level)->QGeom.kQ, para->getParD(level)->QGeom.kQ, para->getParD(level)->omega, + // para->getParD(level)->neighborX_SP, para->getParD(level)->neighborY_SP, para->getParD(level)->neighborZ_SP, + // para->getParD(level)->size_Mat_SP, para->getParD(level)->evenOrOdd); + //getLastCudaError("QVelDevComp27 execution failed"); + + QVelDevCompZeroPress27( para->getParD(0)->numberofthreads, para->getParD(0)->nx, para->getParD(0)->ny, + para->getParD(0)->QGeom.Vx, para->getParD(0)->QGeom.Vy, para->getParD(0)->QGeom.Vz, + para->getParD(0)->d0SP.f[0], para->getParD(0)->QGeom.k, para->getParD(0)->QGeom.q27[0], + para->getParD(0)->QGeom.kQ, para->getParD(0)->QGeom.kQ, para->getParD(0)->omega, + para->getParD(0)->neighborX_SP, para->getParD(0)->neighborY_SP, para->getParD(0)->neighborZ_SP, + para->getParD(0)->size_Mat_SP, para->getParD(0)->evenOrOdd); + getLastCudaError("QVelDevCompZeroPress27 execution failed"); //QDev3rdMomentsComp27( para->getParD(level)->numberofthreads, para->getParD(level)->nx, para->getParD(level)->ny, // para->getParD(level)->d0SP.f[0], para->getParD(level)->QGeom.k, para->getParD(level)->QGeom.q27[0], diff --git a/src/gpu/VirtualFluids_GPU/GPU/LBMKernel.cu b/src/gpu/VirtualFluids_GPU/GPU/LBMKernel.cu index 41bde987cb1b5f517c6303226966bfd5909702a2..a203cca15bfd0fccac53d1d86555a023063ea86a 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/LBMKernel.cu +++ b/src/gpu/VirtualFluids_GPU/GPU/LBMKernel.cu @@ -30,7 +30,7 @@ extern "C" void KernelCas27( unsigned int grid_nx, dim3 threads ( grid_nx, 1, 1 ); dim3 grid ( grid_ny, grid_nz ); // Gitter fuer Kollision und Propagation - LB_Kernel_Casc27<< < grid, threads >>>( s9, + LB_Kernel_Casc27<<< grid, threads >>>( s9, bcMatD, neighborX, neighborY, @@ -3324,21 +3324,21 @@ extern "C" void QVelDevCompZeroPress27( unsigned int numberOfThreads, unsigned int size_Mat, bool evenOrOdd) { - int Grid = kArray / numberOfThreads; - //int Grid = (kQ / numberOfThreads)+1; - //int Grid1, Grid2; - //if (Grid>512) - //{ - // Grid1 = 512; - // Grid2 = (Grid/Grid1)+1; - //} - //else - //{ - // Grid1 = 1; - // Grid2 = Grid; - //} - //dim3 gridQ(Grid1, Grid2); - dim3 gridQ(Grid, 1, 1); + //int Grid = kArray / numberOfThreads; + int Grid = (sizeQ / numberOfThreads)+1; + int Grid1, Grid2; + if (Grid>512) + { + Grid1 = 512; + Grid2 = (Grid/Grid1)+1; + } + else + { + Grid1 = 1; + Grid2 = Grid; + } + dim3 gridQ(Grid1, Grid2); + //dim3 gridQ(Grid, 1, 1); dim3 threads(numberOfThreads, 1, 1 ); QVelDeviceCompZeroPress27<<< gridQ, threads >>> ( nx, @@ -3357,7 +3357,7 @@ extern "C" void QVelDevCompZeroPress27( unsigned int numberOfThreads, neighborZ, size_Mat, evenOrOdd); - getLastCudaError("QVelDeviceComp27 execution failed"); + getLastCudaError("QVelDeviceCompZeroPress27 execution failed"); } ////////////////////////////////////////////////////////////////////////// extern "C" void QVelDevIncompHighNu27(unsigned int numberOfThreads,