diff options
author | AUTOMATIC <16777216c@gmail.com> | 2023-05-23 15:02:09 +0000 |
---|---|---|
committer | AUTOMATIC <16777216c@gmail.com> | 2023-05-23 15:02:09 +0000 |
commit | b186045fee0d384addcdc2a759fd33dba51b070e (patch) | |
tree | 5811cd211f383f759120c80ed266ed0b1befbaf0 /webui.py | |
parent | 3f50b7d71cf68877a82806649fce08dd1537b781 (diff) | |
download | stable-diffusion-webui-gfx803-b186045fee0d384addcdc2a759fd33dba51b070e.tar.gz stable-diffusion-webui-gfx803-b186045fee0d384addcdc2a759fd33dba51b070e.tar.bz2 stable-diffusion-webui-gfx803-b186045fee0d384addcdc2a759fd33dba51b070e.zip |
possible fix for empty list of optimizations #10605
Diffstat (limited to 'webui.py')
-rw-r--r-- | webui.py | 17 |
1 files changed, 14 insertions, 3 deletions
@@ -291,9 +291,20 @@ def initialize_rest(*, reload_script_modules=False): modules.sd_hijack.list_optimizers()
startup_timer.record("scripts list_optimizers")
- # load model in parallel to other startup stuff
- # (when reloading, this does nothing)
- Thread(target=lambda: shared.sd_model).start()
+ def load_model():
+ """
+ Accesses shared.sd_model property to load model.
+ After it's available, if it has been loaded before this access by some extension,
+ its optimization may be None because the list of optimizaers has neet been filled
+ by that time, so we apply optimization again.
+ """
+
+ shared.sd_model # noqa: B018
+
+ if modules.sd_hijack.current_optimizer is None:
+ modules.sd_hijack.apply_optimizations()
+
+ Thread(target=load_model).start()
shared.reload_hypernetworks()
startup_timer.record("reload hypernetworks")
|