42 UK Research · US-English compatibility bridge

SDXL for Beginners: ComfyUI Low VRAM Guide

A decision record for separating compatibility, workload failure, and measurement disagreement. Geography does not change ComfyUI’s technical support conditions.

Published · Evidence rewrite reviewed

Certification status: retained bridge page; temporarily noindex while evidence and locale checks are completed.

Make one decision before changing settings

Start by deciding which question you are answering. A compatibility question asks whether the current official requirements cover an operating system and accelerator. A workload question asks where a fixed workflow fails. A measurement question asks what a defined metric observed. Treating those as one question encourages unsupported conclusions.

Decision 1: Is the route currently supported?

Check the official ComfyUI system requirements. Record the operating system, accelerator, driver or backend, Python and PyTorch versions. Do not infer support from a US product listing or a family name.

Decision 2: Can one baseline be reconstructed?

Freeze the workflow, model files, prompt, seed, dimensions, batch, steps, sampler, scheduler and output. Hash the workflow, models and output and retain the exact ComfyUI revision and command.

Decision 3: Where does the baseline fail?

Keep the full console message and label the stage: startup, loading, sampling, decoding, or output validation. The stage determines the next question; “out of memory” alone is not a complete record.

Decision 4: Which single documented condition is next?

The protocol includes --lowvram, --preview-method none, one declared workload reduction, and --cpu as a compatibility fallback. Confirm current official documentation and compare only one condition at a time.

Use a decision record, not a recommended stack

QuestionEvidence to retainConclusion allowed
Did the candidate complete?Exact outcome check, console log, output hash, and every failure.Completion or failure for this recorded workload and environment.
What did PyTorch report?max_memory_allocated() with units and reset/measurement boundary.Peak tensor memory tracked by the CUDA allocator during that boundary.
What did the device tool report?For NVIDIA, the documented nvidia-smi query, sample interval, and caveats.Highest sampled device value during the declared interval.
Was the result stable?Warm-up policy, all measured repetitions, raw samples, median, range, and success rate.The protocol’s observed, incomplete, or reproduced label—never a universal guarantee.

Why the two memory readings can differ

PyTorch defines torch.cuda.max_memory_allocated() around tensors tracked by its allocator. It does not claim to represent every allocation visible to the device, runtime, or driver. A device tool takes samples, so its maximum also depends on the sampling interval. Preserve both readings with their own names instead of choosing whichever supports a preferred story.

When a test is not ready to publish

The controlled method asks for an unreported warm-up and five measured repetitions, restarts between run families, and labels fewer than three successful repetitions incomplete. “Reproduced” requires a second clean run reaching the same defined outcome category.

Procurement boundary: with zero qualifying rows, this page cannot tell a US reader which product to buy. It can show what evidence a product-specific claim would need.

Primary sources and controlled assets

Related route

The main English beginner route explains how to establish a baseline. The measurement-first guide goes deeper into run families and evidence labels. This US-English page remains focused on the compatibility decision record.