diff --git a/apps/showcases/Lagoon/Lagoon.cpp b/apps/showcases/Lagoon/Lagoon.cpp index f67f42802856335e9e1e7b8325615f3df6192cb9..6cb1987e833036d00767d657826c92849189b49f 100644 --- a/apps/showcases/Lagoon/Lagoon.cpp +++ b/apps/showcases/Lagoon/Lagoon.cpp @@ -195,7 +195,7 @@ inline void CustomRefinementSelection<DistanceObject>::operator()( blockforest:: allReduceInplace( refine, mpi::LOGICAL_OR ); - const real_t t = 0.4; + const real_t t = real_c(0.4); const AABB refinement_box(-t,-t,-t,t,2*t,t); for( uint_t i = 0; i != blocks.size(); ++i ) @@ -297,7 +297,7 @@ int main(int argc, char **argv) { if(weakScaling) { - auto blocks = math::getFactors3D( uint_c( MPIManager::instance()->numProcesses() ) ); + auto blocks = math::getFactors3D( 4 ); resolution[0] = domainSize[0] / real_c(blocks[0] * blockSize[0]); resolution[1] = domainSize[1] / real_c(blocks[1] * blockSize[1]); resolution[2] = domainSize[2] / real_c(blocks[2] * blockSize[2]); @@ -524,7 +524,7 @@ int main(int argc, char **argv) { Vector3<real_t> cellCenter = blocks->getCellCenter(globalCell, level); cellCenter[0] += offset; // Adaption due to sponge layer - if(cellCenter[0] > spongeZoneStart) + if(cellCenter[0] > real_c(spongeZoneStart)) { omegaField->get(x, y, z) = omega - omega_diff * ((real_c(cellCenter[0]) - real_c(spongeZoneStart)) / spongeZoneLength); } @@ -634,10 +634,9 @@ int main(int argc, char **argv) { ////////////////////////////////// WALBERLA_LOG_INFO_ON_ROOT("Start SWEEPS AND TIMELOOP") - auto defaultStream = gpu::StreamRAII::newStream(); - // create time loop #if defined(WALBERLA_BUILD_WITH_GPU_SUPPORT) + auto defaultStream = gpu::StreamRAII::newStream(); SweepTimeloop timeloop(blocks->getBlockStorage(), timesteps); std::shared_ptr<lbm_generated::BasicRecursiveTimeStepGPU<GPUPdfField_T, SweepCollection_T, BoundaryCollection_T>> LBMRefinement; @@ -790,7 +789,7 @@ int main(int argc, char **argv) { simTimer.end(); WALBERLA_LOG_INFO_ON_ROOT("Simulation finished") - real_t time = simTimer.max(); + double time = simTimer.max(); WALBERLA_MPI_SECTION() { walberla::mpi::reduceInplace(time, walberla::mpi::MAX); } performance.logResultOnRoot(timesteps, time); diff --git a/apps/showcases/Lagoon/LagoonParameterBig.prm b/apps/showcases/Lagoon/LagoonParameterBig.prm index 5ed8165d5ec9257daddc465445d3cd6e48e66fda..dc8979e84afefd7977a4f00dea79eada94d365a5 100644 --- a/apps/showcases/Lagoon/LagoonParameterBig.prm +++ b/apps/showcases/Lagoon/LagoonParameterBig.prm @@ -7,7 +7,7 @@ Parameters referenceDensity 1.182; simulationTime 0.3; timeStepsForBenchmarking 1; // if set to zero the timesteps will be calculated from the simulationTime - coarseMeshSize 0.256; // 0.16 0.032 0.512; + coarseMeshSize 0.009; // 0.16 0.032 0.512; relaxationRateOutlet 1.9; SpongeZoneStart 35; @@ -26,12 +26,12 @@ Parameters DomainSetup { meshFile Lagoon.obj; - cellsPerBlock < 8, 8, 8 >; + cellsPerBlock < 64, 64, 64 >; periodic < 0, 1, 1 >; domainSize < 14, 10, 10 >; - refinementLevels 10; + refinementLevels 8; numberProcesses 512; weakScaling false; diff --git a/apps/showcases/Lagoon/LagoonParameterGPUUniformStrongScaling.prm b/apps/showcases/Lagoon/LagoonParameterGPUUniformStrongScaling.prm index 7058bf2b985058fd73584896726643985881e9a5..06ff10ac8715458f25128cc348dfa735b8f59b61 100644 --- a/apps/showcases/Lagoon/LagoonParameterGPUUniformStrongScaling.prm +++ b/apps/showcases/Lagoon/LagoonParameterGPUUniformStrongScaling.prm @@ -7,7 +7,7 @@ Parameters referenceDensity 1.182; simulationTime 0.3; timeStepsForBenchmarking 10; // if set to zero the timesteps will be calculated from the simulationTime - coarseMeshSize 0.005859375; // 0.16 0.032 0.512; + coarseMeshSize 0.0029296875; // 0.16 0.032 0.512; relaxationRateOutlet 1.9; SpongeZoneStart 35; @@ -26,10 +26,10 @@ Parameters DomainSetup { meshFile Lagoon.obj; - cellsPerBlock < 128, 64, 64 >; + cellsPerBlock < 256, 256, 256 >; periodic < 0, 1, 1 >; - domainSize < 12, 3, 3 >; + domainSize < 12, 6, 6 >; refinementLevels 0; numberProcesses 1; diff --git a/apps/showcases/Lagoon/LagoonParameterGPUUniformWeakScaling.prm b/apps/showcases/Lagoon/LagoonParameterGPUUniformWeakScaling.prm index 558fdf4782c49354d221b4cb4f5a97a87543d7c1..3be295af0c726c79bc6c609bbcf77a5e5c2059bd 100644 --- a/apps/showcases/Lagoon/LagoonParameterGPUUniformWeakScaling.prm +++ b/apps/showcases/Lagoon/LagoonParameterGPUUniformWeakScaling.prm @@ -32,7 +32,7 @@ DomainSetup domainSize < 3, 2, 2 >; refinementLevels 0; - numberProcesses 1; + numberProcesses 4; weakScaling true; } diff --git a/apps/showcases/S2A/S2A.cpp b/apps/showcases/S2A/S2A.cpp index 11ecc0b81e6e5c75d2e4d0a18ebe31ccbbed3066..1ed6885c05d8d1890c09e78f958d5866274321b4 100644 --- a/apps/showcases/S2A/S2A.cpp +++ b/apps/showcases/S2A/S2A.cpp @@ -548,10 +548,9 @@ int main(int argc, char **argv) { ////////////////////////////////// WALBERLA_LOG_INFO_ON_ROOT("Start SWEEPS AND TIMELOOP") - auto defaultStream = gpu::StreamRAII::newStream(); - // create time loop #if defined(WALBERLA_BUILD_WITH_GPU_SUPPORT) + auto defaultStream = gpu::StreamRAII::newStream(); SweepTimeloop timeloop(blocks->getBlockStorage(), timesteps); std::shared_ptr<lbm_generated::BasicRecursiveTimeStepGPU<GPUPdfField_T, SweepCollection_T, BoundaryCollection_T>> LBMRefinement;