Tests are too slow for libraries with eager-mode dispatch overhead
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- À clarifier
- Activité
- À l'abandon
- Stack technique
- python
- Domaine
- performance, testing
Piste de recherche
Commencez par le job GitHub Actions lié et la suite de tests array-api-tests afin de reproduire l'exécution signalée de 4.5-hour et d'examiner quels tests dominent le temps d'exécution. L'issue ne nomme aucun fichier source ni point d'entrée de test ; le travail sera considéré comme terminé lorsque le temps des tests en eager-mode aura été substantiellement réduit, tout en préservant la couverture de conformité et les résultats de la suite.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
For example this job: https://github.com/google/jax/actions/runs/6804780902/job/18502996983, which is associated with https://github.com/google/jax/pull/16099 took 4.5 hours to run about 1000 tests.
========== 567 failed, 439 passed, 116 skipped in 16419.47s (4:33:39) ==========
This is slow enough to be virtually unusable.
Is there anything I can do to speed up the tests during development of the JAX array API?
Edit: as mentioned below, this is due to the frequent use of patterns within the tests that every value in each array via indexing, and the fact that in eager execution, each of these indexing operations have a small dispatch overhead that leads to slow tests when arrays are large.
- Langage dominant
- Python
- Étoiles
- 75
- Forks
- 54
- Merge moyen
- 1 h 50 min
- PR mergées (30 j)
- 2
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 data-apis/array-api-tests
-
No coverage for `__imatmul__` (`@=`)Peut-être pris @haroune-dev l’a pris il y a 33 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 87/100
data-apis/array-api-tests#465 · 1 commentaire ·
-
Test reflected operators?Peut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
data-apis/array-api-tests#460 · 1 commentaire ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
data-apis/array-api-tests#455 · 2 commentaires ·
-
tracking
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
data-apis/array-api-tests#381 · 9 commentaires ·
-
Providing reproduction code for failed test casesPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 38/100
data-apis/array-api-tests#379 · 10 commentaires ·
Toutes les issues de data-apis/array-api-tests
Issues similaires
-
approved Good First Issue scope: docs
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
hiero-ledger/hiero-sdk-python#2730 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
wemake-services/wemake-django-template#3178 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
md/asciidoc/csv: an explicit `encoding="utf-8"` keeps a leading BOM, the auto-detect path drops itOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
docling-project/docling#4846 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
neurostuff/NiMARE#1181 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
pytest-dev/pytest#15180 ·
Les mainteneurs répondent en général sous 1 jour