DAXPY outperforms DSCAL in multi-threaded environments
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
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- c
- Domaine
- performance
Piste de recherche
Commencez par reproduire les temps d’exécution signalés de dscal et daxpy avec OPENBLAS_NUM_THREADS défini sur 1 et 16, sur un vecteur de longueur 80 000. Comparez les chemins d’exécution de dscal et daxpy et documentez pourquoi leur comportement multithread diffère ; le travail est considéré comme terminé lorsque l’écart est expliqué et que toute modification a été vérifiée avec les deux configurations de threads.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Issue Description:
I'm observing a significant performance disparity between dscal and daxpy when performing vector-scalar multiplication on an Intel(R) Xeon(R) Platinum 8378C CPU @ 2.80GHz. My code involves the operation y=ax, where x is a vector of length 80,000.
Observed Behavior:
Despite setting the OPENBLAS_NUM_THREADS environment variable to either 1 or 16, the execution time for dscal remains unchanged, indicating no utilization of multiple cores.
However, when I replace dscal with an equivalent operation using daxpy, specifically y=(a−1)x+x (having a loss in precision), I observe a multi-fold performance improvement in the multi-core scenario.
Problem:
Given that dscal and daxpy have very similar computational patterns, I'm seeking to understand why there's such a substantial difference in their multi-core performance. This behavior suggests that dscal is not effectively leveraging the available CPU cores, unlike daxpy.
- Langage dominant
- C
- Étoiles
- 7.6k
- Forks
- 1.7k
- Merge moyen
- 1 j 9 h
- PR mergées (30 j)
- 44
Préparer son environnement
Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. 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 OpenMathLib/OpenBLAS
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
OpenMathLib/OpenBLAS#6062 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Missing cgroup awarenessOuverte
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
OpenMathLib/OpenBLAS#6059 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
OpenMathLib/OpenBLAS#6029 · 21 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
OpenMathLib/OpenBLAS#6028 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
OpenMathLib/OpenBLAS#6005 · 21 commentaires · 2 réactions ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de OpenMathLib/OpenBLAS
Issues similaires
-
bug needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
netdata/netdata#24062 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
BasedHardware/omi#19463 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
EchoTools/nevr-runtime#30 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
riscv-software-src/riscv-isa-sim#2448 ·
Les mainteneurs répondent en général sous 2 jours