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
Improvement Description
If the taxonomical classifier is loaded into memory, it should be possible to make it available to a few processes simultaneously. I assume the main culprit is GIL. This can be omitted through the use of ONNX library.
On the other hand, adding additional dependency comes with a cost, so the question is if the plugin utilizes a lot of scikit-learn functions, or if trained models can be delivered to users without it.
The hard way would be rewriting a custom prediction function in C/C++.
Current Behavior joblib pickles the classifier and then starts multiple processes in parallel, increasing RAM usage x processes. Databases will grow in size, so it is something to take into consideration.
Proposed Behavior
Multiple classification processes running from a single instance are loaded into memory.
Priority
Low. Machines with a lot of resources are available to users.
Improvement Description
If the taxonomical classifier is loaded into memory, it should be possible to make it available to a few processes simultaneously. I assume the main culprit is GIL. This can be omitted through the use of ONNX library.
On the other hand, adding additional dependency comes with a cost, so the question is if the plugin utilizes a lot of
scikit-learn
functions, or if trained models can be delivered to users without it.The hard way would be rewriting a custom prediction function in C/C++.
Current Behavior
joblib
pickles the classifier and then starts multiple processes in parallel, increasing RAM usage x processes. Databases will grow in size, so it is something to take into consideration.Proposed Behavior
Multiple classification processes running from a single instance are loaded into memory.
Priority
Low. Machines with a lot of resources are available to users.
References
The text was updated successfully, but these errors were encountered: