dotnet / dotnet/machinelearning-samples
Should get better memory locality by arranging loops from most significant to least
- 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
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