E555user
Vice Admiral Special
- Mitglied seit
- 05.10.2015
- Beiträge
- 804
- Renomée
- 251
Wir driften OT, aber ich versuch mich mal trotzdem:
Ich denke die CPU muss kein SVM "beherrschen", natürlich hat die Zugriff auch auf diesen Teil des Systemspeichers, auf den die diversen HSA Ausführungseinheiten (z.B. GPU) kohärent zugreifen können, dafür sorgen die MemoryController.
Ich würde sagen ein lokaler GPU Speicher, soweit vorhanden, wird dann prinzipiell zum local Cache der vom Treiber bereit gestellt wird. Wenn eine GPU diskret angebunden ist muss die das SVM via PCIe selbst kohärent halten, ob nun mit HW Unterstützung (ACEs bei GCN) oder nur mittels Treiber ist ja erst mal egal. Das geht dann mit jeder CPU, eine gute APU kann das aber in HW direkt, der local Cache ist nicht nötig. Das ist doch der Kern der hUMA, wie im Hotchips Vortrag erläutert (z.B. Seite 8 ).
Erst mit Carrizo war aber die HSA Standard 1.0 kompatible Funktionalität der Kohärenz und des direkten Memory Access implementiert, so dass HSA Komponenten anderer Hersteller z.B. über PCIe eingebunden werden können. D.h. nicht nur AMD kann kompatible Treiber und Anwendungen entwickeln, sondern andere Vendors sollten mit ihren HSA Komponenten und der AMD APU (CPU&GPU) auf einen gemeinsamen virtuellen Adressraum entsprechend Standard zugreifen können. Den allozierten Speicher sehe ich allerdings im System weiterhin als Teil des Systemspeichers bei der bootenden CPU angebunden.
Ich dachte die Frage war ob die CPU nun im OpenCL 2.0 Treiber auch mit der HW-Optimierung entsprechend eingebunden ist, dass diese auch für solche Anwendungen transparent nutzbar wird. Da würde ich meinen wenn Codebeispiele explizit auf APU Bedarf unter Linux hinweisen, dass das dort implementiert wurde.
Letztlich muss es aber dort die Funktionen für SVM geben, damit man bewusst eine HSA unterstütze Anwendung entwickelt. Ich nehme an dass sonst die Treiber alles nach dem alten Modell mit Copy in den GPU RAM abwickeln (HotChips Vortrag Seite 9 ). Eine HSA Komponente anderer Hersteller mit entsprechendem Treiber Support sollte dann von OpenCL 2.0 SVM Applikationen auf Carrizo Plattformen ebenso angesprochen werden können aka "the future next".
LG
E555user
Ich denke die CPU muss kein SVM "beherrschen", natürlich hat die Zugriff auch auf diesen Teil des Systemspeichers, auf den die diversen HSA Ausführungseinheiten (z.B. GPU) kohärent zugreifen können, dafür sorgen die MemoryController.
Ich würde sagen ein lokaler GPU Speicher, soweit vorhanden, wird dann prinzipiell zum local Cache der vom Treiber bereit gestellt wird. Wenn eine GPU diskret angebunden ist muss die das SVM via PCIe selbst kohärent halten, ob nun mit HW Unterstützung (ACEs bei GCN) oder nur mittels Treiber ist ja erst mal egal. Das geht dann mit jeder CPU, eine gute APU kann das aber in HW direkt, der local Cache ist nicht nötig. Das ist doch der Kern der hUMA, wie im Hotchips Vortrag erläutert (z.B. Seite 8 ).
Erst mit Carrizo war aber die HSA Standard 1.0 kompatible Funktionalität der Kohärenz und des direkten Memory Access implementiert, so dass HSA Komponenten anderer Hersteller z.B. über PCIe eingebunden werden können. D.h. nicht nur AMD kann kompatible Treiber und Anwendungen entwickeln, sondern andere Vendors sollten mit ihren HSA Komponenten und der AMD APU (CPU&GPU) auf einen gemeinsamen virtuellen Adressraum entsprechend Standard zugreifen können. Den allozierten Speicher sehe ich allerdings im System weiterhin als Teil des Systemspeichers bei der bootenden CPU angebunden.
Ich dachte die Frage war ob die CPU nun im OpenCL 2.0 Treiber auch mit der HW-Optimierung entsprechend eingebunden ist, dass diese auch für solche Anwendungen transparent nutzbar wird. Da würde ich meinen wenn Codebeispiele explizit auf APU Bedarf unter Linux hinweisen, dass das dort implementiert wurde.
Letztlich muss es aber dort die Funktionen für SVM geben, damit man bewusst eine HSA unterstütze Anwendung entwickelt. Ich nehme an dass sonst die Treiber alles nach dem alten Modell mit Copy in den GPU RAM abwickeln (HotChips Vortrag Seite 9 ). Eine HSA Komponente anderer Hersteller mit entsprechendem Treiber Support sollte dann von OpenCL 2.0 SVM Applikationen auf Carrizo Plattformen ebenso angesprochen werden können aka "the future next".
LG
E555user
Zuletzt bearbeitet: