after raise cupy_backends.cuda.api.runtime.CUDARuntimeError: cudaErrorMemoryAllocation: out of memory in fastapi, gpu is not freed, how to free gpu
File "/app/app/core/color_retrieval.py", line 115, in _cal_distance
dis = cp.subtract(mosaics, color) ** 2
│ │ │ └ array([ 40., 161., 148.], dtype=float32)
│ │ └ array([[[ 72., 156., 159.],
│ │ [108., 161., 163.],
│ │ [112., 153., 163.],
│ │ ...,
│ │ [196., 134., 132.],
│ │ ...
│ └ <ufunc 'cupy_subtract'>
└ <module 'cupy' from '/usr/local/lib/python3.8/dist-packages/cupy/__init__.py'>
File "cupy/_core/core.pyx", line 1248, in cupy._core.core.ndarray.__pow__
File "cupy/_core/core.pyx", line 1575, in cupy._core.core.ndarray.__array_ufunc__
File "cupy/_core/_kernel.pyx", line 1232, in cupy._core._kernel.ufunc.__call__
File "cupy/_core/_kernel.pyx", line 611, in cupy._core._kernel._get_out_args
File "cupy/_core/core.pyx", line 2647, in cupy._core.core._ndarray_init
File "cupy/_core/core.pyx", line 188, in cupy._core.core.ndarray._init_fast
File "cupy/cuda/memory.pyx", line 698, in cupy.cuda.memory.alloc
File "cupy/cuda/memory.pyx", line 592, in cupy.cuda.memory._malloc
File "cupy/cuda/memory.pyx", line 593, in cupy.cuda.memory._malloc
File "cupy/cuda/memory.pyx", line 102, in cupy.cuda.memory.Memory.__init__
File "cupy_backends/cuda/api/runtime.pyx", line 455, in cupy_backends.cuda.api.runtime.malloc
File "cupy_backends/cuda/api/runtime.pyx", line 132, in cupy_backends.cuda.api.runtime.check_status
cupy_backends.cuda.api.runtime.CUDARuntimeError: cudaErrorMemoryAllocation: out of memory
During handling of the above exception, another exception occurred: