Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/lllyasviel/Fooocus/llms.txt

Use this file to discover all available pages before exploring further.

Fooocus runs on Apple Silicon Macs (M1 and M2) through PyTorch’s MPS (Metal Performance Shaders) backend, which uses the integrated GPU built into Apple Silicon chips. Because these chips share memory between the CPU and GPU rather than having a dedicated VRAM pool, and because the MPS backend is less optimised than CUDA, image generation is significantly slower than on a dedicated Nvidia GPU — roughly 9× slower than an Nvidia RTX 3XXX. Mac support is unofficial and community-maintained.

Requirements

RequirementDetails
ChipApple M1 or M2 (Apple Silicon)
macOSCatalina or newer
Package managerConda (Anaconda or Miniconda)
MemoryShared system/GPU memory — 16 GB unified memory recommended
Docker on Mac does not support the MPS backend. If you want to run Fooocus on a Mac, you must install it natively using the steps below. See the PyTorch issue tracker for the current status of MPS in Docker.

Installation Steps

1

Install Conda and PyTorch with MPS support

Install Miniconda or Anaconda for macOS (Apple Silicon / arm64 build).Then follow the Accelerated PyTorch training on Mac guide from Apple Developer to install PyTorch nightly with MPS support. Verify that PyTorch can see your MPS device before continuing:
import torch
print(torch.backends.mps.is_available())  # Should print: True
2

Clone the Fooocus repository

Open the macOS Terminal app and clone the repository:
git clone https://github.com/lllyasviel/Fooocus.git
3

Change into the Fooocus directory

cd Fooocus
4

Create the Conda environment

conda env create -f environment.yaml
5

Activate the environment

conda activate fooocus
6

Install Python dependencies

pip install -r requirements_versions.txt
7

Launch Fooocus

python entry_with_update.py
On the first run, Fooocus automatically downloads the default SDXL checkpoint. This may take a significant amount of time depending on your internet connection. Once ready, the web UI is available at http://127.0.0.1:7865.

Presets

Use the --preset flag to launch with the Anime or Realistic model preset:
python entry_with_update.py --preset anime
python entry_with_update.py --preset realistic

M2 Performance Tip

Some Apple M2 users report faster model loading and unloading by passing the --disable-offload-from-vram flag:
python entry_with_update.py --disable-offload-from-vram
Try this flag if you notice Fooocus spending a long time swapping models between memory tiers.

Performance Expectations

Mac performance using MPS is substantially lower than dedicated GPU hardware. Use the table below to calibrate expectations:
HardwareRelative speed
Nvidia RTX 3XXX (baseline)
AMD GPU via ROCm (Linux)~1.5× slower
AMD GPU via DirectML (Windows)~3× slower
Apple M1/M2 via MPS~9× slower
CPU only~17× slower
Fooocus is designed for high-quality SDXL image generation and will not reduce model size or quality to compensate for slower hardware. For a smoother experience, an Nvidia GPU with at least 4 GB VRAM is recommended.

Build docs developers (and LLMs) love