-
Notifications
You must be signed in to change notification settings - Fork 4.3k
GGML_USE_METAL=1 fails on iPadOS running iOS 15/16 (and 17 perhaps) #1387
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@ggerganov what do you think? This has been mentioned here as well: ggml-org/llama.cpp#2564 (cc @jhen0409) |
Related ggml-org/llama.cpp#2550 The A-chip models A12Z and before not supported some SIMD operations like simd_max and simd_sum we used in Metal. To fix this, need some works to write new kernels or patch. I was thinking to do this but not very urgency, and now I think it not worthy to do because it may make affect for future works and neglected maintenance, so I choice to do #1293 for disable Metal in unsupported devices. |
@bobqianic how is this completed? Can you please link the related PR or issue? |
#1293 was merged last week. Therefore, even when using |
This limitation is not documented anywhere, so it's impossible to know that it doesn't work on some devices without scouring the issue tracker. I think Whisper should simply detect the unsupported devices and not activate GPU mode even if instructed to on those devices. Whisper could use https://developer.apple.com/documentation/metal/mtldevice/3143473-supportsfamily?language=objc to detect the supported GPUs. |
@sindresorhus agreed. At the moment it's too easy for this to blow up in the developer's (and the user's) face. |
Yup, I'll fix this now. Can somebody remind me which was the earliest apple family that we support? |
Yes. |
#1547 should disable GPU seamlessly if Apple7 family is not supported by the device |
Error is:
If I remove calls to
simd_max
, it still fails with:etc.. i.e. all simd func calls are failing.
The text was updated successfully, but these errors were encountered: