Unexpected performance degradation when running experiment
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 28/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Bereich
- performance
Rechercherichtung
Beginne mit dem verlinkten NumPy-PR-Kommentar und den beigefügten Plots; vergleiche die sequenziellen (noshuffle) und gemischten Suchen bei n=20 und batch_size=1. Reproduziere den Benchmark, verfolge anschließend den daran beteiligten OpenBLAS-Pfad und dokumentiere eine bestätigte Ursache sowie eine messbare Verbesserung; es werden keine Quelldatei, kein Test und kein ausführbarer Code bereitgestellt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Dear OpenBLAS Team,
I'm currently working to improve Numpy's matmul for the strided case and I ran a large grid search with different BLAS frameworks, see
https://github.com/numpy/numpy/pull/23752#issuecomment-2629521597
Here a repost of the plots:
The plots show the improvement of performance of the respective BLAS framework plus copying over naïve matrix multiplication.
In the case of OpenBLAS, I've actually run two experiments: one where the iteration order over the search space is completely shuffled over all "pixels" of the experiment and one where the "pixel"-order is sequential (as is the actual obvious choice, called noshuffle here). In latter noshuffle case, there is an unexpected performance degradation visible as a red triangle in the top right corner, e.g. for n=20 and batch_size=1. That was the reason I've introduced shuffling in the first place. Other frameworks are not affected by iteration order (graphs not provided, but I can do so on demand).
I wonder whether with the help of these plots this performance artefact can be improved. I can do more benchmarks and plots like that if interested and also provide some code.
Best from Berlin, Michael
- Vorherrschende Sprache
- C
- Sterne
- 7.6k
- Forks
- 1.7k
- Ø Merge
- 1 T. 13 Std.
- Gemergte PRs (30 T.)
- 51
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus OpenMathLib/OpenBLAS
-
Missing batch/BF16 entries in export generators and public headersEvtl. vergeben @martin-frbg hat das heute übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
OpenMathLib/OpenBLAS#6113 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Installed f77blas.h fails to compile on develop: undefined OPENBLAS_API and OPENBLAS_EXPORTEvtl. vergeben @martin-frbg hat das heute übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
OpenMathLib/OpenBLAS#6112 ·
Maintainer antworten meist innerhalb von 1 Tag
-
openblas_set_threads_callback_function is a silent no-op on WindowsEvtl. vergeben @martin-frbg hat das heute übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 43/100
OpenMathLib/OpenBLAS#6108 · 2 Kommentare · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 43/100
OpenMathLib/OpenBLAS#6107 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
OpenMathLib/OpenBLAS#6104 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in OpenMathLib/OpenBLAS
Ähnliche Issues
-
IO.get_env on Node truncates names at embedded NULEvtl. vergeben @Yi-111-a hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
HigherOrderCO/Bend#1449 · 1 Kommentar ·
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
FujiNetWIFI/fujinet-firmware#1872 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug C/C++ code
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
webarkit/WebARKitLib#84 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
OpenPrinting/cups#1751 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
obsproject/obs-studio#14013 ·
Maintainer antworten meist innerhalb von 1 Tag