GigaHires Debug Print
The pack's built-in X-ray
- text
Every GigaHires node spits out a debug_info output - a JSON string that tells you what it actually did, what sizes it resolved to, and how long each stage took. This node is how you read that without squinting at the graph. It prints any string to your ComfyUI console and passes the string through unchanged, so it doubles as a pass-through tap.
How it works
Nothing clever. It takes text (the multiline string to dump) and a label (default "GigaHires Debug"), prints [label] followed by the text to the server console, then returns the text untouched. That's the whole job.
The pack author built it for a very specific purpose, per the project notes: to inspect refine-pass sample time, refine-pass decode time, upscaler timings, and whether an upscale model was loaded internally or from the dropdown. When you're trying to figure out why a hires pass is slow or why the result is blocky, that JSON is the first place to look.
How to use it
Wire the debug_info output of any GigaHires node into text, give each print a distinct label ("latent upscale", "refine pass", …), and watch the terminal that's actually running ComfyUI - the browser frontend won't show it. The output also continues on as text, so you can chain it inline without breaking the graph.
Two ComfyUI realities to keep in mind:
- It prints to the server console, not the UI. If you're running ComfyUI as a service or in Docker, the output goes where that process's stdout goes. Expecting it in the browser is the classic mistake.
- Nodes whose outputs are needed by nothing will be pruned. If the only consumer of a
debug_infostring is this print node, ComfyUI may skip it entirely. Keep thetextoutput wired onward into something that executes - a text display node, or even another GigaHires node - or the print won't fire.
Why it exists at all
This is a debugging helper, not a production stage. It exists because the pack's whole philosophy is "keep the passes visible." A coordinator node hides its internals; the helper-node workflow exposes each step, and this print is how you look inside the steps that aren't obvious from the graph. In a graph where timing matters - and in this pack, the second-pass sampler is the cost center - being able to see timings_ms per stage is what turns a mystery into a fix.
Install
Same as every node in this pack: Manager → search "comfyui-hires", or
cd ComfyUI/custom_nodes
git clone https://github.com/Enferlain/comfyui-hires
then restart. No pip dependencies, but you do need a recent ComfyUI - the pack runs on the native extension API, and older builds won't load it.
If nothing prints when you expect it to, check that something downstream is actually consuming the string, and that you're watching the right console. Both are user error in the good sense - the node itself is about as failure-proof as a print() statement.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| label | STRING | GigaHires Debug | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |