Skip to content

XeStrata xe0.1.43.1

Choose a tag to compare

@MistVVK MistVVK released this 12 Oct 20:19
· 959 commits to main since this release

Warning

This is an old release. Get the latest from the latest release.
古いリリースです。最新版は最新のリリースから入れてください。

English | 日本語

English

Important

If you use xe0.1.43 on an Intel GPU, update to this release.
In xe0.1.43, Qwen3.8-Flash-Next's prefill on Intel Arc GPUs fell back to a slow path (DP4a instead of the matrix engines): about a third slower on the Arc Pro B70 at 32K. This release fixes it.

Install

  1. Pick the package for your GPU from the table below and download it (with SHA256SUMS).
  2. Check it: sha256sum -c SHA256SUMS --ignore-missing.
  3. Install it: sudo apt install ./xestrata-contrib-cuda13.1_0.1.43-2_amd64.deb (Ubuntu) or sudo dnf install ./xestrata-contrib-cuda13.4-0.1.43-2.x86_64.rpm (Fedora).
  4. Run xestrata --setup in a terminal. If a GPU library or the render group is missing, it prints the command that installs it and stops; run that command, then xestrata --setup again.

Note

Without an NVIDIA GPU, either CUDA version works the same.

GPU Ubuntu 26.04 Fedora 44
Recommended: Intel, AMD (RDNA2 or later), NVIDIA (Turing or later) xestrata-contrib-cuda13.1 xestrata-contrib-cuda13.4
Intel, AMD (RDNA2 or later), NVIDIA Pascal and Volta (P100, P40, GTX 10 series, V100 and others) xestrata-contrib-cuda12.4 none
  • There is no free-software-only package (xestrata-free) in this release; build it from the source as docs/BUILD.md describes.
  • The version changed, so conversations saved with --conversation-save by an earlier version are not read.

Fixed

  • Qwen3.8-Flash-Next's prefill on Intel GPUs: back on the matrix engines (XMX). Arc Pro B70, IQ3_XXS at 32K: 1,590 tok/s in xe0.1.43, 2,415 now, with the same answers as before xe0.1.43.

Faster

  • Ornith-1.5 and llm-jp-4.1's prefill on Intel GPUs: the experts are multiplied in their quantized form on the XMX (Arc B and Arc A series), not by DP4a. Arc Pro B70, Ornith Q4_K_M: a 515-token prompt 686 → 1,894 tok/s, 3,562 tokens 2,200 → 2,487.
  • AMD Radeon RDNA3 and RDNA4 (RX 7000, RX 9000): XeStrata's own FP16 matrix products and Qwen3.8-Flash-Next's prefill attention run on the GPU's matrix instructions (WMMA), not DP4a and FP32.
  • Volta (V100): Ornith-1.5 and llm-jp-4.1's prefill takes the FP16 tensor cores (Volta's have no int8).

A GPU without matrix engines (RDNA2, Pascal, an Intel GPU without XMX) keeps the DP4a path, as before.

Speed against upstream

XeStrata xe0.1.43.1 against upstream v0.1.43 on the same GPU, with Qwen3.8-Flash-Next IQ3_XXS. generate reads a prompt of 1K to 262K tokens and writes 256 tokens; serve is a 32K conversation with strata --serve; everyday use is a Japanese chat (chat-ja) and a coding agent (agent) through serve/server.py.

Note

  • generate: temperature 0 (greedy). Within ±1% counts as ≈ equal.
  • serve and everyday use: temperature 0.7, each engine writing its own text, so a run can land about 10% off the median. Within ±1% for prefill and ±5% for the wait, decode and first token counts as ≈ equal.
  • Both are the median of two alternating runs.

Intel Arc Pro B70 (32 GB): upstream v0.1.43 is its sycl/ port, with the settings its sycl/setup_intel.py writes

generate (temperature 0, tokens/s)

Type and length prefill XeStrata xe0.1.43.1 prefill upstream v0.1.43 Difference decode XeStrata xe0.1.43.1 decode upstream v0.1.43 Difference
IQ3_XXS 1K 869 679 ✅ ×1.3 84.2 61.7 ✅ +36%
IQ3_XXS 4K 1,511 1,259 ✅ ×1.2 81.1 62.2 ✅ +30%
IQ3_XXS 32K 2,320 1,202 ✅ ×1.9 81.5 54.8 ✅ +49%
IQ3_XXS 64K 2,395 1,153 ✅ ×2.1 79.2 59.3 ✅ +34%
IQ3_XXS 128K 2,388 1,044 ✅ ×2.3 75.9 56.7 ✅ +34%
IQ3_XXS 262K 2,288 892 ✅ ×2.6 72.9 53.2 ✅ +37%

serve and everyday use (temperature 0.7)

Measure XeStrata xe0.1.43.1 upstream v0.1.43 Difference
serve 32K first prefill (tok/s) 2,305 1,194 ✅ ×1.9
serve 32K wait for a follow-up (ms) 189 303 ✅ −38%
serve 32K decode (tok/s) 79.3 54.0 ✅ +47%
chat-ja first token (s) 0.58 0.75 ✅ −23%
chat-ja decode (tok/s) 62.7 42.3 ✅ +48%
agent first token (s) 2.80 3.50 ✅ −20%
agent prefill (tok/s) 1,402 1,010 ✅ ×1.4
agent decode (tok/s) 74.6 55.9 ✅ +33%

RTX 4070, RX 9060 XT: being measured (added later)

日本語

Important

