Skip to content
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

[Feature Request] MPS provider #21271

Open
barakugav opened this issue Jul 6, 2024 · 1 comment
Open

[Feature Request] MPS provider #21271

barakugav opened this issue Jul 6, 2024 · 1 comment
Labels
ep:CoreML issues related to CoreML execution provider feature request request for unsupported feature or enhancement

Comments

@barakugav
Copy link

Describe the feature request

Currently there is no MPS (apple Metal Performance Shaders GPU) provider. There is CoreML provider but from testing I did on my MacBook with arm64 M3 and MPS It does not use it.
Is there any plan to support MPS as a different provider or within CoreML?
I this there is a lot of value in such support, as a lot of the development is done MacBooks.

Describe scenario use case

  • Training small models on macos
  • Testing new models on developer laptops before deploying
@barakugav barakugav added the feature request request for unsupported feature or enhancement label Jul 6, 2024
@github-actions github-actions bot added the platform:mobile issues related to ONNX Runtime mobile; typically submitted using template label Jul 6, 2024
@sophies927 sophies927 added ep:CoreML issues related to CoreML execution provider and removed platform:mobile issues related to ONNX Runtime mobile; typically submitted using template labels Jul 11, 2024
@skottmckay
Copy link
Contributor

Did you check to see which nodes CoreML was actually assigned. And were you using NeuralNetwork or ML Program?

If not, set log level to VERBOSE and look for 'Node placements' in the output.

Obviously resources aren't infinite and creating a new execution provider is a huge undertaking. CoreML is currently preferred as it offers access to GPU and NPU and we're increasing operator coverage for ML Program (as NeuralNetwork is deprecated).

A general-purpose GPU EP based on Vulkan (with Metal support via MoltenVK) may be feasible as it would run on multiple platforms. But the same condition will apply - the EP needs to support enough operators in the model to be effective.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ep:CoreML issues related to CoreML execution provider feature request request for unsupported feature or enhancement
3 participants