Many high-level Apple frameworks leverage the performance of Metal, including RealityKit, SceneKit, SpriteKit, and Core Image. I'd love to see a proper Mac GPU training with Metal on either Intel or M1 but am unsure how to make it happen. The Metal Performance Shaders framework provides a large library of optimized compute and rendering shaders that take advantage of each GPU’s unique hardware. Fun, but too much effort to make a PR for PyTorch at the time. Years ago, I wrote an unpublished proof-of-concept Metal/MPS replacement for a "look alike" Linear layer to measure speed improvements in inference for Accelerate vs Metal on macOS. My impression (which might be a few months outdated, sorry) is that PyTorch training< on the Mac never uses the GPU via Metal/MPS and even used to ignore Accelerate in favor of Intel libraries (was it 1.2 or 1.3 ? ) even though Apple can optimize more for CPU performance (GEMM) on M1 and Intel. Works like Add Metal/MPSCNN support on iOS #46112 have already gone down this approach but the drawback is that we can only make use of the GPU but not the neural engine. Write Metal compute shaders to accelerate PyTorch tensor operators.I also love to have a proper macOS PyTorch using Metal/BNNS/Accelerate but specifically Metal to have TFLOPS training and inference performance on my iMac 64GB with Radeon Pro 580 8 GB. From my perspective there are three possible ways: The very first problem I can think of is how do we want to accelerate PyTorch on macOS computers.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |