this post was submitted on 18 Jul 2025
85 points (97.8% liked)
Programming
21924 readers
610 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Not an expert, but I'll give it a shot. That way someone will speak up to correct me. ๐ธ
With an AMD GPU on Linux, you've got your kernel
amdgpu
driver which talks to the hardware, loads firmware, etc.Sitting on top of that is Mesa, which provides an opengl and vulkan driver. Your application talks to the opengl driver which talks to the kernel driver which talks to the hardware.
Windows has it's own graphics stack, which has video card drivers and DirectX drivers.
Metal is Apple's proprietary Vulkan knock-off, which seems to exist to force game devs to write games that only run on MacOS. This hasn't really worked.
Magma seems to be about inserting a layer between the kernel driver and Mesa, so you can use Mesa OpenGL drivers on top of Magma on Windows kernel drivers? That's not really something most people are looking to do.
I think it's more like Vulkan was a Metal knockoff. Metal released (for mobile) June 2014 and Vulkan research kicked off July 2014. Vulkan was only announced March 2015, and I would think it took more than three months of work for Apple to release Metal for macOS June 2015. And then Vulkan's specs and SDK were released in February 2016. Though I doubt Apple was pushing for Metal to become an open cross-platform standard either.
Vulkan was the successor to AMD's Mantle API from 2013, though. Metal wasn't first.
As usual, Apple was never the first to have the idea or have the first implementation. They often take something, make it glossy, and market the hell out of it. Luckily it hasn't displaced Windows yet and Linux is gaining ground.
Anti Commercial-AI license