From 4d7c5d6654f1658704b8cca41610cff5caa5e818 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Oberhuber?= <oberhuber.tomas@gmail.com> Date: Mon, 27 Mar 2017 09:58:18 +0200 Subject: [PATCH] Restored CUDA grid traverser. --- .../Meshes/GridDetails/GridTraverser_impl.h | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/TNL/Meshes/GridDetails/GridTraverser_impl.h b/src/TNL/Meshes/GridDetails/GridTraverser_impl.h index 3cedde53c4..f013c25f7a 100644 --- a/src/TNL/Meshes/GridDetails/GridTraverser_impl.h +++ b/src/TNL/Meshes/GridDetails/GridTraverser_impl.h @@ -312,7 +312,7 @@ GridTraverser2D( coordinates.x() = begin.x() + ( gridXIdx * Devices::Cuda::getMaxGridSize() + blockIdx.x ) * blockDim.x + threadIdx.x; coordinates.y() = begin.y() + ( gridYIdx * Devices::Cuda::getMaxGridSize() + blockIdx.y ) * blockDim.y + threadIdx.y; - if( ( !processOnlyBoundaryEntities && coordinates <= end ) || + /*if( ( !processOnlyBoundaryEntities && coordinates <= end ) || ( processOnlyBoundaryEntities && ( coordinates.x() == begin.x() || coordinates.y() == begin.y() || coordinates.x() == end.x() || coordinates.y() == end.y() ) ) ) @@ -320,7 +320,21 @@ GridTraverser2D( GridEntity entity( *grid, coordinates, gridEntityParameters... ); entity.refresh(); EntitiesProcessor::processEntity( entity.getMesh(), *userData, entity ); + }*/ + + if( coordinates <= end ) + { + GridEntity entity( *grid, coordinates, gridEntityParameters... ); + entity.refresh(); + if( ! processOnlyBoundaryEntities || entity.isBoundaryEntity() ) + { + EntitiesProcessor::processEntity + ( *grid, + *userData, + entity ); + } } + } #endif @@ -520,7 +534,7 @@ GridTraverser3D( coordinates.z() = begin.z() + ( gridZIdx * Devices::Cuda::getMaxGridSize() + blockIdx.z ) * blockDim.z + threadIdx.z; - if( ( !processOnlyBoundaryEntities && coordinates <= end ) || + /*if( ( !processOnlyBoundaryEntities && coordinates <= end ) || ( processOnlyBoundaryEntities && ( coordinates.x() == begin.x() || coordinates.y() == begin.y() || coordinates.z() == begin.z() || coordinates.x() == end.x() || coordinates.y() == end.y() || coordinates.z() == end.z() ) ) ) @@ -528,10 +542,10 @@ GridTraverser3D( GridEntity entity( *grid, coordinates, gridEntityParameters... ); entity.refresh(); EntitiesProcessor::processEntity( entity.getMesh(), *userData, entity ); - } + }*/ - /*if( coordinates <= end ) + if( coordinates <= end ) { GridEntity entity( *grid, coordinates, gridEntityParameters... ); entity.refresh(); @@ -542,7 +556,7 @@ GridTraverser3D( *userData, entity ); } - }*/ + } } #endif -- GitLab