Skip to content

Collection of notes on how to use Apple’s Metal API for compute tasks

Notifications You must be signed in to change notification settings

hollance/metal-gpgpu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Metal GPGPU

This is a collection of notes on how to use Apple's Metal API for compute tasks. 🤘

Metal is a low-level graphics programming API for iOS and macOS but it can also be used for general-purpose compute on these devices. Unfortunately, Metal is not extensively documented. And the existing docs assume that you already know other graphics or compute APIs such as OpenGL, OpenCL, or CUDA.

Hopefully these notes will help you understand Metal a little better. Mostly I collected this information because my poor brain can't possibly remember all this stuff, and I thought it would be useful to turn it into a community thing.

NOTE: This is a work-in-progress. Use these notes at your own risk -- there may be mistakes. Pull requests for corrections and enhancements are welcome!

Table of contents

(coming soon)

See also

There is a lot of useful documentation inside the Metal header files. You can find these at the following locations:

  1. First, go to /Applications/Xcode.app/Contents/Developer/Platforms/
  2. Pick your platform: iPhoneOS.platform/, AppleTVOS.platform/, or MacOSX.platform/
  3. For the Metal standard library, go to: usr/lib/clang/<version>/include/metal
  4. For Metal.framework, MetalKit.framework, MetalPerformanceShaders.framework, go to:
    Developer/SDKs/<your SDK>/System/Library/Frameworks

Web pages from Apple:

Other useful websites about using Metal (mostly graphics, not so much compute):

Websites and courses about GPGPU programming:

Change log

10 July 2018

First version.

License

The content is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 license.

About

Collection of notes on how to use Apple’s Metal API for compute tasks

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published