From b356d6d2773268558719f2878c2fd9558b001c53 Mon Sep 17 00:00:00 2001 From: Kempeter <70294616+Kempeter@users.noreply.github.com> Date: Sun, 19 May 2024 21:34:08 +0200 Subject: [PATCH 1/4] Possible Memory Leak - My Opinion --- Kangaroo.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Kangaroo.cpp b/Kangaroo.cpp index 33104744..badc0e3c 100644 --- a/Kangaroo.cpp +++ b/Kangaroo.cpp @@ -947,6 +947,7 @@ void Kangaroo::Run(int nbThread,std::vector gpuId,std::vector gridSize int x = gridSize[2ULL * i]; int y = gridSize[2ULL * i + 1ULL]; if(!GPUEngine::GetGridSize(gpuId[i],&x,&y)) { + delete thHandles; return; } else { params[nbCPUThread + i].gridSizeX = x; From 2b9fb48df5d52e934a061bd4556231f398a667ee Mon Sep 17 00:00:00 2001 From: Kempeter <70294616+Kempeter@users.noreply.github.com> Date: Sun, 19 May 2024 21:40:24 +0200 Subject: [PATCH 2/4] Free instead of delete --- Kangaroo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Kangaroo.cpp b/Kangaroo.cpp index badc0e3c..99e51fe2 100644 --- a/Kangaroo.cpp +++ b/Kangaroo.cpp @@ -947,7 +947,7 @@ void Kangaroo::Run(int nbThread,std::vector gpuId,std::vector gridSize int x = gridSize[2ULL * i]; int y = gridSize[2ULL * i + 1ULL]; if(!GPUEngine::GetGridSize(gpuId[i],&x,&y)) { - delete thHandles; + free(thHandles); return; } else { params[nbCPUThread + i].gridSizeX = x; From cb1d4d2aea0fd3645a70d727d2e57bab5e831132 Mon Sep 17 00:00:00 2001 From: Kempeter <70294616+Kempeter@users.noreply.github.com> Date: Sun, 19 May 2024 21:41:51 +0200 Subject: [PATCH 3/4] Free params pointer --- Kangaroo.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Kangaroo.cpp b/Kangaroo.cpp index 99e51fe2..3f2d5ce3 100644 --- a/Kangaroo.cpp +++ b/Kangaroo.cpp @@ -947,6 +947,7 @@ void Kangaroo::Run(int nbThread,std::vector gpuId,std::vector gridSize int x = gridSize[2ULL * i]; int y = gridSize[2ULL * i + 1ULL]; if(!GPUEngine::GetGridSize(gpuId[i],&x,&y)) { + free(params) free(thHandles); return; } else { From d0135945ddd231c97b90e2647a8591108a151e48 Mon Sep 17 00:00:00 2001 From: Kempeter <70294616+Kempeter@users.noreply.github.com> Date: Sun, 19 May 2024 21:43:22 +0200 Subject: [PATCH 4/4] Update Kangaroo.cpp --- Kangaroo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Kangaroo.cpp b/Kangaroo.cpp index 3f2d5ce3..ba7d13e5 100644 --- a/Kangaroo.cpp +++ b/Kangaroo.cpp @@ -947,7 +947,7 @@ void Kangaroo::Run(int nbThread,std::vector gpuId,std::vector gridSize int x = gridSize[2ULL * i]; int y = gridSize[2ULL * i + 1ULL]; if(!GPUEngine::GetGridSize(gpuId[i],&x,&y)) { - free(params) + free(params); free(thHandles); return; } else {