Commit 5b2c3168 authored by AUTOMATIC's avatar AUTOMATIC

eliminate duplicated code from #5095

parent 997ac570
...@@ -24,17 +24,18 @@ def extract_device_id(args, name): ...@@ -24,17 +24,18 @@ def extract_device_id(args, name):
return None return None
def get_optimal_device(): def get_cuda_device_string():
if torch.cuda.is_available(): from modules import shared
from modules import shared
if shared.cmd_opts.device_id is not None:
return f"cuda:{shared.cmd_opts.device_id}"
device_id = shared.cmd_opts.device_id return "cuda"
if device_id is not None:
cuda_device = f"cuda:{device_id}" def get_optimal_device():
return torch.device(cuda_device) if torch.cuda.is_available():
else: return torch.device(get_cuda_device_string())
return torch.device("cuda")
if has_mps(): if has_mps():
return torch.device("mps") return torch.device("mps")
...@@ -44,16 +45,7 @@ def get_optimal_device(): ...@@ -44,16 +45,7 @@ def get_optimal_device():
def torch_gc(): def torch_gc():
if torch.cuda.is_available(): if torch.cuda.is_available():
from modules import shared with torch.cuda.device(get_cuda_device_string()):
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.empty_cache()
torch.cuda.ipc_collect() torch.cuda.ipc_collect()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment