Intel Arc A770で Strata を動かそう

Ubuntu
スポンサーリンク

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

記事の内容は以下のシステムでテストされています。
Ubuntu26.04.1LTS
Intel Core Ultra5 250K Plus
メインメモリ96GB(4800MT/s)
Intel Arc A770(16GB)

Qwen3.8-flash-nextをStrataで高速動作させる動画や記事は、結構出回っていると思います。
ですが、その殆どはGeForce(つまりCUDA)で動かすものばかりです。

今回は、これをIntel Arcで動かそうと思います。

GitHub – Niko1221/Strata: Qwen3.8-Flash-Next on any consumer hardware: one-click install for Windows / Linux. Strata inference engine, OpenAI/Anthropic API on localhost, optional image input.
Qwen3.8-Flash-Next on any consumer hardware: one-click install for Windows / Linux. Strata inference engine, OpenAI/Anth…

上記リンクから確認すると、記事執筆時点ではバージョンが0.1.41となっています。
自分が試したのは0.1.40.3だったので、試す時期によってはパフォーマンスが向上している可能性があります。

それでは、やっていきましょう。

追記
メインメモリは最低でも64GBは必要そうです。
自分の環境では、VRAM使用量は11GB以下でしたが、メインメモリは58GBくらい使っていました。

ドライバとoneAPIベースツールキットのインストール

以前の記事「Ubuntu26.04LTSとIntel Arc」を参照してください。
ドライバとoneAPIのところを更新しています。

Strataのインストール

Strata公式ではDockerを使う事を前提としているようです。
互換性重視なら当然ですが、本記事ではSYCLビルドを自分のPCで行います。
といっても、公式がそちらもビルドスクリプトを用意してくれているので、そのまま使います。

# ------------------------------------------------------------------------------
# 1. oneAPI 環境変数の読み込み & リポジトリ取得
# ------------------------------------------------------------------------------
source /opt/intel/oneapi/setvars.sh

cd ~/install/Strata_test
git clone https://github.com/Niko1221/Strata.git
cd Strata

# ------------------------------------------------------------------------------
# 2. uv による仮想環境作成 & 依存パッケージ導入
# ------------------------------------------------------------------------------
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt

# setup_intel.py 内部の "python -m pip" 呼び出しに対応するため pip を追加
uv pip install pip

# ------------------------------------------------------------------------------
# 3. SYCL バックエンドのネイティブビルド
# ------------------------------------------------------------------------------
chmod +x sycl/tools/build.sh
./sycl/tools/build.sh

# ------------------------------------------------------------------------------
# 4. モデル設定とデータ準備
# ------------------------------------------------------------------------------
python sycl/setup_intel.py
# [対話プロンプトでの入力内容]
# - Which model?: 1 (Qwen3.8-Flash-Next)
# - Which size?: 4 (IQ3_S)
# - Context?: 3 (65536 tokens)
# - KV cache?: 1 (8-bit)
# - Turn on the experimental speed projection?: n (off)

公式がビルドスクリプトを用意してくれていますが、pythonのセットアップスクリプトはなぜかDocker使用が前提になっています。
なので、ここまで実行すると

starting run-iq3_s.sh ...

loading the model (the first start takes a minute or two) ...

[strata] starting the engine: reading the model's weights ...

