...
From the above you can see the “free” and “used” and gaps (where memory is released and both use and free drop to 0)
You can see that the total memory allocations from pool is 39 gb and rest 1 gb is from the CUDA API.
You can compare it with other configurations for example:
export MXNET_GPU_MEM_POOL_RESERVE=99
export MXNET_GPU_MEM_POOL_TYPE=Naive
As you can see the number of memory allocations from pool is 36 gb and rest 3 gb is from CUDA API.
The reason is, for the example I used above, the shapes are different for each of the 100 ndarrays and for such scenario Round allows for lesser CUDA memory allocations and more reuse from pool.
...