aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAUTOMATIC1111 <16777216c@gmail.com>2023-07-31 07:43:31 +0000
committerAUTOMATIC1111 <16777216c@gmail.com>2023-07-31 07:43:31 +0000
commit4d9b096663288e2aa738723fa63950f3d41f6170 (patch)
tree9ded595eb6aca5f0f288fc83417715b22e93209f
parent29d7e31d89e9d686784eacbdbfc5b15959eb4449 (diff)
downloadstable-diffusion-webui-gfx803-4d9b096663288e2aa738723fa63950f3d41f6170.tar.gz
stable-diffusion-webui-gfx803-4d9b096663288e2aa738723fa63950f3d41f6170.tar.bz2
stable-diffusion-webui-gfx803-4d9b096663288e2aa738723fa63950f3d41f6170.zip
additional memory improvements when switching between models of different types
-rw-r--r--modules/sd_models.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/modules/sd_models.py b/modules/sd_models.py
index cb67e425..4855037a 100644
--- a/modules/sd_models.py
+++ b/modules/sd_models.py
@@ -582,7 +582,10 @@ def reload_model_weights(sd_model=None, info=None):
timer.record("find config")
if sd_model is None or checkpoint_config != sd_model.used_config:
- del sd_model
+ if sd_model is not None:
+ sd_model.to(device="meta")
+
+ devices.torch_gc()
load_model(checkpoint_info, already_loaded_state_dict=state_dict)
return model_data.sd_model