Debug
To run SD.Next in debug mode, start it with --debug
flag
This has no overhead and can be safely used in daily operations as it just prints additional information to logs
Example:
webui.bat --debug
webui.sh --debug
Extra Debug
Some debug information would be too much for regular use, so it can be enabled by use of environment variables:
Install & load
SD_INSTALL_DEBUG
: report detailed information related to packages installationSD_PATH_DEBUG
: report all used paths as they are parsedSD_SCRIPT_DEBUG
: increase verbosity of script and extension load and executionSD_MOVE_DEBUG
: trace all model moves from and to cpu/gpuSD_EXT_DEBUG
: trace extensions load/install/update operationsSD_LOAD_DEBUG
: report all model loading operations as they happenSD_PIP_DEBUG
: report details about all pip operationsSD_CONFIG_DEBUG
: report all configuration processing requests
Core processing
SD_DISABLE_PBAR
: disable progress bar for all operationsSD_PROCESS_DEBUG
: print detailed processing informationSD_DIFFUSERS_DEBUG
: increase verbosity of diffusers processingSD_LDM_DEBUG
: increase verbosity of LDM processingSD_CONTROL_DEBUG
: report all debug information related to control moduleSD_PROMPT_DEBUG
: print all prompt parsing and encoding informationSD_SAMPLER_DEBUG
: report all possible sampler settings for selected samplerSD_STEPS_DEBUG
: report calculations done to scheduler stepsSD_VAE_DEBUG
: report details on all VAE operations
Networks
SD_EN_DEBUG
: report all extra networks operations as they happenSD_LORA_DEBUG
: increase verbosity of LoRA loading and execution
Other
SD_PASTE_DEBUG
: report all params paste and parse operations as they happenSD_HDR_DEBUG
: print HDR processing informationSD_MASK_DEBUG
: reported detailed information on image masking operations as they happenSD_DOWNLOAD_DEBUG
: report detailed information on model download operations as they happenSD_CALLBACK_DEBUG
: report each step as it executes with full detailsSD_BROWSER_DEBUG
: report all gallery operations as they happenSD_NAMEGEN_DEBUG
: report all filename generation operations as they happenSD_PULID_DEBUG
: debug logging for pulid operationsSD_PREVIEW_DEBUG
: debug logging for live preview operations
Example Windows:
set SD_PROCESS_DEBUG=true
webui.bat --debug
Example Linux:
export SD_PROCESS_DEBUG=true
webui.sh --debug
Additional information enabled via env variables will show in log with level TRACE
Profiling
To run SD.Next in profiling mode, start it with --profile
flag
This does have overhead, both on processing and memory side, so its not recommended for daily use
SD.Next will collect profiling information from both Python, Torch and CUDA and print it upon completion of specific operations
Example:
webui.bat --debug --profile
webui.sh --debug --profile
Crashes
If SD.Next crashes during its code, it will produce traceback in the console output
If traceback is not present and process simply exited that typically means that process crashed on the system side and app-level traceback cannot be captured
In that case, please check system logs for more information:
- Linux: kernel logs
dmesg -ku
- Windows: Event Viewer -> Windows Logs -> Application/System
Tracebacks
If runtime error occurs during SD.Next processing, traceback will be printed in the console output
Level of information in the traceback can be further increased by setting env variables:
- SD_TRACELINES
: number of extra lines to show around the error line
- SD_TRACEFRAMES
: number of frames to show in the traceback
- SD_TRACEWIDTH
: width of the traceback output
- SD_TRACEWRAP
: enable word wrapping in the traceback
- SD_TRACEINDENT
: enable indent guides in the traceback
- SD_TRACELOCALS
: show local variables in the traceback
- SD_TRACEDUNDER
: show dunder variables in the traceback locals
- SD_TRACESUNDER
: show single underscore variables in the traceback locals