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
[RFC] Cross-Platform Refactor: Mac M1 support #1020
Comments
There was one project that I was following that is using MPS: https://github.com/ggerganov/llama.cpp And that was where I got the idea of using CMake for cross platform support. Not too familiar with MPS but sharing for more context. |
@rickardp summarized the approach:
|
Motivation
The newer Macs with Apple Silicon (M1 and up) are actually quite powerful and even the lowest end M1 MacBook Air are impressive. In addition, the Apple platform is very suitable for ML workloads thanks to their unified memory architecture (all system RAM can be used as GPU memory with no performance penalty).
The Apple accelerated API is called MPS (Metal Performance Shaders) and is not at all compatible with CUDA, so this requires porting all the kernels, as well as writing the stub code.
Additionally, the Mac is a very popular platform for developers. Supporting MacOS natively for the popular torch libraries (as a longer term goal) means we don't have to resort to expensive Nvidia cloud VMs for every single task.
Proposed solution
@Titus-von-Koeller Feel free to edit this issue as you see fit, if you want a different structure for it for example.
The text was updated successfully, but these errors were encountered: