dotnet / dotnet/machinelearning-samples

Should get better memory locality by arranging loops from most significant to least

Offen
#772 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
PowerShell
Sterne
4.7k
Forks
2.7k
Ø Merge
2 T. 22 Std.
Gemergte PRs (30 T.)
1

Beschreibung

https://github.com/dotnet/machinelearning-samples/blob/fb06c72c512b3d007cabc0c01b3136701cb127d2/samples/csharp/end-to-end-apps/ObjectDetection-Onnx/OnnxObjectDetection/OnnxOutputParser.cs#L140

In ParseOutput(), by simply iterating by box, they y, then x, rather than x, then y, then box, memory accesses within the tensor should be more localized, which should work with caching better.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Öffne OnnxObjectDetection/OnnxObjectDetection/OnnxOutputParser.cs bei ParseOutput(), insbesondere die Schleife um Zeile 140, und untersuche, wie der Tensor indiziert wird. Ordne die Iteration wie beschrieben neu an, sodass box, dann y und anschließend x durchlaufen werden, und bestätige, dass die resultierenden Zugriffe der vorgesehenen speicherlokalen Reihenfolge folgen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp
Bereich
machine-learning, performance
Issue-Typ
Refactoring
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.