두 명의 개발자가 애플 M4 맥 미니와 맥북 네오(MacBook Neo)를 위한 리눅스 GPU 드라이버를 단 한 달 만에 개발하는 놀라운 성과를 발표했습니다. 이들은 통상 수년이 걸리는 GPU 드라이버 개발 과정을 혁신적으로 단축하여 OpenGL ES 3.0을 완벽하게 준수하는 드라이버를 만들어냈습니다. 이 드라이버는 크롬과 파이어폭스에서 WebGL을 구동하고, 심지어 마인크래프트를 200fps로 실행할 수 있을 만큼 빠릅니다.
이번 개발은 애플의 AGX(Apple GPU) 펌웨어 ABI(Application Binary Interface)와 사용자 공간 구성 요소를 역설계(reverse engineering)하는 과정을 포함했습니다. 개발팀은 이전에 구축한 하이퍼바이저(hypervisor)를 활용하여 macOS의 동작을 추적하고, 이를 기반으로 M4, A18 Pro, M5 사용자 공간을 역설계했습니다. 특히 M1/M2 칩보다 훨씬 복잡해진 A18 Pro 펌웨어 ABI를 분석하는 데 어려움이 있었지만, 하이퍼바이저를 통한 추적과 상태 캡처 방식을 활용하여 성공적으로 구현했습니다. 이들은 애플의 바이너리를 직접 보지 않고 하드웨어 트레이스와 자체 제작 셰이더만을 사용해 '클린 룸(clean room)' 방식으로 개발했다고 강조했습니다.
이번 성과는 애플 실리콘(Apple Silicon) 기반의 맥에서 리눅스(Linux) 운영체제를 더욱 완벽하게 활용할 수 있는 중요한 진전을 의미합니다. 기존에는 GPU 드라이버 부재로 인해 그래픽 성능이 크게 제한되었으나, 이번 개발로 인해 애플 칩의 잠재력을 리눅스 환경에서도 온전히 끌어낼 수 있는 가능성이 열렸습니다. 이는 아사히 리눅스(Asahi Linux) 프로젝트와 같이 애플 하드웨어에서 비공식 운영체제를 구동하려는 커뮤니티에 큰 활력을 불어넣을 것으로 예상됩니다. 장기적으로는 애플 실리콘 기반 서버나 특수 목적 시스템에서 리눅스 활용도를 높이는 데 기여할 수 있습니다.