Alyssa Rosenzweig
rosenzweig.io · Personal blog · on HN since 2018
Alyssa Rosenzweig, a graphics driver developer on Asahi Linux, writes about reverse engineering the Apple M1 GPU.
What HN saysHN commenters hold her up as a major contributor to Asahi Linux, praising her insights into Apple internals and her GPU series.
82HN people shared it
49linked it in comments
52stories submitted
6.7Kstory points
10 months agolast shared
2018people per year2026
Most-shared posts
- 1Dissecting the Apple M1 GPU, part I13 people · 553 points · first shared 2021 · 142 comments on HN
- 2Clip control on the Apple GPU10 people · 277 points · first shared 2022 · 119 comments on HN
- 3The Federation Fallacy (2019)8 people · 73 points · first shared 2019 · 54 comments on HN
- 4Homepage8 people · first shared 2021
- 5Dissecting the Apple M1 GPU, Part III7 people · 518 points · first shared 2021 · 119 comments on HN
- 6Dissecting the Apple M1 GPU, Part IV7 people · 379 points · first shared 2021 · 121 comments on HN
- 7The Apple GPU and the impossible bug6 people · 972 points · first shared 2022 · 95 comments on HN
- 8Dissecting the Apple M1 GPU, Part II6 people · 574 points · first shared 2021 · 188 comments on HN
- 9AAA Gaming on Asahi Linux4 people · 944 points · first shared 2024 · 365 comments on HN
- 10Dissecting the Apple M1 GPU, the end3 people · 845 points · first shared 2025 · 224 comments on HN
- 11Conformant OpenGL 4.6 on the M13 people · 498 points · first shared 2024 · 113 comments on HN
- 12Growing Up Alyssa3 people · 9 points · first shared 2023 · 1 comments on HN
- 13Resume.pdf3 people · first shared 2022
- 14Vulkan1.3 on the M1 in one month2 people · 827 points · first shared 2024 · 355 comments on HN
- 15Software freedom isn’t about licenses – it’s about power2 people · 152 points · first shared 2021 · 18 comments on HN
What HN people wrote when they linked it
internetter · 2023-05-07
I've loved reading blogs and microblogs of Asahi Linux developers, like https://social.treehouse.systems/@marcan, https://asahilinux.org/blog/, and https://rosenzweig.io/
They all have intimate insights into macos internals from reverse engineering it.
rollcat · 2025-07-20
Yes, thanks to the heroic efforts of Alyssa Rosenzweig <https://rosenzweig.io/>, Asahi Lina <https://www.youtube.com/c/AsahiLina>, and others.
Unfortunately, a lot of this effort seems stalled by some of the Linux kernel developers' hostility towards Rust, which also prompted Hector Martin (marcan42) to leave the project.
Now at the current rate, Apple is still moving backwards faster than the FOSS community is moving forward. I actually miss macOS 10.5 on PowerPC.
leeoniya · 2024-02-12
fertile soil for Alyssa and Asahi Lina :)
https://rosenzweig.io/
https://vt.social/@lina
nicce · 2023-07-04
They might be pushing even more...
Apparently lead graphics developer of Asahi Linux works also for Valve now [1].
If you have followed her work, such a talent.
[1]: https://rosenzweig.io/resume.pdf
doctoboggan · 2023-05-28
I suspect the person you are replying to is thinking of Alyssa Rosenzwig[0] who appears from the outside to be a major contributor to the work, and who's blog posts on the project were followed by the HN crowd.
[0]: https://rosenzweig.io/blog/asahi-gpu-part-7.html
asiekierka · 2022-09-29
The key words are "optimized" and "OpenGL 4.6 with Zink". "Functional" and "OpenGL 2.1" is a different story, and the same trustworthy source said in https://rosenzweig.io/blog/asahi-gpu-part-6.html that:
> thanks to the tremendous shared code in Mesa, a basic OpenGL driver is doable by a single person. I’m optimistic that we’ll have native OpenGL 2.1 in Asahi Linux by the end of the year.
It's likely that even a bare-bones OpenGL driver will probably run better than llvmpipe, which is especially important in a laptop context due to the resulting power use improvements.
pabs3 · 2022-08-26
GPU progress looks pretty great, here is the latest post:
https://rosenzweig.io/blog/asahi-gpu-part-6.html
watersb · 2022-06-05
Alyssa Rosenzweig is doing the heavy GPU engineering.
https://rosenzweig.io/
auraham · 2022-03-18
Asahi Linux is an impressive project. I cannot imagine how difficult is to reverse-engineering the M1 platform for porting a distro. I know that https://rosenzweig.io describes how the drivers are developed. However, I would like to read an ELI5 version of that process.
raphlinus · 2021-07-21
I agree strongly with you about the need for good resources. Here are a few I've found that are useful.
* A trip through the Graphics Pipeline[1] is slightly dated (10 years old) but still very relevant.
* If you're interested in compute shaders specifically, I've put together "compute shader 101"[2].
* Alyssa Rosenzweig's posts[3] on reverse engineering GPUs casts a lot of light on how they work at a low level. It helps to have a big-picture understanding first.
I think there is demand for a good book on this topic.
[1]: https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-p…
[2]: https://github.com/googlefonts/compute-shader-101
[3]: https://rosenzweig.io/
dopu · 2021-01-08
Are these things so important that we should give up the easier maintainability (and potentially, security) that comes from centralization and the standardization of user clients? I absolutely think projects like Matrix are worthwhile, but it seems foolish to me to argue that there are no benefits that come from doing things the way Signal does. Besides, as sexy as decentralization is, in the wild it is not really practiced. Mastodon is decentralized, but last I heard ~50% of users were on 3 nodes [0]. I'm assuming it's a similar situation for Matrix.
[0]: https://rosenzweig.io/blog/the-federation-fallacy.html
Gregordinary · 2019-07-08
This is exciting for quite a few boards and notebooks, notably the new Pinebook Pro (RK3399) and the Asus C201 (RK3288) both benefiting from the Panfrost driver.
I wrote a bit a while back on Reddit regarding my experience with the C201 and Linux: https://www.reddit.com/r/linux/comments/bebm93/linux_on_asus_chromeboo…
Now with open 3D acceleration, the last remaining bit of proprietary code on the C201 is the WiFi chip. Not sure how much of an impact it'll have, but when Cypress bought Broadcom's wireless division it released the datasheet for this and many other chips (PDF): https://www.cypress.com/file/298141/download
Alyssa Rosenzweig is making amazing progress with Panfrost working at Collabora. Panfrost is now working with GNOME, two months ahead of schedule!: https://rosenzweig.io/blog/gnome-meets-panfrost.html
willis936 · 2025-12-25
Very little progress made this year after high profile departures (Hector Martin, project lead, Asahi Lina and Alyssa Rosenzweig - GPU gurus). Alyssa's departure isn't reflected on Asahi's website yet, but it is in her blog. I believe she also left Valve, which I think was sponsoring some aspects of the Asahi project. So when people say "Asahi hasn't seen any setbacks" be sure to ask them who has stepped in to make up for these losses in both talent and sponsorship.
https://rosenzweig.io/blog/asahi-gpu-part-n.html
dllu · 2025-12-05
It does have graphics acceleration and you can even play AAA titles with fex [1] since last year. But many bells and whistles still don't work --- for example, the video decoding hardware, proper sleep, etc.
Anyway, I've been using it on my Macbook Air M2 and it works fine for my use case [3]. Pretty smooth.
[1] https://rosenzweig.io/blog/aaa-gaming-on-m1.html
[3] https://daniel.lawrence.lu/blog/2024-12-01-asahi-linux-with-sway-on-th…
gregorvand · 2025-11-13
write up on that here: https://rosenzweig.io/blog/asahi-gpu-part-n.html
GeekyBear · 2025-11-12
Macs do allow both of those things.
Valve is even borrowing some of the work done for the Mac version of Linux to add support for Proton on ARM hardware.
> Gaming on Linux on M1 is here! We’re thrilled to release our Asahi game playing toolkit, which integrates our Vulkan 1.3 drivers with x86 emulation and Windows compatibility.
https://rosenzweig.io/blog/aaa-gaming-on-m1.html
porphyra · 2025-10-24
I remember my mind was blown when Alyssa Rosenzweig demoed Cyberpunk running on Asahi Linux a year ago. https://rosenzweig.io/blog/aaa-gaming-on-m1.html
sheepscreek · 2025-08-27
She just started working at Intel in August and has already accomplished more than most would in a year[1]. Incredible!
[1] https://rosenzweig.io/resume-en.pdf
wtallis · 2024-10-11
There are definitely some features omitted from Apple's GPU, but fairly early in the reverse engineering process, Alyssa Rosenzweig provided several examples of hardware features present in Apple's GPU that are not exposed by Metal: https://rosenzweig.io/blog/asahi-gpu-part-4.html
PartiallyTyped · 2024-06-11
I don't think it's feasible to separate technology from the people themselves. What we do, in some way or the other touches people, real people, people with feelings, dreams and aspirations.
To ignore where such contributions to humanity come from, is to ignore a person's existence, their struggles and what makes them, well, them.
I recently stumbled on [1],
> I’m on the board overseeing Linux graphics. Half of us are trans.
which is a reminder that so many years later, the same issues, vitriol and discrimination that Lynn dealt with still plague us. What are we, if we can not show empathy to people who struggle with something as fundamental as their gender identity? Who are we to deny them the life they want to lead every day? Who are we to dehumanize others?
[1] https://rosenzweig.io/blog/growing-up-alyssa.html
tiffanyh · 2024-02-15
jamesfmilne · 2024-02-14
Ultimately they build command buffers and send them to the GPU. You'd need a way to do that from macOS.
The original Mesa drivers for the M1 GPU were bootstrapped by doing just that, sending command buffers to the AGX driver in macOS using IOKit.
https://rosenzweig.io/blog/asahi-gpu-part-2.html
https://github.com/AsahiLinux/gpu/blob/main/demo/iokit.c
So you'd need a bit more glue in Mesa to get the surfaces from the GPU into something you can composite onto the screen in macOS.
leidenfrost · 2023-08-07
Obligatory blog entry made by Alyssa when dissecting the M1 GPU hardware: https://rosenzweig.io/blog/asahi-gpu-part-1.html
Rygian · 2022-09-29
"Please temper your expectations: even with hardware documentation, an optimized Vulkan driver stack (with enough features to layer OpenGL 4.6 with Zink) requires many years of full time work. At least for now, nobody is working on this driver full time3. Reverse-engineering slows the process considerably. We won’t be playing AAA games any time soon."
From https://rosenzweig.io/blog/asahi-gpu-part-6.html
argulane · 2022-09-29
This is one of the first Linux kernel driver writen in rust!
Also all of this has progressed so fast thanks to Alyssa doing bunch of GPU reverse engineering on macOS and writing coresponding userspace MESA driver. https://rosenzweig.io/blog/asahi-gpu-part-6.html
NobodyNada · 2022-08-26
> apparently it does!!!
Not in the public release yet. An experimental Mesa driver is running (https://rosenzweig.io/blog/asahi-gpu-part-6.html), but the kernel driver is still a work in progress (though it's making quick progress!). The demo at the end of the article is a proof-of-concept with the M1 acting as an eGPU for another computer; not something usable for a desktop environment yet.
pbasista · 2022-08-22
> Am I remembering something else here?
No. That has indeed happened. It was a work by Alyssa Rosenzweig [0].
If I understand correctly, she implemented the userspace Mesa driver. The kernel driver is being developed by Asahi Lina. Together, they are meant to provide "full open source graphics stack for 3D acceleration on Asahi Linux" [1].
[0] https://rosenzweig.io/blog/asahi-gpu-part-5.html
[1] https://rosenzweig.io/blog/asahi-gpu-part-6.html
Edit: make the quote more accurate, adjust formatting
lynguist · 2022-05-14
She finished high school in 2019 and I assume she was 18 at that time. She would be 21 now. I am in awe with her.
Here’s her CV: https://rosenzweig.io/resume.pdf
monocasa · 2022-04-14
Looking into it more, AGX2 (like pretty much every fairly high perf modern GPU) is heavily SMT, allowing up to 1024 simultaneous threads per core depending on how many registers each shader invocation needs.
https://rosenzweig.io/blog/asahi-gpu-part-3.html