応答速度と加速
Qwen-Image 2.1の速度:RTX 5090とMacで何が違う?
1枚6秒という人も、3分待ったという人もいます。同じQwen-Image 2.1でも、実行環境、量子化1、解像度が違えば両方あり得ます。購入前に必要なのは最小の数字ではなく、自分の条件で待つ時間を絞ることです。
1枚6秒には実行条件があります

並べてよい数字と、条件が違う数字
以下は同じモデルの別々の公開記録です。MesmerのFP4 7.40秒はエンジン時間で、LightX2Vの終端間時間とは範囲が違います。NF4のDiffusersも別テストです。制御された実行環境ランキングではなく、GPU5名だけでは数字を比べられない理由を示します。
Q4_K_Mを取得してもFP4専用カーネルの速度にはなりません。GGUF6、NF4、ハードウェア向けFP4は保存・演算経路が別です。CPU退避とエンコーダーの配置も確認してください。ファイル名の4より、実行バックエンドと実メモリ使用量の方が判断材料になります。
| 測定機器 | 実行構成 | 出力サイズ | 公開時間 |
|---|---|---|---|
| RTX 5090 | LightX2V FP8 / FP16 accumulation | 1024×1024 | 5.930s |
| RTX 5090 | Mesmer FP4 rank 128 | 1024×1024 | 7.40s |
| RTX 5090 | Diffusers NF4 | 1024×1024 | 19.2s |
| RTX 4070 Ti SUPER 16GB | Mesmer INT4 rank 128 | 1024×1024 | 22.82s |
| M5 Max 36GB | ComfyUI GGUF Q8 + INT8 encoder | 1024×1024 | 156s |
| M5 Max 36GB | ComfyUI GGUF Q4 + W4A8 encoder | 1024×1024 | 218s |
公開実行記録・すべてテキストから画像、40ステップ
RTX 5090
- 実行構成
- LightX2V FP8 / FP16 accumulation
- 出力サイズ
- 1024×1024
- 公開時間
- 5.930s
RTX 5090
- 実行構成
- Mesmer FP4 rank 128
- 出力サイズ
- 1024×1024
- 公開時間
- 7.40s
RTX 5090
- 実行構成
- Diffusers NF4
- 出力サイズ
- 1024×1024
- 公開時間
- 19.2s
RTX 4070 Ti SUPER 16GB
- 実行構成
- Mesmer INT4 rank 128
- 出力サイズ
- 1024×1024
- 公開時間
- 22.82s
M5 Max 36GB
- 実行構成
- ComfyUI GGUF Q8 + INT8 encoder
- 出力サイズ
- 1024×1024
- 公開時間
- 156s
M5 Max 36GB
- 実行構成
- ComfyUI GGUF Q4 + W4A8 encoder
- 出力サイズ
- 1024×1024
- 公開時間
- 218s
MacでQ4の方が遅いこともある理由
公開M5 Max 36GBテストはComfyUIのMetal経路で、1024ではQ8が156秒、Q4が218秒でした。エンコーダーもINT8とW4A8で異なり、本体のビット数だけの差とは言えません。省メモリ効果と、その環境で低ビット重みを展開するコストを一緒に見ます。
1536では両構成が約8分台、2048では約18分規模でした。Q4の2048は反復したウォーム測定ではなくコールド実行なので、厳密な順位には使いません。Mac Studioの大容量メモリは大きな処理の適載に役立ちますが、容量比で画像演算が速くなるわけではありません。
5090最適化は専用設定まで合わせる
LightX2Vは5090専用CUDA7イメージとFP8変換例を提供します。fp8_f16_accum_5090スクリプトを選び、元モデルの場所と変換後DiT8のパスを別々に設定します。以下はソースと環境を用意した後の変換・実行部分です。/path/toは自分の場所に変更し、モデル全体の取得は別に行います。
変換後はJSONのdit_quantized_ckptを生成したsafetensorsに、スクリプトのlightx2v_pathとmodel_pathを実在フォルダーに合わせます。model_pathは元モデルの場所です。SM120演算子を含むlightx2v-kernelが必要で、RTX 3090やDGX Sparkへのコピーで同じ対応や加速は得られません。
python tools/convert/converter.py \
--source /path/to/Qwen-Image-2.1/transformer \
--output /path/to/Qwen-Image-2.1-fp8-f16-accum \
--output_name qwen_image_21_fp8_f16_accum \
--model_type qwen_image_21_dit \
--quantization_profile qwen-image-21-fp8-f16-accum \
--quantized --linear_type fp8 --device cuda:0 --single_file
# Set the checkpoint path in the JSON config and model paths in the script first.
bash scripts/qwen_image_21/qwen_image_21_t2i_fp8_f16_accum_5090.sh
解像度を上げたら急に遅くなった場合
一辺2倍を待ち時間2倍と考えると大きく外れます。Diffusers NF4の記録は1Kの19.2秒から2Kの118.8秒へ、Mac Q8は156秒から1094秒へ増えます。演算とメモリ配置が一緒に変わるためです。解像度は補足ではなく、比較の中心条件です。
体験画面は1024・1536・2048を分け、専用の解像度補正を使います。5090最適化の高解像度は1K記録と別環境の増加傾向からの推定で、2K実測とは表示しません。候補選びは1K、最終確認は大きな出力に分けると、買い替えず待ち時間を減らせます。
GPU2枚と大容量Macの利点は同じではない
GPU2枚で別々の作業を並列実行できても、1枚の完成時間が半分になるとは限りません。一つの処理の分散には実行環境の対応と通信が必要です。当サイトのプリセットは単一GPU経路なので、2×5090でもメモリを合算したり1枚の時間を半分にはしません。
大容量Macはモデルや他作業を同時に載せやすい一方、画像生成はGPU演算量とMetal実装の影響が大きくなります。手持ちMacで数枚なら待って始められます。数十枚を反復するならNVIDIA最適化を比較する理由があります。用途と回数なしに一台を断定するのは難しいところです。

自分の記録とサイトの推定を合わせる
読み込み後の生成と、ダウンロード・初回ロードを分けます。プロンプト、seed、ステップ、解像度を固定して3回以上実行し、中央値を残します。GPU、生成本体とエンコーダーの精度、オフロード9、実行版も記録すると再現しやすくなります。
5090は公開最適化記録を基準に、他のNVIDIAは一般NF4経路の相対推定を表示します。Macは別のGGUF記録と幅を持たせたチップ別推定です。未確認のGB10時間やスワップ支配の条件は無理に数値化しません。待ち時間と、実際に使う実行方式を確認してから購入を判断します。
用語の注釈
量子化 — モデルの数値を少ないビット数で表す方法です。メモリ使用量のほか、精度や実行速度も変わることがあり、影響は形式と実装によります。
本文に戻るFP8 — 8ビット浮動小数点形式の総称です。具体的な形式や対応範囲はハードウェアとソフトウェアによって異なります。
本文に戻るFP16 — 16ビット浮動小数点形式です。BF16とビット幅は同じですが、指数部と仮数部の配分が異なります。
本文に戻るCPU — コンピューターで汎用のプログラム命令を実行する中央処理装置です。AI処理ではGPUなど他のプロセッサーと役割を分けることがあります。
本文に戻るGPU — 多くの計算を並列に処理するプロセッサーです。AIモデルの実行ではモデル計算を担います。
本文に戻るGGUF — モデル情報を格納するファイル形式で、llama.cpp系のツールで広く使われます。形式だけで特定ハードウェアへの対応や速度が保証されるわけではありません。
本文に戻るCUDA — NVIDIA GPUで汎用計算を行うソフトウェア基盤です。CUDA向けのプログラムが他のGPUでそのまま動くとは限りません。
本文に戻るDiT — Diffusion Transformerの略です。Transformer構造を使い、拡散過程でノイズを含む表現を段階的に整えるモデル構造です。
本文に戻るオフロード — 容量が足りないとき、モデルデータの一部をGPUメモリからシステムRAMやストレージへ移して処理する方法です。データ転送が追加されます。
本文に戻る