2025-10-16 21:04:41 +08:00
2025-10-17 21:46:39 +08:00
2024-01-29 23:05:18 +08:00
2023-08-22 22:14:20 +08:00
2023-08-13 16:00:22 +08:00
2024-07-28 15:44:08 +08:00

stable-diffusion.cpp

leejet%2Fstable-diffusion.cpp | Trendshift

Diffusion model(SD,Flux,Wan,...) inference in pure C/C++

Note that this project is under active development.
API and command-line option may change frequently.

🔥Important News

  • 2025/10/13 🚀 stable-diffusion.cpp now supports Qwen-Image-Edit / Qwen-Image-Edit 2509
    👉 Details: PR #877

  • 2025/10/12 🚀 stable-diffusion.cpp now supports Qwen-Image
    👉 Details: PR #851

  • 2025/09/14 🚀 stable-diffusion.cpp now supports Wan2.1 Vace
    👉 Details: PR #819

  • 2025/09/06 🚀 stable-diffusion.cpp now supports Wan2.1 / Wan2.2
    👉 Details: PR #778

Features

  • Plain C/C++ implementation based on ggml, working in the same way as llama.cpp
  • Super lightweight and without external dependencies
  • Supported models
  • Supported backends
    • CPU (AVX, AVX2 and AVX512 support for x86 architectures)
    • CUDA
    • Vulkan
    • Metal
    • OpenCL
    • SYCL
  • Supported weight formats
    • Pytorch checkpoint (.ckpt or .pth)
    • Safetensors (./safetensors)
    • GGUF (.gguf)
  • Supported platforms
  • Flash Attention for memory usage optimization
  • Negative prompt
  • stable-diffusion-webui style tokenizer (not all the features, only token weighting for now)
  • VAE tiling processing for reduce memory usage
  • Sampling method
  • Cross-platform reproducibility (--rng cuda, consistent with the stable-diffusion-webui GPU RNG)
  • Embedds generation parameters into png output as webui-compatible text string

Quick Start

Get the sd executable

Download model weights

Generate an image with just one command

./bin/sd -m ../models/v1-5-pruned-emaonly.safetensors -p "a lovely cat"

For detailed command-line arguments, check out cli doc.

Performance

If you want to improve performance or reduce VRAM/RAM usage, please refer to performance guide.

Bindings

These projects wrap stable-diffusion.cpp for easier use in other languages/frameworks.

UIs

These projects use stable-diffusion.cpp as a backend for their image generation.

Contributors

Thank you to all the people who have already contributed to stable-diffusion.cpp!

Contributors

Star History

Star History Chart

References

Languages
C++ 100%