Skip to content

Commit

Permalink
fix: fallback to cpu if metal_init fails
Browse files Browse the repository at this point in the history
  • Loading branch information
abetlen committed Feb 9, 2024
1 parent bb58e86 commit 2c8ee77
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
2 changes: 1 addition & 1 deletion ggml/ggml.py
Original file line number Diff line number Diff line change
Expand Up @@ -10654,7 +10654,7 @@ def ggml_backend_metal_log_set_callback(


# GGML_API ggml_backend_t ggml_backend_metal_init(void);
def ggml_backend_metal_init() -> ggml_backend_t:
def ggml_backend_metal_init() -> Optional[ggml_backend_t]:
return lib.ggml_backend_metal_init()


Expand Down
8 changes: 4 additions & 4 deletions tests/test_ggml_backends.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@ def test_ggml_backend():
def get_backend():
if ggml.ggml_cpu_has_metal():
backend = ggml.ggml_backend_metal_init()
ggml.ggml_backend_metal_set_n_cb(backend, 1)
return backend
if backend is not None:
ggml.ggml_backend_metal_set_n_cb(backend, 1)
return backend
elif ggml.ggml_cpu_has_cublas():
return ggml.ggml_backend_cuda_init()
elif ggml.ggml_cpu_has_vulkan():
return ggml.ggml_backend_vk_init()
else:
return ggml.ggml_backend_cpu_init()
return ggml.ggml_backend_cpu_init()

n_tensors = 1 + 2 # input (x) and weights (a, b)
params = ggml.ggml_init_params(
Expand Down

0 comments on commit 2c8ee77

Please sign in to comment.