mirror of
https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
synced 2024-06-07 21:20:49 +00:00
torch.cuda.empty_cache() defaults to cuda:0 device unless explicitly set otherwise first. Updating torch_gc() to use the device set by --device-id if specified to avoid OOM edge cases on multi-GPU systems.
This commit is contained in:
parent
b5050ad207
commit
c67c40f983
@ -44,8 +44,18 @@ def get_optimal_device():
|
|||||||
|
|
||||||
def torch_gc():
|
def torch_gc():
|
||||||
if torch.cuda.is_available():
|
if torch.cuda.is_available():
|
||||||
torch.cuda.empty_cache()
|
from modules import shared
|
||||||
torch.cuda.ipc_collect()
|
|
||||||
|
device_id = shared.cmd_opts.device_id
|
||||||
|
|
||||||
|
if device_id is not None:
|
||||||
|
cuda_device = f"cuda:{device_id}"
|
||||||
|
else:
|
||||||
|
cuda_device = "cuda"
|
||||||
|
|
||||||
|
with torch.cuda.device(cuda_device):
|
||||||
|
torch.cuda.empty_cache()
|
||||||
|
torch.cuda.ipc_collect()
|
||||||
|
|
||||||
|
|
||||||
def enable_tf32():
|
def enable_tf32():
|
||||||
|
Loading…
Reference in New Issue
Block a user