This commit is contained in:
Vladimir Mandic
2023-05-12 21:12:24 -04:00
parent 1921504e64
commit a2485cf7ef
4 changed files with 10 additions and 8 deletions
+2 -1
View File
@@ -110,9 +110,10 @@ def set_cuda_params():
try:
if any([torch.cuda.get_device_capability(devid) == (7, 5) for devid in range(0, torch.cuda.device_count())]): # monkey-patch for old nvidia cards
torch.backends.cudnn.benchmark = True
torch.backends.cudnn.benchmark_limit = 1
else:
torch.backends.cudnn.benchmark = shared.opts.cudnn_benchmark
torch.backends.cudnn.benchmark_limit = 0
torch.backends.cudnn.benchmark_limit = 0
torch.backends.cudnn.allow_tf32 = shared.opts.cuda_allow_tf32
except:
pass
+3 -5
View File
@@ -847,14 +847,12 @@ class StableDiffusionProcessingTxt2Img(StableDiffusionProcessing):
for i in range(samples.shape[0]):
save_intermediate(samples, i)
samples = torch.nn.functional.interpolate(samples, size=(target_height // opt_f, target_width // opt_f), mode=latent_scale_mode["mode"], antialias=latent_scale_mode["antialias"])
# Avoid making the inpainting conditioning unless necessary as
# this does need some extra compute to decode / encode the image again.
if getattr(self, "inpainting_mask_weight", shared.opts.inpainting_mask_weight) < 1.0:
image_conditioning = self.img2img_image_conditioning(decode_first_stage(self.sd_model, samples), samples)
image_conditioning = self.img2img_image_conditioning(decode_first_stage(self.sd_model, samples.to(dtype=devices.dtype_vae)), samples)
else:
image_conditioning = self.txt2img_image_conditioning(samples)
image_conditioning = self.txt2img_image_conditioning(samples.to(dtype=devices.dtype_vae))
else:
decoded_samples = decode_first_stage(self.sd_model, samples)
decoded_samples = decode_first_stage(self.sd_model, samples.to(dtype=devices.dtype_vae))
lowres_samples = torch.clamp((decoded_samples + 1.0) / 2.0, min=0.0, max=1.0)
batch_images = []
for i, x_sample in enumerate(lowres_samples):