MENU

Mac Pro 2013 にUbuntuを導入して Qwen3.5 を動かす(amdgpuドライバの導入とVulkan対応のまとめ)

MacPro 2013にUbuntuをインストールし、ローカルAI(Ollamaなど)を動かしたい。

時代遅れではありますが最大構成ならVRAM12GB と、現代のミドルクラスGPUに匹敵するリソースをつんでおり、ローカルLLMの動作も視野にはいりそうです。今回はアリババの最新モデル:Qwen 3.5を動作させることに成功したので、メモを残しておきます。

目次

前提

すでにMacPro 2013に対して、Ubuntuがインストールできていること。やり方はまた後日。

ポイント:カーネル 6.19以降を使う

Mac Pro 2013 にUbuntuを 入れると、標準の radeon ドライバがインストールされます。しかしこのドライバは設計が古く、最新のグラフィックAPIである「Vulkan」を利用できません。この機体でローカルAIをGPU実行するために、新しい amdgpu ドライバ へとシステムを切り替える必要があります。

背景

amdgpu ドライバに切り替えてWayland(Ubuntu標準のグラフィックスバックエンド)を動かすためには、ディスプレイコア機能(amdgpu.dc=1)を有効にする必要があります。

しかし、Mac Pro 2013に搭載されているFirePro D700(GCN 1.0世代)とUbuntuの標準カーネルの組み合わせでこれを有効にすると、古いGPUに対する電圧制御のバグにより、OS起動時にクラッシュ(またはブラックアウト)します。これを回避するために、本件が修正されたLinux 6.19以降のカーネルを導入します。

(参考)最新カーネルで、10年越しのバグ修正が実施された

Mac Pro 2013(D700)で amdgpu.dc=1(Wayland必須機能)を有効にするとクラッシュする問題は、長らく「古いハードウェアの限界」と思われてきました。しかし2026年に入り、Valve(Steam)の開発者によって根本原因が特定・修正されました。

  • 原因: amdgpu ドライバが古いGPU(GCN 1.0世代)を制御する際、画面出力に必要な**「電圧供給」の計算を間違えていた**ため、起動した瞬間に電力が足りずチップがハングアップしていました。
  • 解決方法: Valveのエンジニア(Timur Kristóf氏ら)が、iMac等を入手してデバッグを行い、正しい電圧制御を行うパッチをカーネルに投入。

参照ソース

Phoronix (2026/02/25): Yet Another Fix Coming For Older AMD GPUs On Linux – Thanks To Valve Developer

  • Valveの開発者が古いAMD GPUの電圧依存のバグを修正したニュース

Step 1: 修正パッチ入り最新カーネルの導入

上記の背景がありますので、新しいメインラインカーネル(バージョン6.19.x以降など)を導入します。
Ubuntuの場合は「Mainline」というツールを使うのが簡単です。

ターミナルを開き、以下のコマンドを順番に実行します。

sudo add-apt-repository ppa:cappelikan/ppa
sudo apt update
sudo apt install mainline

インストール後、アプリケーション一覧から「Ubuntu Mainline Kernel Installer」を起動します。 リストの一番上にある最新の安定版カーネルを選択して「Install」をクリックします。処理が完了したら、一度PCを再起動してください。

Step 2: GRUBパラメータの書き換え(amdgpuの有効化)

最新カーネルで起動できたら、いよいよ古いドライバを無効化し、新しい amdgpu を強制的に有効化します。

ターミナルで下記コマンドを入力し、GRUB設定ファイルを開きます。

sudo nano /etc/default/grub

nanoの編集画面が開いたら、GRUB_CMDLINE_LINUX_DEFAULT の行を探し、以下のように追記をします。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.si_support=0 amdgpu.si_support=1 amdgpu.dc=1"
  • radeon.si_support=0 (古いドライバを無効化)
  • amdgpu.si_support=1 (新しいドライバを有効化)
  • amdgpu.dc=1 (Waylandで必須となるディスプレイコア機能を有効化)

保存(Ctrl + OEnter)して終了(Ctrl + X)したら、下記コマンドで設定をシステムに反映させます。

sudo update-grub

完了したらPCを再起動します。

Step 3: WaylandとVulkanの稼働確認

再起動後、無事にログイン画面が表示されれば次の手順に勧めます。

Wayland で動作しているか?

まず、ターミナルで以下のコマンドを実行します。

echo $XDG_SESSION_TYPE

ここで wayland と表示されていれば、 amdgpu ドライバ上でWaylandが動作していることになります。

システムがFirePro D700を amdgpu ドライバ で認識しているか?

次に、古い radeon ドライバが無効化され、新しい amdgpu が2枚のD700を握っているかを確認します。

lspci -k | grep -A 3 -E "(VGA|3D)"

