
[Stable Diffusion] PyTorchã®ããŒãžã§ã³ã«ãã£ãŠãç»åã¯å€ãããŸãã
ããã³ããããµã³ãã©ãŒãã¹ãããæ°ãseedãªã©ãç»åãã¡ã€ã«ã®ã¡ã¿ããŒã¿ã«èšé²ããããããªåçš®ã®ãã©ã¡ãŒã¿ãåãã«ããŠããæ§ã ãªéãã«ãã£ãŠçæãããç»åãå€ããããšã¯ãåãã ãšæããŸãã
A1111ç³»WebUIãšComfyUIã®çæç»åã®éãã«ã€ããŠä»¥åèšäºã«ããŸããã
A1111ç³»ã§ãA1111, Forge, reForge, Forge Classicãªã©ãããŒã«ãéãã°çæç»åãå€ãããŸãã
ããã§ãForgeã¯A1111ãããç»è³ªãèœã¡ãããšããããã«ã¯ãreForgeãšForge Classicã¯Forgeããç»è³ªãèœã¡ãããšããæ°ãããã®ã»ã©æé©åãããŠããããç»è³ªãèœã¡ããšãã人ãããŸããæ¬åœã§ããããïŒ
ç§ã«ã¯ããããæ¬åœãã©ããã¯åãããŸããã
ã§ããåãA1111ã§ãã£ãŠãxformersãpytorch attentionãªã©ã®æé©åãªãã·ã§ã³ã«ãã£ãŠçæç»åã¯å€ãããŸãããPyTorchã®ããŒãžã§ã³ã«ãã£ãŠãå€ãããŸããããŒã«ã«ããçæç»åã®åªå£ã«ã€ããŠèªã人éããä»ã®èŠçŽ ã«ããåªå£ã«ã€ããŠèªããªãã®ã¯äžæè°ã«æããŸãã
ç¹ã«PyTorchã®ããŒãžã§ã³ã«ããç»åã®å€åã«ã€ããŠã¯ãæ¢ããŠãæ å ±ãèŠã€ãããªãã£ãã®ã§èªåã§è»œãæ€èšŒããŠã¿ãŸããã
æ€èšŒç°å¢
çæç»åã«åœ±é¿ããããããªç°å¢ã®æ å ±ã¯ä»¥äžã®ãšããã§ãã
GPU: NVIDIA GeForce RTX 5090
Driver: Game Ready 591.74 WHQL (2026/1/5)
Tool: Stable Diffusion web UI (A1111) dev fd68e0c (2025/12/18)
Python: 3.10.18
PyTorchã¯ä»¥äžã®ããŒãžã§ã³ã§æ€èšŒããŸããã
2.7.0+cu128
2.8.0+cu128
2.9.1+cu128
2.10.0+cu128
2.10.0+cu130
A1111ã®æé©åãªãã·ã§ã³ã¯äœãä»ããŸããããç§ã®ç°å¢ã§ã¯ "--opt-split-attention" ãä»ããå ŽåãšåãDoggettx's cross-attentionãæå¹ã«ãªããŸããhttps://github.com/AUTOMATIC1111/stable-diffusion-webui/blame/master/modules/sd_hijack_optimizations.py ãèŠãéãããã®æé©åãå®è£ ãããã®ã¯2023幎5æ19æ¥ãšå€ããxformersãPyTorch attentionã«æ¯ã¹ãŠäœéã§æé©åãããŠããªããã®ã§ãã
çæå 容
çæå 容ã¯ä»¥äžã®ãšããã§ãã
Model: WAI-illustrious-SDXL v14.0
Positive Prompt:
1girl,hair ornament,earrings,china dress,action pose,fighting pose,outstretched arm,spread fingers,upper body,looking at viewer,abstract background,
masterpiece,best quality,Negative Prompt:
bad quality,worst quality,worst detail,Sampler: Euler a
Size: 832x1216
Steps: 28
Batch size: 1
CFG scale: 7
Seed: 20260126
RNG: CPU
现ããè£ é£Ÿãæã®æ¬æ°éããç Žç¶»ãèµ·ããããããšèãã髪食ããã€ã€ãªã³ã°ãè ã䌞ã°ããŠæãåºããã¿ã°ã䜿ããŸããã
çæç»å
PyTorchã®ããŒãžã§ã³ãå€ããŠçæããç»åã§ãã瞊暪ãšãååçšåºŠã«çž®å°ããŠããŸãã
2.10.0+cu130ã¯2.10.0+cu128ãšå®å
šäžèŽãããã岿ããŸããïŒçްããæ¯èŒã«ã¯WinMergeã䜿ã£ãŠããŸãïŒã

åããããªç»åã§ãã现ããéãããããŸããé ã«èŠãŠãããŸãã
PyTorch 2.7.0ãš2.8.0ã®ç»åã®éã
å šäœã®èŒªéãé¡ã¯åãã§ããæã ã«éãããããŸããç®ç«ã€éšåãèµ€æ ã§å²ã£ãŠããŸãïŒèµ€æ ã®ç»åå ã§ã®åº§æšãšå€§ããã¯åäžã§ãïŒã
èæ¯ã®æš¡æ§ã®éã
髪食ãã®éã
å·Šè³ã®éãïŒ2.8.0ã¯è³ãã¶ãçãæ¬ ããŠãããã«èŠããïŒ
è¬æã®éãïŒ2.7.0ã¯äžæããé·ããŠå€ïŒ
ãã¬ã¹ã®éŸã®æš¡æ§ïŒ2.7.0ã¯ãŒãããŠããïŒ

PyTorch 2.8.0ãš2.9.1ã®ç»åã®éã
PyTorch 2.8.0ãš2.9.1ã¯å®å
šäžèŽã§ããã
â» äœåºŠãçæãããã¡ã«ç®èŠã§åãããªããããªéãïŒäžéšã®ãããã«ã€ããŠRGBå€ã1ã®ã¿ãºã¬ãïŒãçºçããããšããããŸããããåçŸã§ããç®èŠã§å€å¥ã§ããªããã®ãªã®ã§ç¡èŠããŸãã
PyTorch 2.9.1ãš2.10.0ã®ç»åã®éã
ãã¡ããç®ç«ã€éšåãèµ€æ ã§å²ã£ãŠããŸãã
èæ¯ã®æš¡æ§ã®éã
髪食ãã®éã
å·Šè³ã®éãïŒ2.9.1ã¯è³ãã¶ãçãæ¬ ããŠãããã«èŠããïŒ
è¬æã®éãïŒ2.10.0ã¯äžæããé·ããŠå€ïŒ
èžã®å€§ããïŒ2.10.0ã®ã»ãããã倧ããïŒ
ãªã2.10.0ã¯è¬æãé·ããšãããèæ¯ã«æš¡æ§ãç¡ããšããã¯2.7.0ãšäŒŒãŠããŸãããä»ã®éšåã¯ç°ãªã£ãŠããŸãã

Batch count: 9ã§ã®çµæ
Batch count: 9ã§seedã1ãã€å¢ãããªãã9æé£ç¶çæããå Žåã®çµæã§ãã



æ°ã¥ããããšãç®æ¡æžãããŸãã
å šäœã®é°å²æ°ã茪éãé¡ã¯ããŸãå€ãããªãããè³ã®äœçœ®ãèžã®å€§ãããªã©å°ããªéããããïŒ2.10.0ã®ã¿3æç®ã®ç³ã®è²ãéãïŒã
髪åã®çްéšã髪食ããã€ã€ãªã³ã°ãæãèæ¯ã®æš¡æ§ãªã©ã®è£ 食çãªãã®ã¯çµæ§å€ãããã©ã®ããŒãžã§ã³ããããã¯å人ã®å奜ã§ããSeedã«ãã£ãŠãå€ããã
æãè ãç Žç¶»ãããã®ã¯ããŒãžã§ã³ãå€ãã£ãŠãç Žç¶»ããŠããïŒ3æç®ã®äž¡ææã6æç®ã®å·Šè ãšæã9æç®ã®å·Šæè¬æïŒã
ããŒãžã§ã³ã«ãã£ãŠæã®æ¬æ°ã圢ãé·ããå€ããããšãããïŒ3æç®ã®å³ææã2.7.0: 4æ¬ã2.8.0: 5æ¬ã2.10.0: 6æ¬ïŒã
Forge, reForgeã§ã®çµæ
æ§Forge (Forge1, bfee03d), æ°Forge (Forge2, dfdcbab), reForge (630cf49)ã§ãPyTorch 2.9.1ã§Batch count: 9ã§çæããŠã¿ãŸããã
A1111ãšåããæé©åãªãã·ã§ã³ã¯äœãä»ããŸããããç§ã®ç°å¢ã§ã¯ "--attention-pytorch" ãä»ããå Žåãšåãpytorch cross-attentionãæå¹ã«ãªããŸãã
ããŒãžã§ã³ã¯ããããçŸæç¹ã§ã®ææ°çãæçµçã§ããã¡ãªã¿æ§Forgeãšæ°Forgeã§ã¯ç»åãå€ãããŸãããæ§reForge (main-old) ãšæ°reForgeã§ã¯å€ãããŸããã



3æç®ã6æç®ã9æç®ã¯A1111ãšåæ§ã«ç Žç¶»ããŠããŸãããã以å€ã«ã€ããŠã¯8æç®ã«ã€ããŠå³ææãæ§Forgeã§äººå·®ãæãšäžæã®éãåºãããreForgeã§6æ¬ã«ãªã£ãŠããŸããŸãããããã以å€ã¯ç Žç¶»ãšèšãããããªéãã¯ãªããšæããŸãã
PyTorchã®ããŒãžã§ã³ã§ç»åãå€ããçç±
ChatGPTã«ä»¥äžã®ããã«èããŠã¿ãŸããã
質åïŒ
Stable Diffusion ã®ç»åçæã§Pytorchã®ããŒãžã§ã³ã2.7, 2.8, 2.9, 2.10ãšå€ããä»ã®èŠçŽ ïŒããã³ããããµã³ãã©ãŒãseedãããŒã«ïŒã¯å€ããªãå Žåãçæãããç»åã¯å€ããïŒãããšãå€ãããªãïŒ çç±ãšãšãã«çããŠãã ããã
åçïŒèŠçŽïŒïŒ
çµè«ïŒå€ããå¯èœæ§ãé«ãã
PyTorchã®ããŒãžã§ã³ãå€ãããšãå
éšã®æ°å€èšç®æ¹æ³ãCUDAã«ãŒãã«ãæé©ååŠçãå€åããæµ®åå°æ°ç¹ã®äžžã誀差ãç°ãªããæ¡æ£ã¢ãã«ã¯èª€å·®ã段éçã«å¢å¹
ããããããåäžããã³ããã»ãµã³ãã©ãŒã»seedã§ãæçµç»åãäžèŽããªãããšãå€ããçè«äžã¯åãçµæãçæ³ã ããå®çšç°å¢ã§ã¯PyTorchã®éããåçŸæ¡ä»¶ã®äžéšãšèããã¹ãã§ããã
ãŸãšã
PyTorchã®ããŒãžã§ã³ã«ããç»åã®å€åã«ã€ããŠA1111ã§è»œãæ€èšŒãã€ã€ãæ§Forge, æ°Forge, reForgeãšãæ¯èŒããŠã¿ãŸããã
ãšããããPyTorchã®ããŒãžã§ã³ã«ãã£ãŠãããªãã«ç»åãå€ããããšãåãããŸããã
æ§Forge, æ°Forge, reForgeãšã®æ¯èŒã«ã€ããŠã¯ãµã³ãã«ãå°ãªãããŸãããããããåªå£ãèªãã€ããã¯ãããŸããã
ç§ã¯çްããããšã¯æ°ã«ããPyTorchãããŒãžã§ã³ã¢ããããŸãããæ°ããããŒã«ã䜿ããŸããããšãå€å°ã®å£åããã£ããšããŠãçæãéãã»ãã詊è¡åæ°ãå¢ãããŠãããšèããŠããããã§ãã
ä»äººã®äž»èгçãªèããåŠå®ããæ°ã¯ãããŸããããPyTorchã®ããŒãžã§ã³ã§ãç»åã¯å€ããã®ã§ãããŒã«ã«ããç»åã®åªå£ãèªã人ãããã«ã€ããŠã©ãèããŠããã®ãã¯ã¡ãã£ãšã¢ã€ã¢ã€ããŸããã
ãã®ãããªæãã§ãããŸãäœç³»çã«æŽçãçè§£ãããŠããªãæè¡çãªå 容ãåãããããç¡æã§è§£èª¬ããŠããŸãããã¹ããããã©ããŒããããããã§å¿æŽãããããé¡ãããŸãã