Stable Diffusion显卡性能测试与优化指南
一 测试标准与关键指标
- 分辨率与步数:优先采用512×512、20步作为标准基准;进阶可测768×768、50步以观察显存与带宽影响。
- 采样器:以Euler a / DPM++ 2M SDE Karras为常用对照;不同采样器速度差异可达约2倍。
- 精度与加速:启用xformers、FP16;在WebUI中可开启“优化模式”。
- 指标口径:记录单张生成时间(秒)、吞吐量(张/分钟)、显存占用(GB);必要时补充每秒迭代数(its/s)用于跨平台对比。
- 显存与分辨率经验值:8GB可流畅跑512×512;12GB支持768×768;16GB+更从容应对1024×1024与多任务。
二 主流显卡性能对比
| 显卡 | 512×512 20步 单张时间(秒) | 吞吐量(张/分钟) | 备注 |
|---|
| RTX 4090 | 2.8 | 21.4 | 旗舰级,速度/显存全面领先 |
| RTX 4070 Ti | 4.1 | 14.6 | 高性价比 |
| RTX 3090 | 5.2 | 11.5 | 大显存,适合高分辨率 |
| RTX 3080 | 6.8 | 8.8 | 主流创作 |
| RTX 3060 | 12.5 | 4.8 | 入门可用 |
| RX 6900 XT | 11.2 | 5.4 | AMD同级中表现较好 |
| RX 6700 XT | 18.7 | 3.2 | 预算向 |
| Arc A770 16GB | — | 15.4 | 768×768对比:约为4090的1/6.4 |
| GTX 1080 Ti | 9.7 | — | 旧卡参考(官方脚本) |
注:不同测试脚本/步数/采样器会导致数值差异,上表用于横向定位性能档位。
三 复杂场景与显存影响
- 768×768“Tag抽卡”(SD1.5,Euler a,50步):RTX 4090 ≈ 19.73 张/分钟;RTX 3090 Ti约为其0.57×;RTX 4070可略超RTX 3080。
- ControlNet Tile高清修复(512→1280,DPM++ 2M SDE Karras,30步):RTX 4090 ≈ 5.45 张/分钟;显存占用峰值约9.1GB,因此8GB显存在此场景易受限,12GB+提升更明显。
- 底模+多LoRA+高分辨率修复(512×768→1024×1536):RTX 4090 ≈ 3.75 张/分钟,算力需求显著上升。
- 分辨率提升对AMD/Intel更敏感:768×768下,AMD RX 7600较RX 7700 XT慢44%;Arc A770 16GB仅为RTX 4090的约1/6.4。
四 可复现的测试流程
- 环境与模型:
- WebUI方案:更新至最新版 AUTOMATIC1111/stable-diffusion-webui;模型选SD v1.5;启动参数加入--xformers;设置FP16。
- 脚本方案:基于官方仓库,使用txt2img.py;配置文件v1-inference.yaml;精度autocast。
- 标准用例A(快速对比):512×512、20步、Euler a、Batch=1,每卡测5次取平均,记录秒/张、张/分钟、VRAM。
- 标准用例B(进阶压力):768×768、50步、Euler a,观察显存占用与吞吐变化;若显存不足,降低分辨率或步数。
- 进阶用例(功能与显存):
- ControlNet Tile:原生512×512→输出1280×1280,30步,记录秒/张与显存峰值。
- 高分辨率修复:原生512×768→1024×1536,叠加多LoRA,评估复杂工作流吞吐。
五 提速与稳定性优化
- 必做优化:启用xformers;使用FP16与“优化模式”;在保证质量前提下将步数从50调至30–40;采样器优先Euler a / DPM++ SDE Karras。
- 加速方案对比:在RTX 3090/4090上,OneFlow相对xformers可达约+205%~+211%的加速;TensorRT / Aitemplate亦能带来可观提升(需适配环境)。
- 分辨率与显存:优先在8/12/16GB显存卡上分别选择512/768/1024级别;必要时降低分辨率或步数,或关闭不必要插件。
- 其他:保持CUDA/cuDNN与驱动为较新版本;系统RAM≥16GB更稳;CPU对整体时延影响较小但在队列/预处理阶段仍有帮助。