mirror of
https://github.com/Comfy-Org/desktop.git
synced 2026-11-04 23:47:43 +00:00
[GH-ISSUE #1113] [Bug]: SageAttention not working, and/or Triton not being utilised correctly. #307
Labels
No labels
area: desktop-app
Bounty
bug
bug-cop:answered
bug-cop:response-received
component: installer
component: preload
custom node
dependencies
Design
documentation
duplicate
enhancement
expected
frontend
good first issue
installation
Low-Priority
performance
Planned
platform: cross-platform
platform: windows
Potential Bug
Potential Bug
pull-request
question
refactor
Release
stale
User Support
V1
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/desktop#307
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @StudioNirin on GitHub (Apr 23, 2025).
Original GitHub issue: https://github.com/Comfy-Org/desktop/issues/1113
App Version
comfyui - 0.3.29
comfyui desktop - 0.4.29
Expected Behavior
SageAttention should speed up generation time. Should be possible to choose either the Cuda or Triton setups for sage. (I believe)
Actual Behavior
The actual generation times are the same, whether I have sage patched to be disabled or on 'auto' using kj nodes.
Compared to a comfyui portable install (that also has sage and triton installed) the generation speed is slower on the desktop version.
I have installed sageattention2 and triton by using the pip commands for each.
This is about as far as I managed to get instruction for, on the desktop app version of comfy. Seems very hard to find any documentation for it.
Steps to Reproduce
Brand new install of comfyui desktop.
pip install -U --pre "torch>2.7" torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu128
pip install -U --pre triton-windows
pip install sageattention
kj nodes -> patch sage -> run workflow, test times.
Debug Logs
Browser Logs
litegraph.es.js:13360 replacing node type: Image Bounds to Console
litegraph.es.js:13360 replacing node type: Text Dictionary Update
litegraph.es.js:13360 replacing node type: Text Dictionary Get
litegraph.es.js:13360 replacing node type: Text Dictionary Convert
litegraph.es.js:13360 replacing node type: Text Dictionary New
litegraph.es.js:13360 replacing node type: Text Dictionary Keys
litegraph.es.js:13360 replacing node type: Text Dictionary To Text
litegraph.es.js:13360 replacing node type: Text Add Tokens
litegraph.es.js:13360 replacing node type: Text Add Token by Input
litegraph.es.js:13360 replacing node type: Text Compare
litegraph.es.js:13360 replacing node type: Text Concatenate
litegraph.es.js:13360 replacing node type: Text File History Loader
litegraph.es.js:13360 replacing node type: Text Find and Replace by Dictionary
litegraph.es.js:13360 replacing node type: Text Find and Replace Input
litegraph.es.js:13360 replacing node type: Text Find and Replace
litegraph.es.js:13360 replacing node type: Text Find
litegraph.es.js:13360 replacing node type: Text Input Switch
litegraph.es.js:13360 replacing node type: Text List
litegraph.es.js:13360 replacing node type: Text List Concatenate
litegraph.es.js:13360 replacing node type: Text List to Text
litegraph.es.js:13360 replacing node type: Text Load Line From File
litegraph.es.js:13360 replacing node type: Text Multiline
litegraph.es.js:13360 replacing node type: Text Multiline (Code Compatible)
litegraph.es.js:13360 replacing node type: Text Parse A1111 Embeddings
litegraph.es.js:13360 replacing node type: Text Parse Noodle Soup Prompts
litegraph.es.js:13360 replacing node type: Text Parse Tokens
litegraph.es.js:13360 replacing node type: Text Random Line
litegraph.es.js:13360 replacing node type: Text Random Prompt
litegraph.es.js:13360 replacing node type: Text String
litegraph.es.js:13360 replacing node type: Text Contains
litegraph.es.js:13360 replacing node type: Text Shuffle
litegraph.es.js:13360 replacing node type: Text Sort
litegraph.es.js:13360 replacing node type: Text to Conditioning
litegraph.es.js:13360 replacing node type: Text to Console
litegraph.es.js:13360 replacing node type: Text to Number
litegraph.es.js:13360 replacing node type: Text to String
litegraph.es.js:13360 replacing node type: Text String Truncate
litegraph.es.js:13360 replacing node type: True Random.org Number Generator
litegraph.es.js:13360 replacing node type: unCLIP Checkpoint Loader
litegraph.es.js:13360 replacing node type: Upscale Model Loader
litegraph.es.js:13360 replacing node type: Upscale Model Switch
litegraph.es.js:13360 replacing node type: Write to GIF
litegraph.es.js:13360 replacing node type: Write to Video
litegraph.es.js:13360 replacing node type: VAE Input Switch
litegraph.es.js:13360 replacing node type: Video Dump Frames
litegraph.es.js:13360 replacing node type: CLIPSEG2
litegraph.es.js:13360 replacing node type: SaveImageWebsocket
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
litegraph.es.js:13360 replacing node type: workflow>Flux Model
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
groupNode.ts:434 Skipping virtual node SetNode when building group node test
getNodeDef @ groupNode.ts:434
litegraph.es.js:13360 replacing node type: workflow>test
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.comfyui-impact-pack:ImpactSchedulerAdapter:scheduler is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:96 Use of defaultInput on optional input custom_nodes.comfyui-inspire-pack:LoadPromptsFromFile //Inspire:text_data_opt is deprecated. Please use forceInput instead.
#migrateDefaultInput @ nodeDefStore.ts:96
nodeDefStore.ts:96 Use of defaultInput on optional input custom_nodes.comfyui-inspire-pack:LoadSinglePromptFromFile //Inspire:text_data_opt is deprecated. Please use forceInput instead.
#migrateDefaultInput @ nodeDefStore.ts:96
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.comfyui-inspire-pack:RGB_HexToHSV //Inspire:rgb_hex is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
components-manager.js:770 Empty components: policy ignored
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
litegraph.es.js:13360 replacing node type: workflow>Flux Model
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
groupNode.ts:434 Skipping virtual node SetNode when building group node test
getNodeDef @ groupNode.ts:434
litegraph.es.js:13360 replacing node type: workflow>test
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.13343495997594057:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.13343495997594057:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.252598216406841:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.252598216406841:1
components-manager.js:770 Empty components: policy ignored
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
litegraph.es.js:13360 replacing node type: workflow>Flux Model
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:unet_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:ckpt_name is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
nodeDefStore.ts:85 Use of defaultInput on required input custom_nodes.Flux Model:workflow>Flux Model:1=unet / 2=ckpt is deprecated. Please drop the defaultInput option.
#migrateDefaultInput @ nodeDefStore.ts:85
groupNode.ts:434 Skipping virtual node SetNode when building group node test
getNodeDef @ groupNode.ts:434
litegraph.es.js:13360 replacing node type: workflow>test
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.9558096818559412:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.3441852441595339:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.417589544996257:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.9558096818559412:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.3441852441595339:1
:8004/api/view?type=input&filename=Screenshot+2025-03-29+051431.png&subfolder=&rand=0.417589544996257:1
use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
3use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
use_everywhere_utilities.js:134 node_in_loop made NaN checks
popup.js:280 Object
popup.js:280 Object
popup.js:280 Object
Settings JSON
comfy.settings.json
Other
No response
┆Issue is synchronized with this Notion page by Unito
@dosubot[bot] commented on GitHub (Sep 20, 2025):
Hi, @StudioNirin. I'm Dosu, and I'm helping the desktop team manage their backlog and am marking this issue as stale.
Issue Summary:
Next Steps:
Thank you for your understanding and contribution!