Intel Arc Pro B70 ×2 でLinux機を組んだ — BIOSを保存すると起動しなくなるマザーと、SSHが通るまでの一晩

はじめに — なぜ Intel の GPU を2枚も
自宅ではWindows機(RTX 4070、12GB)がブログのアイキャッチ画像を作っている。Flux.1 schnell を fp8 で動かしているが、12GB だと UNet だけで 11GB を食い、デスクトップ側が VRAM を使っていると CPU に落ちて10倍遅くなる。この制約が地味に効いていて、画像生成を別の機械に移したかった。
選んだのは SPARKLE の Intel Arc Pro B70(32GB)。2枚で VRAM は 64GB になる。NVIDIA の同容量と比べれば圧倒的に安く、Intel が B シリーズ向けに LLM 推論と画像・動画生成のスタック(llm-scaler)を出していて、Linux での土台が整ってきていた。画像生成が本命、LLM 推論は副産物、という位置づけだ。
本体はパーツから自分で組むことにした。自作経験はWindows機だけで、Linux機を組むのは初めて。構成は Ryzen 7 9700X、ASRock X870 Taichi Creator(10GbE内蔵)、DDR5 32GB×2、2TB NVMe、1200W電源、Fractal の Meshify 2。GPU は PCIe 5.0 を x8/x8 に分けて2枚挿す。ヘッドレスで書斎の隅に置き、モニターもキーボードもつながない前提で、IP KVM の GL.iNet Comet も用意した。
この記事は、組み立てから「Mac から SSH で常用でき、B70 が2枚ともドライバに認識された」ところまでの一晩の記録だ。主役は、途中で判明したマザーボードの不具合である。
1. 組み立て — マニュアルがざっくりすぎる
紙のマニュアルは配線図が大雑把で、オンラインの詳細版を Claude に読み込ませ、電源・メモリ・SSD の資料と突き合わせた手順にしてから進めた。初めてのパーツで迷った点をいくつか。
- 12V-2x6(GPU用電源ケーブル)は、電源側の端に小さなセンサー用のコネクタが分かれていて、本体の小さなソケットに挿す。GPU 側は緑の部分が隠れるまで押し込む
- ケースのファンは3ピンだが、マザーの4ピンヘッダに挿してよい(DC制御で回る。回転数の表示は N/A になる)
- B70 は 1,139g ある。つっかえ棒はひとまず見送り、たわみが出たら対処することにした

2. 最初の起動 — C5 で止まる
初回は Dr. Debug(マザーの2桁表示)が C5 で止まった。メモリトレーニングのコードだ。CMOS クリアをして、メモリを1枚にしたら BIOS 画面まで来た。BIOS を 4.50 から 4.60(AGESA 1.3.0.1d)に上げ、2枚目を戻すと 64GB で認識した。ここまでは「AM5 ではよくある初回のメモリトレーニング」の範囲で、想定内だった。
想定外はこの後だった。
3. BIOS を保存すると二度と起動しない
ファンの制御を見ようと BIOS に入り、F10 で保存して再起動したら、EC で止まって動かなくなった。CMOS クリアをすると起動する。そして、BIOS で何も変えずに「Save Changes and Exit」しただけでも同じことが起きる。

切り分けに夜中まで費やした。試したのは次のとおり。
- BIOS 4.60 を Instant Flash と BIOS Flashback の両方で書き直し → 同症状
- BIOS 4.50 に戻す → 同症状
- メモリ2枚、1枚ずつ(A2 スロットに各1枚) → 同症状
- 前面 USB・USB-C・オーディオの配線を全部外した最小構成 → 同症状
- GPU 未装着(オンボード HDMI 出力) → 同症状
ネットで同じ報告は見つからなかった。ここまでやって変わらないなら、マザーボードの個体不良か、メモリとの相性のどちらかしかない。メモリは QVL に載っている型番ではないが、13万円のメモリをおいそれと買い替えて試すわけにもいかない。販売店(アーク)の初期不良対応の期間内だったので、翌朝に問い合わせを送った。
いっぽうで、BIOS の初期設定のままなら普通に起動して動くことも分かった。Resizable BAR と Above 4G Decoding はデフォルトで有効。初期設定で困るのは「停電後の自動起動」と「プライマリ表示の固定」くらいで、前者は Comet と ATX 電源制御ボードで代替できる。つまり、交換を待ちながら構築を進められる。そう割り切った。
4. B70 を2枚挿す — 認識の確認で引っかかる罠
マザーの問題を抱えたまま、GPU を2枚とも挿した。BIOS の画面は B70 を挿してもマザーの HDMI に出る。
Ubuntu のインストーラーのシェルから lspci で確認すると、B70 ×2(デバイス ID e223)と、CPU 内蔵の AMD GPU が見えた。ここで1つ罠がある。Intel Arc のカードは内部に PCIe スイッチを持っていて、GPU そのものは x1・2.5GT/s と表示される。本当のリンク速度は、その上流のブリッジで読む必要がある。上流を見ると PCIe 5.0 で x8/x8、期待どおりだった。

