From 743d2d052a7ec5fe70d1bb0f0ad58cad0bb4a254 Mon Sep 17 00:00:00 2001 From: Berenger Bramas <Berenger.Bramas@inria.fr> Date: Mon, 31 Aug 2015 13:52:37 +0200 Subject: [PATCH] use only one arbiter --- .../Core/FGroupTaskStarpuAlgorithm.hpp | 18 ++++++------------ .../Core/FGroupTaskStarpuMpiAlgorithm.hpp | 18 ++++++------------ 2 files changed, 12 insertions(+), 24 deletions(-) diff --git a/Src/GroupTree/Core/FGroupTaskStarpuAlgorithm.hpp b/Src/GroupTree/Core/FGroupTaskStarpuAlgorithm.hpp index 452dd7f8f..07be69323 100644 --- a/Src/GroupTree/Core/FGroupTaskStarpuAlgorithm.hpp +++ b/Src/GroupTree/Core/FGroupTaskStarpuAlgorithm.hpp @@ -113,9 +113,7 @@ protected: FStarPUPtrInterface* wrapperptr; #ifdef STARPU_SUPPORT_ARBITER - starpu_arbiter_t arbiterPole; - starpu_arbiter_t arbiterLocal; - starpu_arbiter_t arbiterParticles; + starpu_arbiter_t arbiterGlobal; #endif public: FGroupTaskStarPUAlgorithm(OctreeClass*const inTree, KernelClass* inKernels) @@ -174,9 +172,7 @@ public: cellHandles = new std::vector<CellHandles>[tree->getHeight()]; #ifdef STARPU_SUPPORT_ARBITER - arbiterPole = starpu_arbiter_create(); - arbiterLocal = starpu_arbiter_create(); - arbiterParticles = starpu_arbiter_create(); + arbiterGlobal = starpu_arbiter_create(); #endif initCodelet(); @@ -230,9 +226,7 @@ public: #ifdef STARPU_SUPPORT_ARBITER - starpu_arbiter_destroy(arbiterPole); - starpu_arbiter_destroy(arbiterLocal); - starpu_arbiter_destroy(arbiterParticles); + starpu_arbiter_destroy(arbiterGlobal); #endif starpu_shutdown(); @@ -524,8 +518,8 @@ protected: (uintptr_t)currentCells->getRawLocalBuffer(), currentCells->getLocalBufferSizeInByte()); cellHandles[idxLevel][idxGroup].intervalSize = int(currentCells->getNumberOfCellsInBlock()); #ifdef STARPU_SUPPORT_ARBITER - starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].up, arbiterPole); - starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].down, arbiterLocal); + starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].up, arbiterGlobal); + starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].down, arbiterGlobal); #endif } } @@ -539,7 +533,7 @@ protected: (uintptr_t)containers->getRawAttributesBuffer(), containers->getAttributesBufferSizeInByte()); particleHandles[idxGroup].intervalSize = int(containers->getNumberOfLeavesInBlock()); #ifdef STARPU_SUPPORT_ARBITER - starpu_data_assign_arbiter(particleHandles[idxGroup].down, arbiterParticles); + starpu_data_assign_arbiter(particleHandles[idxGroup].down, arbiterGlobal); #endif } } diff --git a/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp b/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp index f463b849d..d79e6b73a 100644 --- a/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp +++ b/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp @@ -130,9 +130,7 @@ protected: FStarPUPtrInterface* wrapperptr; #ifdef STARPU_SUPPORT_ARBITER - starpu_arbiter_t arbiterPole; - starpu_arbiter_t arbiterLocal; - starpu_arbiter_t arbiterParticles; + starpu_arbiter_t arbiterGlobal; #endif public: FGroupTaskStarPUMpiAlgorithm(const FMpi::FComm& inComm, OctreeClass*const inTree, KernelClass* inKernels) @@ -192,9 +190,7 @@ public: cellHandles = new std::vector<CellHandles>[tree->getHeight()]; #ifdef STARPU_SUPPORT_ARBITER - arbiterPole = starpu_arbiter_create(); - arbiterLocal = starpu_arbiter_create(); - arbiterParticles = starpu_arbiter_create(); + arbiterGlobal = starpu_arbiter_create(); #endif initCodelet(); @@ -249,9 +245,7 @@ public: #ifdef STARPU_SUPPORT_ARBITER - starpu_arbiter_destroy(arbiterPole); - starpu_arbiter_destroy(arbiterLocal); - starpu_arbiter_destroy(arbiterParticles); + starpu_arbiter_destroy(arbiterGlobal); #endif starpu_mpi_shutdown(); starpu_shutdown(); @@ -1108,8 +1102,8 @@ protected: (uintptr_t)currentCells->getRawLocalBuffer(), currentCells->getLocalBufferSizeInByte()); cellHandles[idxLevel][idxGroup].intervalSize = int(currentCells->getEndingIndex() - currentCells->getStartingIndex()); #ifdef STARPU_SUPPORT_ARBITER - starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].up, arbiterPole); - starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].down, arbiterLocal); + starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].up, arbiterGlobal); + starpu_data_assign_arbiter(cellHandles[idxLevel][idxGroup].down, arbiterGlobal); #endif } } @@ -1123,7 +1117,7 @@ protected: (uintptr_t)containers->getRawAttributesBuffer(), containers->getAttributesBufferSizeInByte()); particleHandles[idxGroup].intervalSize = int(containers->getEndingIndex() - containers->getStartingIndex()); #ifdef STARPU_SUPPORT_ARBITER - starpu_data_assign_arbiter(particleHandles[idxGroup].down, arbiterParticles); + starpu_data_assign_arbiter(particleHandles[idxGroup].down, arbiterGlobal); #endif } } -- GitLab