perf report shows most cycles spent in blas_thread_server
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
- backend, performance
Rechercherichtung
Beginne damit, den langsamen Import mit Linux perf record und perf report zu reproduzieren, und vergleiche die Importe von numpy und pytorch. Untersuche driver/others/blas_server.c rund um die zitierte Zeile und vergleiche die blas_thread_server-Samples aus liblapack.so.3 und libcblas.so.3. Als erledigt gilt die Identifizierung, ob die Zeit in OpenBLAS oder einem Consumer verbracht wird, mit einer reproduzierbaren Diagnose.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Not sure this is necessarily an issue with OpenBLAS vs users of OpenBLAS (numpy, pytorch).
I'm seeing slow python imports of pytorch; literally import pytorch is taking multiple seconds on my system.
When I record the python interpreter with linux perf record, perf report shows most cycles are spent in blas_thread_server via BOTH liblapack.so.3 and libcblas.so.3. i.e.
Overhead Command Shared Object Symbol
40.31% python liblapack.so.3 [.] blas_thread_server
36.85% python libcblas.so.3 [.] blas_thread_server
If I annotate either, it seems both are near reading the time stamp counter:
0.31 │3c:┌─→mov (%r15),%rax ▒
│ │ cmp $0x1,%rax ▒
│ │↓ ja b0 ▒
│ │ nop ▒
│ │ nop ▒
│ │ nop ▒
│ │ nop ▒
│ │ nop ▒
│ │ nop ▒
5.29 │ │ nop ▒
│ │ nop ▒
│ │ rdtsc ◆
91.82 │ │ sub %ecx,%eax ▒
│ │ cmp %eax,thread_timeout ▒
2.59 │ └──jae 3c
I'm guessing that's corresponding to code around here.
https://github.com/numpy/numpy/issues/24639 seems like someone else hit this, too, but...https://xkcd.com/979/.
How do I even go about debugging this further? Is it an issue in pytorch? numpy? openblas? PEBKAC?
Importing numpy alone doesn't seem problematic, though I suspect that it's part of the chain of dependencies here. Perhaps related to how pytorch is (mis)using numpy then???
- Vorherrschende Sprache
- C
- Sterne
- 7.6k
- Forks
- 1.7k
- Ø Merge
- 1 T. 6 Std.
- Gemergte PRs (30 T.)
- 46
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
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
OpenMathLib/OpenBLAS#6069 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Missing cgroup awarenessOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 52/100
OpenMathLib/OpenBLAS#6059 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
OpenMathLib/OpenBLAS#6029 · 21 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
OpenMathLib/OpenBLAS#6028 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
OpenMathLib/OpenBLAS#6005 · 21 Kommentare · 2 Reaktionen ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in OpenMathLib/OpenBLAS
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
microsoft/ebpf-for-windows#5604 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Update OPENEXR_IMATH_TAGOffen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 84/100
AcademySoftwareFoundation/openexr#2683 ·
Maintainer antworten meist innerhalb von 1 Tag