oneapi-src / oneapi-src/level-zero

[Question] Shared and Host Buffers can offer the same overall performance on Intel Integrated Graphics?

Offen
#92 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
C++
Sterne
335
Forks
140
Ø Merge
12 Std. 32 Min.
Gemergte PRs (30 T.)
5

Beschreibung

I am interested in analyzing the overall performance (end-to-end applications) when using different types of buffer allocation. I wrote this blog-entry for reference:

https://jjfumero.github.io/posts/2022/05/overall-performance-of-unified-shared-memory-level-zero/

What I saw was that running an application with host buffers offers the same performance as running with shared memory buffers. My understanding is that, when running applications using shared memory buffers, the GPU driver can migrate the buffers from the host to the device, while host memory will be accessed from the device every time a data item is required. I have two scenarios: a) memory-bound and b) compute-bound. I was surprised to see that, when running the memory-bound case, the overall performance was very similar when allocating buffers using host memory only, and shared memory only. Is this performance expected when running on Intel Integrated graphics?

If you want to reproduce all numbers, the whole application is available here: https://github.com/jjfumero/codeBlogArticles/tree/master/may2022/sharedMemoryEffect

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Anwendung sharedMemoryEffect im verlinkten Repository codeBlogArticles und vergleiche deren Läufe mit host-buffer und shared-buffer mit den im Blog berichteten Ergebnissen. Im Issue wird keine Level Zero-Quelldatei und kein zu ändernder Test genannt; als erledigt würde gelten, die memory-bound- und compute-bound-Fälle zu reproduzieren und festzustellen, ob die beobachtete Performance auf integrierten Intel-Grafikprozessoren erwartungsgemäß ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp
Bereich
performance
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
15/100

Neue Issues direkt in Ihr Postfach

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