画像生成AIのZ-Image Turboを軽量ソフトのsd.cppで動かした〜VRAM 8GBのRTX 3070は1024pxを48秒、12GBのArc B580は1024pxが失敗した
自分のPCで画像生成AIを動かすために、よく使われるソフト(ComfyUIなど)は、PythonとPyTorchという大きな部品を入れる必要があり、導入が重く感じます。この記事では、導入物がソフト本体と3つのファイルだけの軽量なソフト、stable-diffusion.cpp(以下sd.cpp)で、画像生成AIのZ-Image Turboを動かしました。VRAM(GPUが持つ専用メモリ)が8GBのRTX 3070と、12GBのIntel Arc B580で、512pxと1024pxの絵を出すのにかかった時間を測っています。
2026年10月27日時点の内容です。
何を測ったのか
同じ指示文で、512px四方と1024px四方の絵を1枚出すのにかかる時間を、2枚のGPUで測りました。時間は、sd.cppが表示する「画像を1枚作るのにかかった秒数」[s]です。あわせて、RTX 3070では、測定中のVRAM使用量の最大値 [MiB] を記録しました。
目的
次の3つを確かめます。1つ目は、sd.cppとZ-Image Turboの導入に、何が要るか。2つ目は、VRAM 8GBのRTX 3070で、512pxと1024pxが何秒で出るか。3つ目は、VRAMが多い(12GB)Arc B580でも、同じ設定で同じ絵が出るか。
方法
導入したもの
導入物は、ソフト本体と、モデルの重み3ファイルです。
| 種類 | 名前 | 大きさ | ライセンス |
|---|---|---|---|
| ソフト本体 | stable-diffusion.cpp(Vulkan版の配布ファイル・タグ master-1000-95ff762) | 約37MB | MIT |
| 画像を作る本体 | z_image_turbo-Q4_K.gguf(Z-Image Turboを4ビット相当に圧縮したもの) | 約3.9GB | Apache-2.0 |
| 指示文を読む部品 | Qwen3-4B-Instruct-2507-Q4_K_M.gguf | 約2.5GB | Apache-2.0 |
| 絵に戻す部品(VAE。計算結果を画像データに戻す部品) | ae.safetensors | 約0.3GB | Apache-2.0 |
重みの合計は約6.7GBです。実行ファイルは、sha256という指紋で、配布元の値と一致することを確かめてから使いました。重みも同じ方法で確かめています。Linuxでは、sha256sumというコマンドで、ダウンロードしたファイルの値を出せます。それを、配布ページ(GitHubとHugging Face)に載っている値と見比べます。Vulkanは、GPUメーカーを問わず使える描画・計算の仕組みで、Vulkan版は1つの実行ファイルで、NVIDIAのRTX 3070にも、IntelのArc B580にも使えます。
測り方
| 項目 | 設定 |
|---|---|
| モデル | Z-Image Turbo(4ビット相当) |
| ステップ数 | 8(絵を作る計算を8回繰り返す設定) |
| 指示文 | 窓際の机にミニPCとグラフィックボードとノートがある、やわらかい朝の光の絵(固定) |
| 解像度 | 512px四方と1024px四方 |
| 回数 | 各6回(種を変える)。1回目は読込を含むため除き、残り5回のうち、いちばん速い1回といちばん遅い1回を除いた3回の中央値(ばらつきの影響を減らすため) |
| メモリの設定 | 重みをメインメモリに置き、必要な部品をVRAMへ送る設定(sd.cppの –offload-to-cpu) |
| GPUの指定 | 環境変数 GGML_VK_VISIBLE_DEVICES(使うGPUを番号で選ぶ設定)で、測るGPUを1枚に固定 |
2枚のGPUは、同じPCに載っています。2枚の測定は、別の時間に、1枚ずつ測りました。
結果
| GPU(VRAM) | 512px [s] | 1024px [s] |
|---|---|---|
| RTX 3070(8GB) | 28.05 | 47.59 |
| Arc B580(12GB) | 25.97 | 6回とも失敗 |

RTX 3070では、1024pxの内訳が、絵を作る計算で約36秒、絵に戻す部分で約4秒でした(1回の例)。測定中のVRAM使用量の最大は、4,716MiBでした。
Arc B580では、512pxは6回とも完了しました。1024pxは、6回とも途中で失敗しました。エラーは、計算結果を画像データに戻す部分(VAEの復号)で、ログに、1GiBのメモリの確保に失敗した、と出ています(vk::Device::allocateMemory: ErrorOutOfDeviceMemory)。
考察
VRAM 8GBのRTX 3070で、Z-Image Turboの1024pxが約48秒で出ました。重みを普段はメインメモリに置く設定にしたため、測定中のVRAM使用量の最大は、約4.6GiBでした。今回の測定では、8GBのGPUの上限に達しませんでした。
一方で、VRAMが多いArc B580(12GB)では、1024pxが失敗しました。今回の設定とソフトの組み合わせでは、VRAMの容量だけでは、1024pxが出るかどうかは決まりませんでした。失敗した場所は、絵に戻す部分の1GiBの確保です。なぜ12GBあるのにここで確保できなかったかは、今回の測定では切り分けていません。
512pxは、Arc B580のほうが約2秒短い値でした。ただし、2枚のGPUで、メモリの扱いや、使われる計算の仕組みが違う可能性があり、速さの差の原因は切り分けていません。
今回の測定で確かめていないこと
次のことは、今回確かめていません。
絵の出来は、評価していません。同じ指示文で出た絵を、この記事の図として載せていますが、画質の比較は、測定の対象ではありません。
Arc B580のVRAM使用量は測れていません(NVIDIA用の測定ツールに出ないため)。Arc B580で1024pxが失敗した原因は、確かめていません。ソフトの版や設定を変えれば出る可能性があります。
Z-Image Turbo以外のモデル(FLUXなど)、ステップ数や解像度を変えたときの時間、ComfyUIなど他のソフトとの速さの比較は、していません。メインメモリが少ない(7GB)PCで動かしたため、この結果は、メモリが多いPCとは異なる可能性があります。
まとめ
| 見たこと | 結果 |
|---|---|
| 導入物 | ソフト本体(約37MB)と重み3ファイル(約6.7GB)だけ。PythonやPyTorchは使わない |
| RTX 3070(8GB) | 512px 28.05秒・1024px 47.59秒・VRAM最大 4,716MiB |
| Arc B580(12GB) | 512px 25.97秒・1024pxは6回とも失敗(VAE復号でメモリ確保に失敗) |
今回の構成では、512pxは2枚とも完了し、1024pxはRTX 3070だけが完了しました。1024pxを試すときは、自分のGPUで、メモリ確保のエラーが出ないかを確認してください。







ディスカッション
コメント一覧
まだ、コメントがありません