AMDのNPU(RyzenAI XDNA)を使ってみた3

AI
(ryzen-ai-1.2.0) C:\Program Files\RyzenAI\1.2.0\quicktest>python quicktest.py
Traceback (most recent call last):
  File "C:\Program Files\RyzenAI\1.2.0\quicktest\quicktest.py", line 44, in <module>
    apu_type = get_apu_info()
  File "C:\Program Files\RyzenAI\1.2.0\quicktest\quicktest.py", line 16, in get_apu_info
    if 'PCI\\VEN_1022&DEV_1502&REV_00' in stdout.decode(): apu_type = 'PHX/HPT'
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 14: invalid start byte

前回は文字コード関係のエラーが発生してできなくなっていたので、その解決方法とQuicktestを動作させるまでを記録する。

Running LLM on AMD NPU Hardware – Hackster.io
同じエラーが発生していたかたが解決までしていた記事を見つけたので実行してみる。

quicktest.pyを以下のように変更する

    stdout_decode = stdout.decode("cp932") #追加
  
  #追加した変数に書き換える
    apu_type = ''
    if 'PCI\\VEN_1022&DEV_1502&REV_00' in stdout_decode: apu_type = 'PHX/HPT' 
    if 'PCI\\VEN_1022&DEV_17F0&REV_00' in stdout_decode: apu_type = 'STX'
    if 'PCI\\VEN_1022&DEV_17F0&REV_10' in stdout_decode: apu_type = 'STX'
    if 'PCI\\VEN_1022&DEV_17F0&REV_11' in stdout_decode: apu_type = 'STX'

quicktestを実行

(ryzen-ai-1.2.0) C:\Program Files\RyzenAI\1.2.0\quicktest>python quicktest.py

あらたなエラーが発生した。

NPUドライバかanaconda環境をインストールするときに正しく実行できなかったかもしれないので、
ドライバとRyzenAIソフトウェアを削除して再度インストールした。

インストール後、quicktestを実行するとテストが完了した。

(ryzen-ai-1.2.0) C:\Program Files\RyzenAI\1.2.0\quicktest>python quicktest.py
Setting environment for PHX/HPT
XLNX_VART_FIRMWARE= C:\Program Files\RyzenAI\1.2.0\voe-4.0-win_amd64\xclbins\phoenix\1x4.xclbin
NUM_OF_DPU_RUNNERS= 1
XLNX_TARGET_NAME= AMD_AIE2_Nx4_Overlay
[Vitis AI EP] No. of Operators :   CPU     2    NPU   398
[Vitis AI EP] No. of Subgraphs :   CPU     1    NPU     1 Actually running on NPU     1
2024-11-02 11:21:10.7746003 [W:onnxruntime:, session_state.cc:1166 onnxruntime::VerifyEachNodeIsAssignedToAnEp] Some nodes were not assigned to the preferred execution providers which may or may not have an negative impact on performance. e.g. ORT explicitly assigns shape related ops to CPU to improve perf.
2024-11-02 11:21:10.7798096 [W:onnxruntime:, session_state.cc:1168 onnxruntime::VerifyEachNodeIsAssignedToAnEp] Rerunning with verbose output on a non-minimal build will show node assignments.
Test Passed

RyzenAI1.2になってからLLMに対応していたりするので、Llamaあたりで動作確認してみる。

LLMを動かした記事はこちら

タイトルとURLをコピーしました