陂何优化CentOS的Stable Diffusion

AI技术
小华
2026-10-20

在 CentOS 上优化 Stable Diffusion(SD) 的性能,主要从 系统、驱动、Python 环境、模型加载与推理参数 几个方面入手。下面按实战角度给你一套可落地的优化方案。

一、系统层面优化(CentOS)

1. 使用合适的 CentOS 版本

  • 推荐使用 CentOS 8 Stream / Rocky Linux 8/9(CentOS 7 太老,CUDA 支持差)
  • 内核尽量 ≥ 5.x(支持更好 GPU 调度)
uname -r

2. 关闭无用服务

systemctl disable --now firewalld
systemctl disable --now tuned

3. 调整文件描述符与内存

echo "* soft nofile 1048576" >> /etc/security/limits.conf
echo "* hard nofile 1048576" >> /etc/security/limits.conf

二、GPU 与驱动优化(核心)

1. 安装正确的 NVIDIA 驱动

nvidia-smi

推荐使用 525+ 驱动

2. 安装 CUDA / cuDNN

建议组合:

  • CUDA 11.8 + cuDNN 8.7(最稳)
  • 或 CUDA 12.1(新卡)
nvcc -V

3. 启用 GPU 持久模式

nvidia-smi -pm 1

4. 设置性能模式

nvidia-smi -ac 1215,1410  # 示例,按显卡调整

三、Python 环境优化

1. 使用 Miniconda(强烈推荐)

conda create -n sd python=3.10
conda activate sd

2. 安装优化版 PyTorch

pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

3. 启用 xFormers(关键提速)

pip install xformers

在启动参数中加入:

--xformers

四、Stable Diffusion 启动优化

1. WebUI(AUTOMATIC1111)推荐参数

python launch.py \
--xformers \
--medvram \
--opt-sdp-attention \
--disable-safe-unpickle \
--gradio-auth user:pass

显存不足时:

  • --lowvram
  • --medvram

2. 启用 SDP / TF32

torch.backends.cuda.matmul.allow_tf32 = True
torch.backends.cudnn.allow_tf32 = True

五、模型与推理优化

1. 使用 FP16 模型

  • 优先 v1-5-pruned-emaonly.ckpt
  • 或使用 .safetensors

2. 使用 LCM / Turbo 模型

  • 步数从 20–30 降到 4–8
  • 速度提升 3–5 倍

3. 控制分辨率

  • 最佳:512×512 / 768×768
  • 超过 1024 显存暴涨

六、存储与 IO 优化

1. 使用 NVMe SSD

模型加载是瓶颈之一

2. 模型缓存

export HF_HOME=/nvme/models

七、常驻服务优化(生产环境)

1. 使用 nohup / systemd

nohup python launch.py --xformers > sd.log 2>&1 &

2. 限制 CPU 占用(避免抢 GPU)

taskset -c 0-7 python launch.py

八、常见问题排查

问题解决
启动慢关 --skip-install 后清理环境
黑图驱动/CUDA 不匹配
爆显存开 --medvram
CentOS 7 报错升级系统

九、推荐组合(实测稳定)

  • CentOS 8 Stream
  • RTX 3060 / 4090
  • CUDA 11.8
  • xFormers + SDXL Turbo

如果你愿意,可以告诉我:

  • CentOS 版本
  • 显卡型号
  • 用的是 WebUI 还是 ComfyUI

我可以直接给你 一份可复制的优化启动脚本。

亿速云提供售前/售后服务

售前业务咨询

售后技术保障

400-100-2938

7*24小时售后电话

官方微信小程序