[FEA] Use nogil
wherever possible when making calls to libcuml
#6271
Labels
nogil
wherever possible when making calls to libcuml
#6271
Currently long running
cuml
calls that dispatch intolibcuml
don't release the GIL. For example, a call toUMAP.fit
will block any other python threads, preventing the python interpreter from doing other work while it waits for thelibcuml
call to return.A use case I had recently was starting a logger for system resources as a background thread to run while
UMAP.fit
was running. Since thefit
call doesn't release the GIL, the background thread never gets to run until thefit
call returns, defeating the purpose.If there's a known reason why we don't release the GIL in these calls, we should document that somewhere. And if there isn't, then I'd argue that we should try and release it in more places.
The text was updated successfully, but these errors were encountered: