适用于AMD ROC GPU的Numba概述
適用于AMD ROC GPU的Numba概述
Numba通過按照HSA執行模型將Python代碼的受限子集直接編譯到HSA內核和設備功能中,從而支持AMD ROC GPU編程。用Numba編寫的內核似乎可以直接訪問NumPy數組。
術語
以下列出了HSA編程主題中的幾個重要術語:
內核:由主機啟動并在設備上執行的GPU功能
設備功能:在設備上執行的GPU功能,只能從設備(即從內核或其他設備功能)調用
需求
本文檔 介紹了使用ROC的要求。從本質上講,需要AMD dGPU(iji, Polaris and Vega families,Polaris和Vega系列)和支持PCIe Gen3和PCIe Atomics的CPU(AMD Ryzen和EPYC,以及Intel CPU> = Haswell),鏈接的文檔中有完整的詳細信息。此外,還需要Linux操作系統,鏈接的文檔中也列出了受支持和測試的Linux操作系統。
安裝
請按照本文檔 中的安裝說明為系統啟用ROC支持。確保將二進制軟件包用于系統的linux發行版,以簡化該過程。此時,應通過運行以下命令測試安裝:
$ /opt/rocm/bin/rocminfo
其輸出應列出至少兩個HAS設備,其中至少一個應為CPU,至少一個應為dGPU。
假設安裝工作正常,roctools則可通過condaNumba渠道與Numba一起通過軟件包安裝Numba的ROC支持,如下所示(創建名為的環境 numba_roc):
$ conda create -n numba_roc -c numba numba roctools
激活環境,然后運行Numba診斷工具,應確認Numba在啟用ROC支持的情況下運行,例如:
$ source activate numba_roc
$ numba -s
輸出應包含類似于以下內容的部分:numba -s
ROC Information
ROC available : True
Available Toolchains : librocmlite library, ROC command line tools
Found 2 HSA Agents:
Agent id : 0
vendor: CPUname: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHztype: CPU
Agent id : 1
vendor: AMDname: gfx803type: GPU
Found 1 discrete GPU(s) : gfx803
確認ROC可用,列出可用的工具鏈并顯示HAS設備和dGPU計數
總結
以上是生活随笔為你收集整理的适用于AMD ROC GPU的Numba概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nvGraph-NVIDIA图形库
- 下一篇: 知识图:从图和数据库中获取知识