Intel の GPU で xe0.1.43 を使っている方は、このリリースに更新してください。
xe0.1.43 では、Intel Arc の GPU で Qwen3.8-Flash-Next の prefill が遅い経路(行列エンジンでなく DP4a)に落ちていました。Arc Pro B70 の 32K で約 3 割遅くなっていました。このリリースで直りました。

インストール

  1. 下の表から GPU に合うパッケージを選び、SHA256SUMS と一緒にダウンロードする。
  2. 確かめる: sha256sum -c SHA256SUMS --ignore-missing
  3. 入れる: sudo apt install ./xestrata-contrib-cuda13.1_0.1.43-2_amd64.deb(Ubuntu)または sudo dnf install ./xestrata-contrib-cuda13.4-0.1.43-2.x86_64.rpm(Fedora)
  4. 端末で xestrata --setup を実行する。GPU のライブラリや render グループが足りなければ、入れるコマンドを表示して止まるので、そのコマンドを実行してから、もう一度 xestrata --setup を実行する。

Note

NVIDIA の GPU がなければ、どちらの CUDA の版でも同じように動きます。

GPU Ubuntu 26.04 Fedora 44
おすすめ: Intel、AMD(RDNA2 以降)、NVIDIA(Turing 以降) xestrata-contrib-cuda13.1 xestrata-contrib-cuda13.4
Intel、AMD(RDNA2 以降)、NVIDIA の Pascal と Volta(P100、P40、GTX 10 シリーズ、V100 など) xestrata-contrib-cuda12.4 なし
  • このリリースには自由ソフトウェアだけのパッケージ(xestrata-free)はありません。docs/BUILD.ja.md のとおりソースから作れます。
  • 版が変わったので、前の版の --conversation-save で保存した会話は読みません。

直したこと

  • Intel の GPU での Qwen3.8-Flash-Next の prefill: 行列エンジン(XMX)の経路に戻しました。Arc Pro B70、IQ3_XXS の 32K: xe0.1.43 の 1,590 tok/s が 2,415 tok/s に戻り、答えも xe0.1.43 より前と同じです。

速くなったこと

  • Intel の GPU での Ornith-1.5 と llm-jp-4.1 の prefill: エキスパートを量子化したまま、DP4a でなく XMX で積みます(Arc B と Arc A シリーズ)。Arc Pro B70、Ornith Q4_K_M: 515 トークンの prompt で 686 → 1,894 tok/s、3,562 トークンで 2,200 → 2,487 tok/s。
  • AMD Radeon の RDNA3 と RDNA4(RX 7000、RX 9000): XeStrata 自前の FP16 の行列積と、Qwen3.8-Flash-Next の prefill のアテンションを、DP4a や FP32 でなく、GPU の行列命令(WMMA)で計算します。
  • Volta(V100): Ornith-1.5 と llm-jp-4.1 の prefill で、FP16 の Tensor Core を使います(Volta の Tensor Core は int8 を扱えないため)。

行列エンジンのない GPU(RDNA2、Pascal、XMX のない Intel の GPU)は、これまでどおり DP4a の経路です。

upstream との速さの比較

同じ GPU で、XeStrata xe0.1.43.1 と upstream v0.1.43 を Qwen3.8-Flash-Next IQ3_XXS で比べました。generate は 1K〜262K トークンの prompt を読んで 256 トークンを書きます。serve は strata --serve での 32K の会話、通常使用は serve/server.py を通した日本語のチャット(chat-ja)とコーディングエージェント(agent)です。

Note

  • generate:温度 0(greedy)。差が ±1% 以内なら ≒ 同等です。
  • serve と通常使用:温度 0.7 で、それぞれのエンジンが自分の文を書くので、1 回ごとに中央値から 10% 前後ずれることがあります。差が prefill は ±1% 以内、待ち・decode・最初のトークンは ±5% 以内なら ≒ 同等です。
  • どちらも、交互に 2 回ずつ測った中央値です。

Intel Arc Pro B70 (32 GB): upstream v0.1.43 は sycl/ 版(その sycl/setup_intel.py が書く設定)

generate(温度 0、トークン/秒)

形式・長さ prefill XeStrata xe0.1.43.1 prefill upstream v0.1.43 差 decode XeStrata xe0.1.43.1 decode upstream v0.1.43 差
IQ3_XXS 1K 869 679 ✅ 1.3 倍 84.2 61.7 ✅ +36%
IQ3_XXS 4K 1,511 1,259 ✅ 1.2 倍 81.1 62.2 ✅ +30%
IQ3_XXS 32K 2,320 1,202 ✅ 1.9 倍 81.5 54.8 ✅ +49%
IQ3_XXS 64K 2,395 1,153 ✅ 2.1 倍 79.2 59.3 ✅ +34%
IQ3_XXS 128K 2,388 1,044 ✅ 2.3 倍 75.9 56.7 ✅ +34%
IQ3_XXS 262K 2,288 892 ✅ 2.6 倍 72.9 53.2 ✅ +37%

serve と通常使用(温度 0.7)

計測 XeStrata xe0.1.43.1 upstream v0.1.43 差
serve 32K 最初の prefill (tok/s) 2,305 1,194 ✅ 1.9 倍
serve 32K 会話の続きの待ち (ms) 189 303 ✅ −38%
serve 32K decode (tok/s) 79.3 54.0 ✅ +47%
chat-ja 最初のトークン (s) 0.58 0.75 ✅ −23%
chat-ja decode (tok/s) 62.7 42.3 ✅ +48%
agent 最初のトークン (s) 2.80 3.50 ✅ −20%
agent prefill (tok/s) 1,402 1,010 ✅ 1.4 倍
agent decode (tok/s) 74.6 55.9 ✅ +33%

RTX 4070・RX 9060 XT: 計測中(後で足す)