5. Ubuntu Server のインストール — 手打ちがしんどい
Ubuntu Server 24.04.5 を、SD カードリーダーに焼いたイメージからオフラインで入れた。llm-scaler が対応しているのが 24.04 だったので、26.04 ではなくこちらにした。
インストール自体は何事もなく終わった。問題はその後だ。LAN をつなぐ場所と組み立てた場所が違い、ネットワーク設定を先に書く必要があった。モニターとキーボードで YAML を手打ちしたら、
- コロンの後ろの半角スペースを落とす
ethernetsの r を落とす- ファイル名の
.yamlのドットを落とす(netplan は.yamlで終わるファイルしか読まない)
と、一行ずつ引っかかった。教訓は単純で、画面で打つのは SSH が通るまでの最小限にして、残りは全部 Mac からコピペでやる。netplan の設定は echo ... | sudo tee の1行にしておけばよかった。
もう1つ。LAN をつながずに起動すると systemd-networkd-wait-online が2分待つ。固まったように見えるが、待てばログイン画面が出る。

LAN をつないで Mac から ssh tada@<IP> が通った瞬間に、この夜の山は越えた。IP は Mac Studio で動かしている dnsmasq のリース一覧から拾った。
6. ここからは Claude Code に任せる
SSH が通れば、あとは Mac Studio 上の Claude Code にブリーフを渡して進められる。一晩で済んだ作業を列挙する。
- SSH を b70 専用の鍵に切り替え、パスワード認証を無効化。鍵を他の用途と使い回さない理由(片方を差し替えると両方止まる、漏れたときの被害が広がる)は決裁メモに残した
- dnsmasq で固定 IP を割り当て、Obsidian のネットワーク管理ノートを更新
- Tailscale に参加させ、サーバー用途なので key expiry を無効化
- B70 の作業用リポジトリを作り、cc-bridge(自作の Claude Code 連携)に direct モードで登録。ジョブに許すのは
ssh b70とscpだけ。b70 側は sudo NOPASSWD なので「ssh を許す = root を渡す」と理解したうえで、秘密情報を置かない実験機だから可とした - カーネルは、Intel の公式資料を調べさせたうえで方式を3つ(Ubuntu HWE 7.0 / llm-scaler のインストーラ / 26.04 で入れ直し)に整理してもらい、HWE 7.0 + 上流の GuC ファームウェアを選んだ。後で別方式に切り替える余地を残すため
- 再起動後、2枚とも
Kernel driver in use: xe、GuC は Intel の要求版を満たし、xe 関係のエラーなし。カーネルとファームウェアはapt-mark hold - 古い 6.8 カーネルは autoremove から外し、GRUB から戻れる先として残す
- Uptime Kuma に SSH の死活と「xe が2枚付いているか」の Push 監視を追加
- カード側ファームウェア(IFWI)は、版の確認だけして更新しないと決定。板向けの専用データが配布されていない、更新後に完全な電源断が要る(マザー不良対応中にやる操作ではない)、失敗時の復旧が保証されない、の3点から
途中、Claude Code のログインの期限が切れて止まる場面があった。スマホのブラウザからターミナルを開いて /login すれば復旧できると分かったので、長期トークンの導入は見送った。
7. 教訓
- 初期不良は「症状を固定して切り分けを尽くす」のが先。何を試して同じだったか、構成は何か、が揃っていれば販売店とのやり取りは一往復で済む。切り分けの最中に「相性かも」と高価な部品を買い足さない
- ヘッドレス機は、SSH が通るまでが勝負。そこまでの手打ちを減らす設計(1行で書けるコマンドを用意する、IP KVM を先に用意する)に投資する価値がある
- Intel Arc の PCIe リンクは上流ブリッジで読む。GPU 本体の表示を見て「x1 しか出てない」と慌てない
- ホストに入れるのはドライバとファームウェアまで。llm-scaler の本体は Docker なので、カーネルを固定しておけばソフト選定をあとから変えられる
- 後戻りできる選択肢を選ぶ。HWE カーネルを選んだのも、6.8 を残したのも、IFWI を触らなかったのも同じ理由
次にやること
- 販売店の返事を待ってマザーボードを交換する。返送時は CPU ソケットカバーを忘れずに
- ATX 電源制御ボードが届いたら Comet と合わせて取り付け、電源操作も遠隔にする
- 本題の画像生成。Intel の llm-scaler-omni(ComfyUI)で、4070 機と同じ条件(Flux.1 schnell、1344×768、4ステップ)の生成を動かし、速さと見た目を比べる。32GB あるので fp8 ではなく bf16 版が載る。それで質が上がるかも見たい
組み立てを始めてから SSH が通るまで、ほぼ一晩。マザーボードの不具合がなければ半分で済んだはずだが、切り分けの過程で BIOS Flashback も CMOS クリアも身体で覚えたので、無駄ではなかったことにしておく。