diff --git a/src/gpu/communication/NonUniformGPUScheme.h b/src/gpu/communication/NonUniformGPUScheme.h index 28a8fd0d0b7534e30957e938389f57d28d7ebeef..4b9576434d52dc8726daa35ab91a32fd8984a780 100644 --- a/src/gpu/communication/NonUniformGPUScheme.h +++ b/src/gpu/communication/NonUniformGPUScheme.h @@ -134,6 +134,12 @@ NonUniformGPUScheme< Stencil >::NonUniformGPUScheme(const weak_ptr< StructuredBl : blockForest_(bf), sendFromGPU_(sendDirectlyFromGPU), baseTag_(tag), parallelSectionManager_(-1), requiredBlockSelectors_(Set< SUID >::emptySet()), incompatibleBlockSelectors_(Set< SUID >::emptySet()) { + WALBERLA_MPI_SECTION() + { +#if !(defined(MPIX_CUDA_AWARE_SUPPORT) && MPIX_CUDA_AWARE_SUPPORT) + WALBERLA_CHECK(!sendDirectlyFromGPU) +#endif + } init(); } @@ -146,6 +152,12 @@ NonUniformGPUScheme< Stencil >::NonUniformGPUScheme(const weak_ptr< StructuredBl incompatibleBlockSelectors_(incompatibleBlockSelectors), sendFromGPU_(sendDirectlyFromGPU), baseTag_(tag), parallelSectionManager_(-1) { + WALBERLA_MPI_SECTION() + { +#if !(defined(MPIX_CUDA_AWARE_SUPPORT) && MPIX_CUDA_AWARE_SUPPORT) + WALBERLA_CHECK(!sendDirectlyFromGPU) +#endif + } init(); } diff --git a/src/gpu/communication/UniformGPUScheme.impl.h b/src/gpu/communication/UniformGPUScheme.impl.h index a12017cf77eca51af31bd967df2af914ae7f28a1..28033d1464f76709178042a5c87a27485ceacb44 100644 --- a/src/gpu/communication/UniformGPUScheme.impl.h +++ b/src/gpu/communication/UniformGPUScheme.impl.h @@ -42,7 +42,14 @@ namespace communication { parallelSectionManager_( -1 ), requiredBlockSelectors_( Set<SUID>::emptySet() ), incompatibleBlockSelectors_( Set<SUID>::emptySet() ) - {} + { + WALBERLA_MPI_SECTION() + { +#if !(defined(MPIX_CUDA_AWARE_SUPPORT) && MPIX_CUDA_AWARE_SUPPORT) + WALBERLA_CHECK(!sendDirectlyFromGPU) +#endif + } + } template<typename Stencil> UniformGPUScheme<Stencil>::UniformGPUScheme( weak_ptr <StructuredBlockForest> bf, @@ -61,7 +68,14 @@ namespace communication { parallelSectionManager_( -1 ), requiredBlockSelectors_( requiredBlockSelectors ), incompatibleBlockSelectors_( incompatibleBlockSelectors ) - {} + { + WALBERLA_MPI_SECTION() + { +#if !(defined(MPIX_CUDA_AWARE_SUPPORT) && MPIX_CUDA_AWARE_SUPPORT) + WALBERLA_CHECK(!sendDirectlyFromGPU) +#endif + } + } template<typename Stencil>