diff --git a/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp b/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp index 0840040c0b3a9971b9a8356eaa0bf2249a425606..da40ff89e625e90a5d8b0fdd3e06f0cfbb38f195 100644 --- a/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp +++ b/Src/GroupTree/Core/FGroupTaskStarpuMpiAlgorithm.hpp @@ -1402,9 +1402,12 @@ protected: for(int idxHandle = 0 ; idxHandle < int(remoteCellGroups[idxLevel].size()) ; ++idxHandle){ if(remoteCellGroups[idxLevel][idxHandle].ptrSymb){ starpu_data_unregister(remoteCellGroups[idxLevel][idxHandle].handleSymb); - starpu_data_unregister(remoteCellGroups[idxLevel][idxHandle].handleUp); FAlignedMemory::DeallocBytes(remoteCellGroups[idxLevel][idxHandle].ptrSymb); - FAlignedMemory::DeallocBytes(remoteCellGroups[idxLevel][idxHandle].ptrUp); + + if(remoteCellGroups[idxLevel][idxHandle].ptrUp){ + starpu_data_unregister(remoteCellGroups[idxLevel][idxHandle].handleUp); + FAlignedMemory::DeallocBytes(remoteCellGroups[idxLevel][idxHandle].ptrUp); + } if(remoteCellGroups[idxLevel][idxHandle].ptrDown){ starpu_data_unregister(remoteCellGroups[idxLevel][idxHandle].handleDown);