You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When compiling and running multiple SDFGs with the same name from the same Python executable, the SDFG is usually deleted in between (I assume by garbage collection?), which unloads the dynamic libraries.
However, when CUDA is involved, it seems that the SDFGs are not deleted even when they are no longer references by Python, which results in the loaded library to stick around. In practice, this can result in DuplicateDLLError when trying to load a new SDFG using the same name.
Expected behavior
SDFGs should be cleaned up when they are no longer referenced, and it should be possible to run multiple SDFGs with the same name from the same Python executable without explicitly deleting them.
To reproduce
Run test tests/library/blas_dot.py on the library_nodes branch, but change the initialization of dace.SDFG to always have the same name, then run the test including the cuBLAS runs.
Workaround
Name each SDFG differently, or explicitly call del my_sdfg between executions.
The text was updated successfully, but these errors were encountered:
Problem
When compiling and running multiple SDFGs with the same name from the same Python executable, the SDFG is usually deleted in between (I assume by garbage collection?), which unloads the dynamic libraries.
However, when CUDA is involved, it seems that the SDFGs are not deleted even when they are no longer references by Python, which results in the loaded library to stick around. In practice, this can result in DuplicateDLLError when trying to load a new SDFG using the same name.
Expected behavior
SDFGs should be cleaned up when they are no longer referenced, and it should be possible to run multiple SDFGs with the same name from the same Python executable without explicitly deleting them.
To reproduce
Run test
tests/library/blas_dot.py
on thelibrary_nodes
branch, but change the initialization ofdace.SDFG
to always have the same name, then run the test including the cuBLAS runs.Workaround
Name each SDFG differently, or explicitly call
del my_sdfg
between executions.The text was updated successfully, but these errors were encountered: