Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
S
Stable Diffusion Webui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
novelai-storage
Stable Diffusion Webui
Commits
ad229fae
Commit
ad229fae
authored
Jun 08, 2024
by
AUTOMATIC1111
Committed by
GitHub
Jun 08, 2024
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #15803 from huchenlei/checkpoint_false
[Performance 1/6] use_checkpoint = False
parents
5977cb09
47f1d42a
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
21 additions
and
10 deletions
+21
-10
configs/alt-diffusion-inference.yaml
configs/alt-diffusion-inference.yaml
+1
-1
configs/alt-diffusion-m18-inference.yaml
configs/alt-diffusion-m18-inference.yaml
+1
-1
configs/instruct-pix2pix.yaml
configs/instruct-pix2pix.yaml
+1
-1
configs/sd_xl_inpaint.yaml
configs/sd_xl_inpaint.yaml
+1
-1
configs/v1-inference.yaml
configs/v1-inference.yaml
+1
-1
configs/v1-inpainting-inference.yaml
configs/v1-inpainting-inference.yaml
+1
-1
modules/sd_hijack_checkpoint.py
modules/sd_hijack_checkpoint.py
+6
-3
modules/sd_models.py
modules/sd_models.py
+8
-0
modules/sd_models_config.py
modules/sd_models_config.py
+1
-1
No files found.
configs/alt-diffusion-inference.yaml
View file @
ad229fae
...
...
@@ -40,7 +40,7 @@ model:
use_spatial_transformer
:
True
transformer_depth
:
1
context_dim
:
768
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
legacy
:
False
first_stage_config
:
...
...
configs/alt-diffusion-m18-inference.yaml
View file @
ad229fae
...
...
@@ -41,7 +41,7 @@ model:
use_linear_in_transformer
:
True
transformer_depth
:
1
context_dim
:
1024
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
legacy
:
False
first_stage_config
:
...
...
configs/instruct-pix2pix.yaml
View file @
ad229fae
...
...
@@ -45,7 +45,7 @@ model:
use_spatial_transformer
:
True
transformer_depth
:
1
context_dim
:
768
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
legacy
:
False
first_stage_config
:
...
...
configs/sd_xl_inpaint.yaml
View file @
ad229fae
...
...
@@ -21,7 +21,7 @@ model:
params
:
adm_in_channels
:
2816
num_classes
:
sequential
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
in_channels
:
9
out_channels
:
4
model_channels
:
320
...
...
configs/v1-inference.yaml
View file @
ad229fae
...
...
@@ -40,7 +40,7 @@ model:
use_spatial_transformer
:
True
transformer_depth
:
1
context_dim
:
768
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
legacy
:
False
first_stage_config
:
...
...
configs/v1-inpainting-inference.yaml
View file @
ad229fae
...
...
@@ -40,7 +40,7 @@ model:
use_spatial_transformer
:
True
transformer_depth
:
1
context_dim
:
768
use_checkpoint
:
Tru
e
use_checkpoint
:
Fals
e
legacy
:
False
first_stage_config
:
...
...
modules/sd_hijack_checkpoint.py
View file @
ad229fae
...
...
@@ -4,16 +4,19 @@ import ldm.modules.attention
import
ldm.modules.diffusionmodules.openaimodel
# Setting flag=False so that torch skips checking parameters.
# parameters checking is expensive in frequent operations.
def
BasicTransformerBlock_forward
(
self
,
x
,
context
=
None
):
return
checkpoint
(
self
.
_forward
,
x
,
context
)
return
checkpoint
(
self
.
_forward
,
x
,
context
,
flag
=
False
)
def
AttentionBlock_forward
(
self
,
x
):
return
checkpoint
(
self
.
_forward
,
x
)
return
checkpoint
(
self
.
_forward
,
x
,
flag
=
False
)
def
ResBlock_forward
(
self
,
x
,
emb
):
return
checkpoint
(
self
.
_forward
,
x
,
emb
)
return
checkpoint
(
self
.
_forward
,
x
,
emb
,
flag
=
False
)
stored
=
[]
...
...
modules/sd_models.py
View file @
ad229fae
...
...
@@ -552,6 +552,14 @@ def repair_config(sd_config):
karlo_path
=
os
.
path
.
join
(
paths
.
models_path
,
'karlo'
)
sd_config
.
model
.
params
.
noise_aug_config
.
params
.
clip_stats_path
=
sd_config
.
model
.
params
.
noise_aug_config
.
params
.
clip_stats_path
.
replace
(
"checkpoints/karlo_models"
,
karlo_path
)
# Do not use checkpoint for inference.
# This helps prevent extra performance overhead on checking parameters.
# The perf overhead is about 100ms/it on 4090 for SDXL.
if
hasattr
(
sd_config
.
model
.
params
,
"network_config"
):
sd_config
.
model
.
params
.
network_config
.
params
.
use_checkpoint
=
False
if
hasattr
(
sd_config
.
model
.
params
,
"unet_config"
):
sd_config
.
model
.
params
.
unet_config
.
params
.
use_checkpoint
=
False
def
rescale_zero_terminal_snr_abar
(
alphas_cumprod
):
alphas_bar_sqrt
=
alphas_cumprod
.
sqrt
()
...
...
modules/sd_models_config.py
View file @
ad229fae
...
...
@@ -35,7 +35,7 @@ def is_using_v_parameterization_for_sd2(state_dict):
with
sd_disable_initialization
.
DisableInitialization
():
unet
=
ldm
.
modules
.
diffusionmodules
.
openaimodel
.
UNetModel
(
use_checkpoint
=
Tru
e
,
use_checkpoint
=
Fals
e
,
use_fp16
=
False
,
image_size
=
32
,
in_channels
=
4
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment