MCPcopy Create free account
hub / github.com/AMReX-Codes/amrex / clearFreeAsyncBuffer

Method clearFreeAsyncBuffer

Src/Base/AMReX_GpuDevice.cpp:976–998  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

974#endif
975
976bool
977Device::clearFreeAsyncBuffer () noexcept
978{
979#ifdef AMREX_USE_GPU
980 bool freed_memory = false;
981 for (auto& s : gpu_stream_pool) {
982 if (s.wait_list_size() > 0) {
983 s.sync();
984 freed_memory = true;
985 }
986 }
987 for (auto& ext : external_stream_stack) {
988 AMREX_ASSERT(ext.manager != nullptr);
989 if (ext.manager->wait_list_size() > 0) {
990 ext.manager->sync();
991 freed_memory = true;
992 }
993 }
994 return freed_memory;
995#else
996 return false;
997#endif
998}
999
1000#if defined(__CUDACC__) && defined(AMREX_USE_CUDA)
1001

Callers

nothing calls this directly

Calls 2

wait_list_sizeMethod · 0.80
syncMethod · 0.80

Tested by

no test coverage detected