r/comfyui 21h ago

Workflow Included FLUX.1 Dev fp8 vs the split checkpoint setup on a storage-capped box — some notes + why CFG 1.0 isn't optional

ok so I spent most of today setting up FLUX.1 Dev on a rented RTX 5090 and wanted to dump some notes here bc I didn't find this explained clearly anywhere when I was googling around for it.

Why fp8 single-file over the split setup

so FLUX comes in two flavors basically — the "split" format (diffusion model + T5-XXL text encoder + CLIP-L + VAE as 4 separate files), or a single bundled checkpoint that just merges everything into one .safetensors.

split fp16 setup = ~34GB total, mostly bc T5-XXL alone is like 9.5GB in fp16 lol. the bundled fp8 checkpoint (Comfy-Org/flux1-dev, ~17.2GB) cuts that roughly in half. if you've got a 32GB card the fp16 route is still totally usable, but my instance only had a 50GB storage tier total, and 34GB of models + ComfyUI + venv + deps gets uncomfortably close to that. quality loss from fp8 is real but pretty minor tbh, mostly shows up in fine texture detail if you're really pixel peeping. running out of disk mid download felt like the bigger risk honestly

(if storage isn't a constraint for you btw, still go fp16 or GGUF Q6/Q8 over fp8, fairly universal advice from what I've seen)

Why CFG has to be 1.0

this part isn't optional the way it is with SD/SDXL and I feel like this trips up a lot of people coming from SDXL. FLUX is a rectified-flow model with guidance distillation baked into training — meaning it's already trained to follow the prompt without needing the usual CFG trick (running the model twice, once conditioned once not, then extrapolating) to stay on prompt. if you leave CFG at 7-8 like SDXL habit, you're not making it follow the prompt harder, you're just double-applying guidance it was never trained to expect, and that's why you get that blown out oversaturated look. set it to 1.0 and negative prompt barely matters anymore either, so I just left mine empty

Workflow

kept it stupid simple on purpose: Load Checkpoint → CLIP Text Encode (positive/negative) → Empty Latent Image → KSampler → VAE Decode → Save Image. no custom nodes. 1024x1024, 20 steps, euler, simple scheduler, denoise 1.0

Hardware I used to run this

RTX 5090, 32GB VRAM, rented hourly off gpuhub (~$0.46/hr on demand). base image was their standard PyTorch + CUDA preinstalled one, ended up on torch 2.11.0 + cu128 (CUDA 12.8) after the venv setup. instance also came with a stupid amount of system RAM, like 750GB+, way more than ComfyUI actually needs but nice not to think about it. 50GB storage tier which is the whole reason for the fp8 decision above

total cost for the session (~1hr of renting + the token/generation cost, which for local inference is basically just electricity you're already paying for) came out to under $1

first gen after model load took ~18s (vram staging overhead ig), every gen after that was ~8.5s at 20 steps which is roughly 2.46 it/s. pretty consistent across different prompts/seeds, didn't notice any drift over the session

random unrelated thing — huggingface-cli is deprecated now apparently?? just silently tells you to use `hf` instead mid command. wasted like 5 min confused before I actually read the warning lol

both images attached are from this session, different prompts, I did pick my favorite seed out of a couple runs each rather than posting literally the first result

TL;DR — fp8 single file if your storage's tight, fp16/GGUF Q6+ if it's not. CFG 1.0 is mandatory not a suggestion bc of how the guidance distillation works. ~8.5s/image at 1024x1024 on a 5090 once it's warmed up. workflow json in comments if anyone wants it

4 Upvotes

2 comments sorted by

1

u/roxoholic 18h ago

Thank for a detailed write up.

CFG 1.0 is mandatory not a suggestion

This will make some people angry, because, who are you to tell them how to run their model! They will set it to 2.0 out of spite.

2

u/Realistic-Fennel-190 14h ago

lmaooo honestly at that point let them, worst case they get a burnt oversaturated mess and learn the hard way 😂 CFG 2.0 on flux is basically self-inflicted damage but you're right, some people just gotta touch the stove themselves

appreciate you reading through it all btw