-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
GGML_USE_METAL=1 fails on iPadOS running iOS 15/16 (and 17 perhaps) #1387
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: