Fix GPU interpolation cache lifetime leaks
This commit is contained in:
@@ -29,6 +29,7 @@ using namespace std;
|
||||
#include "parameters.h"
|
||||
#ifdef USE_GPU
|
||||
#include "bssn_gpu.h"
|
||||
#include "bssn_cuda_ops.h"
|
||||
#endif
|
||||
|
||||
//================================================================================================
|
||||
@@ -891,6 +892,9 @@ void cgh::recompose_cgh(int nprocs, bool *lev_flag,
|
||||
#ifdef USE_GPU
|
||||
bssn_gpu_clear_cached_device_buffers();
|
||||
bssn_gpu_release_pinned_host_buffers();
|
||||
bssn_cuda_release_rk4_caches();
|
||||
bssn_cuda_release_interp_caches();
|
||||
patch_release_interp_plan_cache();
|
||||
#endif
|
||||
Parallel::KillBlocks(PatL[lev]);
|
||||
PatL[lev]->destroyList();
|
||||
@@ -924,6 +928,9 @@ void cgh::recompose_cgh(int nprocs, bool *lev_flag,
|
||||
#ifdef USE_GPU
|
||||
bssn_gpu_clear_cached_device_buffers();
|
||||
bssn_gpu_release_pinned_host_buffers();
|
||||
bssn_cuda_release_rk4_caches();
|
||||
bssn_cuda_release_interp_caches();
|
||||
patch_release_interp_plan_cache();
|
||||
#endif
|
||||
Parallel::KillBlocks(PatL[lev]);
|
||||
PatL[lev]->destroyList();
|
||||
@@ -1536,6 +1543,9 @@ void cgh::recompose_cgh_Onelevel(int nprocs, int lev,
|
||||
#ifdef USE_GPU
|
||||
bssn_gpu_clear_cached_device_buffers();
|
||||
bssn_gpu_release_pinned_host_buffers();
|
||||
bssn_cuda_release_rk4_caches();
|
||||
bssn_cuda_release_interp_caches();
|
||||
patch_release_interp_plan_cache();
|
||||
#endif
|
||||
Parallel::KillBlocks(PatL[lev]);
|
||||
PatL[lev]->destroyList();
|
||||
@@ -1563,6 +1573,9 @@ void cgh::recompose_cgh_Onelevel(int nprocs, int lev,
|
||||
#ifdef USE_GPU
|
||||
bssn_gpu_clear_cached_device_buffers();
|
||||
bssn_gpu_release_pinned_host_buffers();
|
||||
bssn_cuda_release_rk4_caches();
|
||||
bssn_cuda_release_interp_caches();
|
||||
patch_release_interp_plan_cache();
|
||||
#endif
|
||||
Parallel::KillBlocks(PatL[lev]);
|
||||
PatL[lev]->destroyList();
|
||||
|
||||
Reference in New Issue
Block a user