Overview
stable-diffusion.cpp is a C/C++ implementation based on ggml for running diffusion models like Stable Diffusion. It supports a range of image models including SD1.x, SD2.x, SDXL, SD3, FLUX, Qwen Image, and Z-Image, as well as video models like Wan2.1/Wan2.2. The library offers features like Control Net and LoRA support, latent consistency models (LCM), and faster decoding with TAESD. It supports CPU (with AVX, AVX2, AVX512), CUDA, Vulkan, Metal, OpenCL, and SYCL backends. Weight formats include Pytorch checkpoints, Safetensors, and GGUF. The project aims for cross-platform reproducibility with configurable RNGs. It uses stable-diffusion-webui style tokenizers and VAE tiling for reduced memory usage, making it suitable for local diffusion applications.
