Early Work Is Underway On Reverse-Engineering The Apple M1 GPU

Written by Michael Larabel in Apple on 7 January 2021 at 11:52 AM EST. 38 Comments
Alyssa Rosenzweig who is known for her work on reverse-engineering Arm GPUs and in particular the multi-year effort so far working on the Panfrost open-source driver stack has taken up an interest in Apple's M1 graphics processor.

Over the past few weeks Alyssa began exploring the M1 GPU with a new Apple Mac Mini. The ultimate goal she hopes is to create a Mesa driver for the M1 GPU, which will be critical if the Linux efforts to get the new SoC/devices working outside of macOS are to succeed... Without a fully-working GPU, Linux on the Apple M1 devices won't do much good for desktop/mobile use-cases.

After getting a macOS environment setup that is friendly for reverse-engineering around the various kernel interfaces, Alyssa began poking at the shader binaries. Some early takeaways are that the Apple M1 GPU is scalar for all bit sizes, hardware scheduling is being used, various modifiers are supported, and other indications of its super-scalar architecture.

Early thoughts on the Apple M1 and the reverse engineering effort can be found on Alyssa's blog. The early work on disassembling of shaders for the Apple M1 can be found via this GitHub repository.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week