From 9ac07b4b21f4379e59cf39f2dc23e7884016a6bf Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Tue, 12 Nov 2024 20:24:16 -0500 Subject: free cl objects --- balls.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/balls.c b/balls.c index 624fc29..f435eed 100644 --- a/balls.c +++ b/balls.c @@ -236,6 +236,9 @@ initCL(void) { collideWallsKernel = createKernel(cpuProg, COLLIDE_WALLS_KERNEL_FUNC); collideBallsKernel = createKernel(cpuProg, COLLIDE_BALLS_KERNEL_FUNC); genVerticesKernel = createKernel(gpuProg, GEN_VERTICES_KERNEL_FUNC); + + clReleaseProgram(cpuProg); + clReleaseProgram(gpuProg); } /* @@ -578,22 +581,25 @@ void freeCL(void) { size_t i; - clReleaseMemObject(positions); - clReleaseMemObject(velocities); - clReleaseMemObject(radii); + clReleaseMemObject(positionsCpuBuf); + clReleaseMemObject(positionsGpuBuf); + clReleaseMemObject(velocitiesCpuBuf); + clReleaseMemObject(radiiCpuBuf); + clReleaseMemObject(radiiGpuBuf); for (i = 0; i < collisionPartition.size; i++) - clReleaseMemObject(collisions[i]); - free(collisions); - clReleaseMemObject(vertexBuf); + clReleaseMemObject(collisionsCpuBufs[i]); + free(collisionsCpuBufs); + clReleaseMemObject(vertexGpuBuf); clReleaseKernel(moveKernel); clReleaseKernel(collideWallsKernel); clReleaseKernel(collideBallsKernel); clReleaseKernel(genVerticesKernel); - clReleaseCommandQueue(queue); - clReleaseProgram(prog); - clReleaseContext(context); + clReleaseCommandQueue(cpuQueue); + clReleaseCommandQueue(gpuQueue); + clReleaseContext(cpuContext); + clReleaseContext(gpuContext); } void -- cgit v1.2.3