diff options
author | AUTOMATIC <16777216c@gmail.com> | 2023-06-01 04:28:13 +0000 |
---|---|---|
committer | AUTOMATIC <16777216c@gmail.com> | 2023-06-01 04:28:46 +0000 |
commit | 915d1da1cda945377aa33089f66ae7994395557b (patch) | |
tree | 7e7f2dc3bebab3c8832fee376236c69f05990d8d | |
parent | 884435796ad6e635c754dc752280584f71bb4a77 (diff) | |
download | stable-diffusion-webui-gfx803-915d1da1cda945377aa33089f66ae7994395557b.tar.gz stable-diffusion-webui-gfx803-915d1da1cda945377aa33089f66ae7994395557b.tar.bz2 stable-diffusion-webui-gfx803-915d1da1cda945377aa33089f66ae7994395557b.zip |
assign devices.dtype early because it's needed before the model is loaded
-rw-r--r-- | modules/sd_models.py | 2 | ||||
-rw-r--r-- | modules/shared.py | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/modules/sd_models.py b/modules/sd_models.py index b1afbaa7..7742998a 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -313,8 +313,6 @@ def load_model_weights(model, checkpoint_info: CheckpointInfo, state_dict, timer timer.record("apply half()")
- devices.dtype = torch.float32 if shared.cmd_opts.no_half else torch.float16
- devices.dtype_vae = torch.float32 if shared.cmd_opts.no_half or shared.cmd_opts.no_half_vae else torch.float16
devices.dtype_unet = model.model.diffusion_model.dtype
devices.unet_needs_upcast = shared.cmd_opts.upcast_sampling and devices.dtype == torch.float16 and devices.dtype_unet == torch.float16
diff --git a/modules/shared.py b/modules/shared.py index 3099d1d2..271a062d 100644 --- a/modules/shared.py +++ b/modules/shared.py @@ -6,6 +6,7 @@ import threading import time
import gradio as gr
+import torch
import tqdm
import modules.interrogate
@@ -76,6 +77,9 @@ cmd_opts.disable_extension_access = (cmd_opts.share or cmd_opts.listen or cmd_op devices.device, devices.device_interrogate, devices.device_gfpgan, devices.device_esrgan, devices.device_codeformer = \
(devices.cpu if any(y in cmd_opts.use_cpu for y in [x, 'all']) else devices.get_optimal_device() for x in ['sd', 'interrogate', 'gfpgan', 'esrgan', 'codeformer'])
+devices.dtype = torch.float32 if cmd_opts.no_half else torch.float16
+devices.dtype_vae = torch.float32 if cmd_opts.no_half or cmd_opts.no_half_vae else torch.float16
+
device = devices.device
weight_load_location = None if cmd_opts.lowram else "cpu"
|