FirePro D700(または Tahiti と表示されるかもしれません)という名前の下に、Kernel driver in use: amdgpu という行が2つ(GPU2枚分)出てくれば完璧です。もしここが radeon になっていたら、設定が反映されていません。

Vulkan APIはD700を認識しているか?

今回のキーポイントである「Vulkan」が、ちゃんとD700を使えるかをチェックします。

sudo apt update
sudo apt install vulkan-tools
vulkaninfo | grep -i deviceName

AMDのGPU名がしっかりリストアップされていれば大成功です!これで、OllamaからVulkan経由でD700を叩く準備が整ったことになります。

GPUの動作状況監視ツールを導入

今後ローカルLLMを動かしたときに、「本当にGPUが計算しているか?」をリアルタイムのグラフで確認するのに便利なツールを入れておきましょう。

sudo apt install radeontop
sudo radeontop

Graphics pipeVRAM などの使用率が表示されます。(終了するにはキーボードの q を押します)

Step4: Ollamaのインストール

まずは標準のインストーラーを実行します。

curl -fsSL https://ollama.com/install.sh | sh

GPUを利用するように設定する

Ollamaに「Vulkan経由でGPUを2枚とも使え」と命令します。これが最大の肝です。

念の為Ollamaのプロセスをシャットダウン

sudo systemctl stop ollama
sudo pkill ollama

Systemd設定の編集:

sudo systemctl edit ollama.service

以下の内容を追記して保存:

[Service]
Environment="OLLAMA_VULKAN=1"
Environment="GGML_VULKAN_DEVICE_COUNT=2"

このとき、これらの内容を書き込む場所に注意してください

この ## Anything 〜と ” Edits below this comment… というコメントの間に書きます。つまりこんな感じにします。

設定の反映と再起動:

sudo systemctl daemon-reload
sudo systemctl restart ollama

動作確認と「VRAM12GB合体」の証拠

正しく認識されているか、ログを確認します。

journalctl -u ollama --no-pager | grep "total_vram"

msg="vram-based default context" total_vram="12.0 GiB" と表示されれば、2枚のD700が1つに束ねられた証拠です。

モデルのダウンロードと実行

これでQwen3.5を実行します。
D700を2つ合わせて 12GBのVRAMがあるので、6.6GBのモデルを動かしてみましょう。

ollama run qwen3.5:9b

うまく行けばこんな感じでInput画面が出るので、入れたい入力を入れてThinking…と出ればOKですよ

GPU動作の確認(radeontop)

本当にGPUが動いているか、別ウィンドウで監視します。

# 1枚目のD700を監視
sudo radeontop -b 02
# 2枚目のD700を監視
sudo radeontop -b 06

ちゃんとVRAMの表示が数GB行っていれば、使われている証拠です。

参考:今後も使えるのか?

今回、Ubuntuが公式に提供しているカーネルよりかなり新しいLinuxカーネルをインストールしました。

この場合、Ubuntuの自動アップデートにより優先されるカーネルが勝手に書き換わり問題が生じないか?が気になると思います。結論、問題になる可能性は少ないと思われます。

というのも、Linuxの起動システム(GRUB)は「バージョン番号が一番数字の大きいカーネル」を優先して起動するため、手動で入れた最新のMainlineカーネルが後回しにされる可能性は少ないと思われるからです。もし今後のメジャーアップデートで更に新しいカーネルがインストールされた場合こちらが優先されますが、より新しいバージョンなわけですから先程の「amdgpu.dc=1 の設定が悪さして真っ暗になる不具合」に対するパッチも適応されているはずで、結局問題にならないでしょう。

しかし、何かの拍子(メジャーアップデートなど)で「本対応の入っていないカーネル」が優先起動するように設定されてしまった場合は、画面真っ暗問題が発生すると思われます。その場合は下記の方法で、先程導入した最新カーネルで起動するように変更してみましょう。

優先起動されるカーネルを変更するときは

  1. 電源ボタン長押しで強制終了します。
  2. 再び電源を入れ、すぐにキーボードの Esc キー(または Shift キー)を押下します。
  3. 黒い背景に白い文字の「GRUBメニュー」が表示されます。
  4. 「Advanced options for Ubuntu」(Ubuntuの詳細オプション)を選択します。
  5. インストールされているカーネルの一覧がズラッと並ぶので、「自分が手動で入れた最新のカーネル(6.19.xなど)」を選択してエンターを押します。

  を開き、以下の2行を変更・追記します。

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

(※ GRUB_DEFAULT=0 などを saved に書き換えます)

その後、保存して sudo update-grub を実行すればよいです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

エンジニアの私が大好きな、ガジェット/オーディオ機器 のレビュー&自作 を中心に
日々の生活におけるお役立ち備忘録を目指します。

※Amazonのアソシエイトとして、当メディアは適格販売により収入を得ています。

コメント

コメントする

目次