diff options
author | AUTOMATIC <16777216c@gmail.com> | 2023-06-01 04:28:13 +0000 |
---|---|---|
committer | AUTOMATIC <16777216c@gmail.com> | 2023-06-01 04:28:20 +0000 |
commit | f1533de982350af06bc9cbaa436b3e4dfdef4eb8 (patch) | |
tree | f6e7f494ecbd5fedb039e760f3f4f73b08c086e4 | |
parent | e980a4bd88f52ef112abce6dd5f9bc819f7de6b8 (diff) | |
download | stable-diffusion-webui-gfx803-f1533de982350af06bc9cbaa436b3e4dfdef4eb8.tar.gz stable-diffusion-webui-gfx803-f1533de982350af06bc9cbaa436b3e4dfdef4eb8.tar.bz2 stable-diffusion-webui-gfx803-f1533de982350af06bc9cbaa436b3e4dfdef4eb8.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 232eb9c4..918f6fd6 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -314,8 +314,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 8ba1c569..7025a754 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
@@ -63,6 +64,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"
|