Calling threadpool_info in cython parallel block may cause a deadlock
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 25/100
Piste de recherche
The report shows a Cython nogil parallel block calling threadpool_info() under the GIL, and says the behavior may depend on multiple OpenMP runtimes. Start by checking how threadpool_info() inspects loaded thread pools and how the project handles OpenMP calls from parallel regions. Done means reproducing the deadlock and establishing whether this usage is supported or needs a documented limitation.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
When there are multiple OpenMP loaded. Replacing 0 by any other thread_num (below) can cause the issue.
with nogil, parallel():
if openmp.omp_get_thread_num() == 0:
with gil:
threadpool_info()
I'm not sure if it's a real issue. It means that trying to control the number of inner threads independently in each outer threads is a bad idea. But I think it's not the purpose of threadpoolctl.
- Langage dominant
- Python
- Étoiles
- 434
- Forks
- 38
- Merge moyen
- 2 j 14 h
- PR mergées (30 j)
- 8
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de joblib/threadpoolctl
-
Make it possible to set active/spin wait behavior of LLVM/Intel OpenMP via `kmp_set_blocktime`Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
joblib/threadpoolctl#271 ·
Les mainteneurs répondent en général sous 1 jour
-
Make it possible to inspect active/spin wait behavior of LLVM/Intel OpenMP via `kmp_get_blocktime`Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 42/100
joblib/threadpoolctl#270 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 22/100
joblib/threadpoolctl#261 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Opt-in API that has a cached `ThreadpoolController`Peut-être pris @itamarst l’a pris il y a 27 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
joblib/threadpoolctl#254 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Speed up usage of threadpoolctlPeut-être pris @itamarst l’a pris il y a 35 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 18/100
joblib/threadpoolctl#246 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de joblib/threadpoolctl
Issues similaires
-
[Bug]: `hermes plugins update` clones an entire monorepo twice - `subdir` is resolved but dropped at both catalog-update call sitesPeut-être pris @HootRock l’a pris aujourd’hui. Ouvertecomp/cli P2 type/perf
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
NousResearch/hermes-agent#142417 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug enhancement python
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
DewaldOosthuizen/tech-cheat-sheets-and-notes#392 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
bug p2
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
amd/gaia#5471 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Restore postgresql_vm_test_charm actions.yaml change (removed in canonical/postgresql-operator#2054)Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
canonical/postgresql-single-kernel-library#390 · 1 commentaire ·
Les mainteneurs répondent en général sous 2 jours