WSL に Ubuntu・ROCm・llama.cpp をインストール
まずは WSL を使えるように、仮想化機能をオンにしたり、Windows のコマンドプロンプト/PowerShell からサクッと WSL を入れておきます。
今回は Ubuntu 22.04 を入れましたが、24.04 でも ROCm の導入手順はほぼ同じみたい。
Ubuntu のバージョンは 22.04 か 24.04 を選んでおけば安心。どちらも AMD の公式ガイドが用意されているので、迷ったらこのどちらかにしておくのが無難です。
Ubuntu のバージョンは WSL インストール時に指定可能。
wsl --install -d Ubuntu-22.04
公式ガイドに従い、以下のコマンドを順に実行して、
wget https://repo.radeon.com/amdgpu-install/7.2/ubuntu/jammy/amdgpu-install_7.2.70200-1_all.deb sudo apt install ./amdgpu-install_7.2.70200-1_all.deb
AMD 統一カーネルモード GPU ドライバー、ROCm、グラフィックスをインストールします。
sudo amdgpu-install --list-usecase amdgpu-install -y --usecase=wsl,rocm --no-dkms
エラーもなくインストールが終了し、以下のコマンドで GPU が認識されていることを確認できた。
rocminfo
出力例(抜粋)
・・・ ******* Agent 2 ******* Name: gfx1200 Uuid: GPU-cdbda28ac6932b67 Marketing Name: AMD Radeon RX 9060 XT Vendor Name: AMD Feature: KERNEL_DISPATCH ・・・
WSL の基本操作
・Ubuntu の起動:wsl -d または wsl -d Ubuntu-22.04
・Ubuntu から Windows に戻る:exit
・Ubuntu の停止:wsl –shutdown
・WSL の状態確認:wsl -l -v
NAME STATE VERSION * Ubuntu-22.04 Running 2
llama.cpp を試す
LLM を動作させるためのソフトウェアとして llama.cpp をインストールしてみる。
インストール後は、いよいよ LLM モデルを動かせるようになります。
wslでUbuntuに入り以下を実行します。
sudo apt install -y git cmake build-essential
次に、HIP のパスが通っているか確認。
which hipcc
結果例:
/usr/bin/hipcc
問題無さそうなので、いよいよllama.cpp を取得。
cd ~ git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp
HIP を有効にしてビルドします。
cmake -B build -S . -DGGML_HIP=ON cmake --build build -j$(nproc)
ビルドには時間がかかるため、しばらく待ちます。
今回はエラーなく一発で成功しました。
モデルを用意して実行する
今回は Ubuntu 内にモデルをコピーせず、Windows 側に保存してある LLM モデルをそのまま利用してみる。
私の場合、Windows環境でのLM Studio でダウンロードしたモデルは以下にあります。
E:\LM_Studio\Model
WSL では Windows のドライブが /mnt にマウントされているため、
/mnt/e/LM_Studio/Model
は Windows の E:\LM_Studio\Model と同じ場所になる。
これが WSL の大きなメリットで、Ubuntu から Windows 側のファイルを自由に扱えるため、SSD の容量節約にもなり非常に良い!
実行例(Qwen3-8B)
cd ~ llama.cpp/build/bin/llama-cli \ -m /mnt/e/LM_Studio/Model/lmstudio-community/Qwen3-8B-Q4_K_M/Qwen3-8B-Q4_K_M.gguf \ -p "あなたは日本語で丁寧に回答するAIです。" \ -n 1024 -ngl 99 -c 8192 --temp 0.7 --repeat-penalty 1.1
主なオプション
-n:最大生成トークン数
-c:コンテキストサイズ
-ngl:最適値
--temp:温度(ランダム性)
--repeat-penalty:繰り返し抑制
無事、起動!

で、速度は?
速度はモデルや環境によって大きく違うが、今回の環境の速度を確認してみた。
指標はトークン処理速度(tokens per second)を使うのだが、これはllama.cppでの回答が返った後に表示されるので確認。

色が見づらいが、
[ Prompt: 254.6 t/s | Generation: 54.6 t/s ]
と出ている。毎回少しずつ異なるがだいたい同じような感じ。
最初のPromptは前処理(prefill)といいAIが質問の意図を把握(読み取る)速度らしい。
次のGenerationは、AIが回答を1文字(1トークン)を出力する速さで、上記の場合は54.6文字/秒ということになる。
同じモデル(qwen3:8b-q4_K_M)で、RTX5060TiとRTX3060のトークン速度が出ているサイトでは以下の数値を発見。
RTX5060Ti:61.11
RTX3060:49.14
パラメータも違うと思うのでそのまま比較はできないが、これを見る限り特別劣っている感じではないなぁ、思ったより性能出ているんではないかい?
自分の使い方では十分な速度で体感できるので、まずは良しとしよう!
ROCmで動作させられることが分かったので次はどうしようかな。
ちなみに下記のbatファイルをWindowsに作成しておき、ダブルクリックするとLM Studioのようなチャット環境がすぐ起動するので、ちょっとローカルAIに質問したいときなどは便利かもしれません。
@echo off
wsl bash -c "cd ~ && llama.cpp/build/bin/llama-cli -m /mnt/e/LM_Studio/Model/lmstudio-community/Qwen3-8B-Q4_K_M/Qwen3-8B-Q4_K_M.gguf -p 'あなたは日本語で丁寧に回答するAIです。' -n 1024 -ngl 99 -c 8192 --temp 0.7 --repeat-penalty 1.1"

コメント