Accelerating graphics and much more.
Metal provides a platform-optimized, low-overhead API for developing the latest 3D pro applications and amazing games using a rich shading language with tighter integration between graphics and compute programs. To help you do more while managing ever more complex shader code, Metal adds an unparalleled suite of advanced GPU debugging tools to help you realize the full potential of your graphics code.
What’s new
Enhanced graphics and compute integration
To better realize the latest GPU rendering techniques, you can now call dynamic libraries, use function pointers, and leverage the Ray Tracing API directly from your graphics shaders.
Function stitching
Efficiently combine precompiled functions into more complex functions at run time. This allows shader authoring tools to precompile individual shader nodes while maintaining flexibility as they author shaders.
New Ray Tracing features
The Ray Tracing API now supports motion blur, user instance IDs, and an extension of numerical limits to help you generate immensely complex scenes with professional renders.
GPU-accelerated ML training
MPSGraph adds new operations and optimizations using Metal buffer-based ML primitives on the GPU, so you can accelerate ML model training on Mac with higher peak performance.
Metal plugin for TensorFlow
Metal adds support for the PluggableDevice interface for TensorFlow, so you can start training with great performance on macOS Monterey.
GPU Performance State Debugger
Optimize your graphics code for power and performance on all Apple platforms.
Metal Debugger timeline view
To help achieve peak performance with the latest rendering techniques, Metal Debugger now includes performance counters and bottleneck analysis tools while providing a unified view of Metal commands, resources, and buffers on the timeline of GPU events.
Selective Shader Debugger
To dramatically reduce the time it takes to debug incredibly large GPU shader code, Xcode 13 now includes the option to target and debug specific functions within the overall GPU shader code.
GPU Address Sanitizer
Xcode 13 can automatically find difficult bugs, such as buffer overruns, in complex GPU shader code.
Texture Converter Tool
To simplify optimizing game texture assets for Apple platforms, the new Texture Converter Tool supports the latest modern texture formats used by high-end games. For game developers with a Windows-based build environment, the Texture Converter Tool is also available in the Metal Tools for Windows package.
-
Documentation
Browse the latest documentation, including API reference and articles.
-
Metal Developer Tools for Windows
Bring your high-end games and assets to Mac with the Texture Converter Tool and Metal Shader Compiler.
-
Sample code
Get sample code to see how Metal APIs are implemented.
-
Videos
Learn how to take advantage of the latest advancements in Metal.
-
Forums
Ask questions and discuss Metal with Apple engineers and other developers.