ArtificialGuyBR

Home / Blog / ComfyUI

ComfyUI Setup: Measure Speed, Compare GPUs, Run on CPU

Measure ComfyUI iterations per second, compare RunPod GPU costs, and run on CPU when you have no GPU.

4 sources cited ComfyUI

A Civitai author tested nine GPUs on RunPod using a single workflow, a fixed seed, three resolutions, and three step counts. The resulting per-video times looked clean — but the price data was already stale by the time the article published (source). If you're budgeting a project on those numbers, you're already wrong.

ComfyUI Setup: Measure Speed, Compare GPUs, Run on CPU

TL;DR

How to Measure ComfyUI Iterations Per Second Honestly

The Civitai benchmark (source) controlled the variables that matter. Here are the test conditions and what you need to replicate them:

ParameterSource Test ValueWhy It MattersHow to Fix It
WorkflowYet Another Workflow v0.36Different workflows have different node graphsFix the workflow; don't switch between cards
Seed561278855360750Different seeds = different compute pathsHard-code the seed in your KSampler node
Resolution1280×768, 640×896, 512×768VRAM and compute scale with pixel countTest exactly the resolution you'll use in production
Steps10, 8, 4Each step is a full UNet forward passTest the step counts you actually run
Frames61 per videoFrame count affects total computeMatch your target output length
Post-processing32fps GIMM interpolationInterpolation adds a fixed per-video costInclude it if your production pipeline does
Model loadingExcludedVaries by GPU, storage, and model sizeExclude it; time only from first denoise step to final decode
IterationsSingle run per configA single run is noiseRun each config at least 3× and average

If you change any variable between cards, you're not comparing GPUs — you're comparing configurations.

Compare Rented GPU Costs Before You Commit

RunPod's pricing page (runpod.io/pricing) lists these on-demand rates. The throughput numbers below come from the Civitai source (source):

GPUPrice/hrVRAMThroughput (source)Cost/video (source)
RTX 5090$0.9932 GB~39 videos/hr~$0.025
H100 SXM$2.6980 GB~56 videos/hr~$0.048

The H100 SXM delivers ~43% more throughput but costs ~2.7× more per hour (source). Your decision depends on whether time or money is the binding constraint.

Critical correction: The November 2025 source cited RTX 5090 at $0.89/hr (source). The current RunPod price is $0.99/hr (runpod.io/pricing). Never budget from a benchmark's price column; always check the live pricing page.

Performance at 1280×720, 4 steps

The source also reported per-GPU generation times at this resolution (source):

GPUSeconds/video
H100 SXM~172
RTX PRO 6000~243

Run ComfyUI on CPU When You Have No GPU

ComfyUI-cpu is a fork that removes all CUDA/GPU dependencies. Its README states it's "a trimmed down version of ComfyUI that uses the cpu only" for "cpu only web server, laptop with no gpu, older PCs, weak onboard gpus."

Installation (from the fork's README)

git clone https://github.com/ArdeniusAI/ComfyUI-cpu.git
cd ComfyUI-cpu
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt
python3 main.py --cpu --cpu-vae --auto-launch

The --cpu and --cpu-vae flags route inference through PyTorch CPU tensors instead of CUDA kernels. A Docker image is also available: ardenius/comfyui-cpu.

What to Expect

The fork provides no benchmark data. Community reports describe CPU-only generation as "extremely slow" with occasional crashes on complex workflows. For SD 1.5 with LCM LoRA (67.5M parameters, ~135 MB at fp16), expect minutes per image. Video generation and large models are impractical.

When CPU-Only Makes Sense

It does not work for video generation, large models, or any workflow requiring real-time iteration.

Key Technologies That Affect Your Benchmark

SageAttention

SageAttention (GitHub) fuses query, key, and value projections into a single CUDA kernel, reducing memory reads/writes on Hopper (SM90) and Blackwell (SM100) GPUs. The Civitai benchmark ran "CUDA 12.8 and SageAttention enabled" (source) — CUDA 12.8 is the minimum version supporting Blackwell. If you're benchmarking on RTX 5090 (Blackwell), you need CUDA 12.8+ and SageAttention to match the source's conditions.

LCM LoRA Reduces Steps

The Latent Consistency Model LoRA is a distilled adapter for SD 1.5. The model card states it "allows to reduce the number of inference steps to only between 2 - 8 steps" versus the typical 20–50. At 67.5M parameters and ~135 MB (model card), it fits any VRAM budget. In ComfyUI, swap the sgm-uniform scheduler for the LCM scheduler to enable this.

Blockswap Extends VRAM

For large models that exceed GPU VRAM, blockswap keeps the active expert block in GPU memory while streaming the next block from system RAM. The source tested only GPUs that could load the full model without blockswap: "With blockswap, you can use slower GPU's" (source). If your GPU can't fit the entire model, you'll need blockswap — but it adds latency.

GIMM-VFI Interpolation

GIMM generates intermediate frames between keyframes. The Civitai benchmark used "32fps GIMM interpolation" as post-processing (source): the video model generates at a lower native frame rate, GIMM synthesizes the missing frames to reach 32fps output.

Common Errors and Fixes

SymptomCauseFix
Budget based on $0.89/hr for RTX 5090Source used Nov 2025 pricing (source)Check RunPod pricing before budgeting
L40S budget using $0.86/hrL40S not on current RunPod pricingVerify GPU availability on live pricing page
"SD 1.5 LCM model 2.1 GB" confusion2.1 GB likely refers to full SD 1.5 checkpoint, not the ~135 MB LoRAThe LCM LoRA weights are ~135 MB
Benchmarking at wrong resolutionVRAM allocation patterns differ by resolutionTest exactly your production resolution

FAQ

How do I measure iterations per second in ComfyUI?

Fix the seed, resolution, and step count. Time from first denoise step to final decode. Run each config at least 3× and average. Exclude model loading time. See the measurement table above for the full parameter list.

What is the cheapest GPU for ComfyUI on RunPod?

Check RunPod's pricing page for current rates — multiple tiers are listed there, with the L4 typically the lowest per-hour cost.

Can I run ComfyUI without any GPU?

Yes. ComfyUI-cpu removes CUDA dependencies and runs on CPU via PyTorch CPU tensors. Launch with --cpu --cpu-vae. Expect minutes per image. Works for SD 1.5 with LCM LoRA; not practical for video or large models.

How does SageAttention speed up ComfyUI?

Fuses attention computation into one CUDA kernel (GitHub), reducing memory reads/writes. Targets Hopper and Blackwell; requires CUDA 12.8+ for Blackwell.

What is blockswap and when do I need it?

Offloads model layers between GPU VRAM and system RAM during inference. Needed when a model exceeds your GPU's VRAM. Adds latency but enables otherwise impossible workloads.

How many steps does LCM LoRA need?

Model card states 2–8 steps. Most workflows use 4 as the sweet spot. Fewer steps = faster but visible quality loss; more steps = approach standard diffusion quality but lose speed advantage.

Should I rent H100 SXM or RTX 5090 for video?

H100 SXM: $2.69/hr, ~56 videos/hr (source). RTX 5090: $0.99/hr, ~39 videos/hr (source). H100 is ~43% faster but ~2.7× costlier per hour. Choose RTX 5090 for cost efficiency, H100 when time is the binding constraint.

Sources

SourceContributionURL
RunPod Pricing PageCurrent GPU rental prices (RTX 5090 $0.99/hr, H100 SXM $2.69/hr)https://www.runpod.io/pricing
ArdeniusAI/ComfyUI-cpuCPU-only fork docs, install instructions, launch flags (--cpu --cpu-vae)https://github.com/ArdeniusAI/ComfyUI-cpu
LCM LoRA SDv1.5 Model CardParameter count (67.5M), step reduction (2–8), fp16 file size (~135 MB)https://huggingface.co/latent-consistency/lcm-lora-sdv1-5
SD 1.5 Base ModelBase model identifier for LCM LoRA adapterhttps://huggingface.co/runwayml/stable-diffusion-v1-5
ComfyUI Official READMECPU mode flags, LCM support, system requirementshttps://github.com/comfyanonymous/ComfyUI

Read more: ComfyUI Workflow Optimization Compare GPU Options for AI Workloads Set Up Production ComfyUI Deployments