diff --git a/src/libPMacc/include/memory/buffers/DeviceBufferIntern.hpp b/src/libPMacc/include/memory/buffers/DeviceBufferIntern.hpp index ba72dc0e2f..88d96c2455 100644 --- a/src/libPMacc/include/memory/buffers/DeviceBufferIntern.hpp +++ b/src/libPMacc/include/memory/buffers/DeviceBufferIntern.hpp @@ -86,6 +86,8 @@ namespace PMacc virtual ~DeviceBufferIntern() { + __startOperation(ITask::TASK_CUDA); + if (sizeOnDevice) { CUDA_CHECK(cudaFree(sizeOnDevicePtr)); diff --git a/src/libPMacc/include/memory/buffers/HostBufferIntern.hpp b/src/libPMacc/include/memory/buffers/HostBufferIntern.hpp index 817c372882..d0adf45a12 100644 --- a/src/libPMacc/include/memory/buffers/HostBufferIntern.hpp +++ b/src/libPMacc/include/memory/buffers/HostBufferIntern.hpp @@ -68,6 +68,8 @@ class HostBufferIntern : public HostBuffer */ virtual ~HostBufferIntern() throw (std::runtime_error) { + __startOperation(ITask::TASK_HOST); + if (pointer && ownPointer) { CUDA_CHECK(cudaFreeHost(pointer)); diff --git a/src/libPMacc/include/memory/buffers/MappedBufferIntern.hpp b/src/libPMacc/include/memory/buffers/MappedBufferIntern.hpp index 875cf3f980..d2e3ca5172 100644 --- a/src/libPMacc/include/memory/buffers/MappedBufferIntern.hpp +++ b/src/libPMacc/include/memory/buffers/MappedBufferIntern.hpp @@ -60,6 +60,9 @@ class MappedBufferIntern : public DeviceBuffer // DeviceBufferIntern< */ virtual ~MappedBufferIntern() throw (std::runtime_error) { + __startOperation(ITask::TASK_CUDA); + __startOperation(ITask::TASK_HOST); + if (pointer && ownPointer) { CUDA_CHECK(cudaFreeHost(pointer));