aboutsummaryrefslogtreecommitdiffstats
path: root/modules/devices.py
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2022-09-11 07:25:02 +0000
committerAUTOMATIC <16777216c@gmail.com>2022-09-11 07:25:02 +0000
commit2e6153e343e5002b5c161d00a43453400be2d884 (patch)
treeefbca339024e4d8aec5abd81c2ed45e6f33b0a17 /modules/devices.py
parenta094b3ab8e4adf300725f8b567c0fd787e9d039a (diff)
parentb5d1af11b7dc718d4d91d379c75e46f4bd2e2fe6 (diff)
downloadstable-diffusion-webui-gfx803-2e6153e343e5002b5c161d00a43453400be2d884.tar.gz
stable-diffusion-webui-gfx803-2e6153e343e5002b5c161d00a43453400be2d884.tar.bz2
stable-diffusion-webui-gfx803-2e6153e343e5002b5c161d00a43453400be2d884.zip
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'modules/devices.py')
-rw-r--r--modules/devices.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/devices.py b/modules/devices.py
new file mode 100644
index 00000000..25008a04
--- /dev/null
+++ b/modules/devices.py
@@ -0,0 +1,12 @@
+import torch
+
+
+# has_mps is only available in nightly pytorch (for now), `getattr` for compatibility
+has_mps = getattr(torch, 'has_mps', False)
+
+def get_optimal_device():
+ if torch.cuda.is_available():
+ return torch.device("cuda")
+ if has_mps:
+ return torch.device("mps")
+ return torch.device("cpu")