Traceback (most recent call last):

  File "/home/test/install/Strata/sycl/serve/server_intel.py", line 294, in <module>

    sys.exit(S.main())

             ^^^^^^^^

  File "/home/test/install/Strata/serve/server.py", line 5436, in main

    engine = StrataEngine(exe, engine_args(cfg) + (effort_end or []), cwd=cfg.get("cwd"), log=cfg.get("log"),

             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/home/test/install/Strata/serve/server.py", line 676, in __init__

    raise RuntimeError(why + (f" (see {log})" if log else "") +

RuntimeError: the engine exited before it was ready (see /home/test/install/Strata/strata-iq3_s.log)

the engine log's last lines:

  [strata] 2026-10-08 04:54:47 engine started: /home/test/install/Strata/sycl/serve/strata-sycl.sh --serve --pack /work/Strata-data/packs/iq3_s --native /work/Strata-data/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00001-of-00002.gguf --ple-gguf /work/Strata-data/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00002-of-00002.gguf --expert-profile /work/Strata/data/expert-profile.bin --expert-cache auto --spec 4 --spec-min-p 0.5 --mtp /work/Strata-data/mtp/rt --max-context 65536 --kv int8 --pool-workers 11 --kv-resident 32768 --ple-io ram --vram-reserve-mib 300 --prefill 4096

  /home/test/install/Strata/sycl/serve/strata-sycl.sh: 37 行: exec: docker: 見つかりません

以上のようなエラーが出てしまいます。

ということで、以下を実行して動作を自前ビルドに指定し直します。

# ------------------------------------------------------------------------------
# 5. 設定ファイルをホスト(ネイティブ実行)向けに書き換え
# ------------------------------------------------------------------------------
# バックアップの作成
cp strata-iq3_s.json strata-iq3_s.json.bak

# Docker ラッパーをホストのビルド済みバイナリに差し替え、/work/ を実パスに置換
sed -i 's|sycl/serve/strata-sycl.sh|build-sycl/strata|g' strata-iq3_s.json
sed -i 's|/work/|/home/test/install/|g' strata-iq3_s.json

# ------------------------------------------------------------------------------
# 6. サーバーの起動
# ------------------------------------------------------------------------------
./run-iq3_s.sh

これで起動しました。

「./run-iq3_s.sh」の部分は、ダウンロードするモデルによってファイル名が変化するようです。

もしかしたら「Dockerを使う」のか「自前ビルドを使う」のか、今後選択式になるかもしれません。
上記スクリプトは暫定処置です。

比較用llama.cppの環境

StrataはMTP使用が標準仕様みたいですので、llama.cppもそれに合わせます。
自分が試した時期ではQwen3.8-flash-nextをllama.cppのメインブランチで動かすとMTPは動作しませんでした。
なので以下のスクリプトでフォーク版を試しています。

git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp

git fetch origin refs/pull/28243/head:pr-28243-mtp
git checkout pr-28243-mtp

パフォーマンスを比較

こちらの記事で紹介している「Pi」をエージェントツールとして使って適当にゲームを作らせ、その時の様子を比較します。

両方ともマルチトークン予測数は「4」にしています。

まずはStrata。

Intel Arc A770を使っている人はわかると思いますが、この規模のLLMでこのパフォーマンスは驚異的。
GeForce勢からすると、「え、そんなもん?」だと思いますが・・・。

つづいてllama.cpp。

コンテキストが溜まってくると、3tokens/secまで落ち込みます。

最後に

「30tokens/secでも、使い物にならない」

なんて意見をネットで見たことがありますが、まぁ仕事で使うならそうかもしれませんね。
個人的にはエージェントを動かし始めたら、「一晩放置し朝起きたら結果を確認する」というような使い方なので16tokens/secも出ていれば特に不満もありません。
4tokens/secだと、一晩放置してもまだ終わってないなんてこともあるので、使い続けるのはイヤかなぁって思いますが・・・。

じゃあ、このままA770を使い続けるのかというと・・・。
別の理由があってArc Proにしたいなぁって思ってます。
その件はうまくいけば、また記事にできたらと思っています。

今回は以上です。


追記
2時間くらいで出来上がったゲーム画面です。


Amazon | Bornffinally GUNNIR Intel ARC PRO B50 LP 16GB ビデオカード。 | 1700Mhz、16GB GDDR6メモリ、170 TOPS、PCIeインターフェイス、AIワークステーションGPU。 | Bornffinally | グラフィックボード 通販
Bornffinally GUNNIR Intel ARC PRO B50 LP 16GB ビデオカード。 | 1700Mhz、16GB GDDR6メモリ、170 TOPS、PCIeインターフェイス、AIワークステーションGPU。がグラフィ...
Amazon | ASRock Intel Arc Pro B60 Creator 24GB グラフィックスカード、ワークステーションGPU、Xe2-HPG、2400MHz、24GB GDDR6 192ビット、PCIe 5.0、4X DP 2.1、ブロワー。 | ASRock | グラフィックボード 通販
ASRock Intel Arc Pro B60 Creator 24GB グラフィックスカード、ワークステーションGPU、Xe2-HPG、2400MHz、24GB GDDR6 192ビット、PCIe 5.0、4X DP 2.1、ブロワー。...
Amazon | 玄人志向 Intel Arc B580 搭載 グラフィックボード GDDR6 12GB 【国内正規代理店品】 AR-B580D6-E12GB/DF | 玄人志向 | グラフィックボード 通販
玄人志向 Intel Arc B580 搭載 グラフィックボード GDDR6 12GB 【国内正規代理店品】 AR-B580D6-E12GB/DFがグラフィックボードストアでいつでもお買い得。当日お急ぎ便対象商品は、当日お届け可能です。アマ...

コメント

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