기타 hackernews · 19시간 전

M4 맥 미니 리눅스 GPU 드라이버를 한 달 만에 만든 이야기

핵심 요약
  • 개발자 2명이 복잡하기로 악명 높은 애플 M4 맥 미니와 A18 Pro용 리눅스 GPU 드라이버를 한 달 만에 자체 개발했습니다.
  • 정상적인 개발에 수년이 걸리는 작업이었으나, 하이퍼바이저 트레이스와 LLM(코덱스)을 활용한 클린룸 리버스 엔지니어링으로 기간을 대폭 단축했습니다.
  • 현재 크롬/파이어폭스 구동은 물론 마인크래프트를 200fps로 실행할 수 있는 수준이며 곧 일반 사용자에게도 공개될 예정입니다.
요약 원래 몇 년씩 걸린다는 애플 실리콘용 리눅스 GPU 드라이버 개발을, 개발자 두 명이서 불과 한 달 만에 완성해 낸 비하인드 스토리가 해외 테크 커뮤니티에서 큰 화제를 모으고 있습니다. 개발자 코디 호(Cody Ho)와 니클라스(Niklas)는 최근 출시된 M4 맥 미니와 맥북 네오(A18 Pro 기반) 환경에서 완벽하게 작동하는 OpenGL ES 3.0 호환 GPU 드라이버를 개발했습니다. 이들이 제작한 드라이버는 크롬과 파이어폭스 브라우저에서 화면 합성 및 WebGL을 원활히 구동하는 것은 물론, 마인크래프트 실행 시 무려 200fps에 달하는 쾌적한 프레임을 뽑아낼 만큼 뛰어난 성능을 자랑합니다. 애플 실리콘의 GPU(AGX) 드라이버 개발이 극악의 난이도로 꼽히는 이유는 바로 독특하고 기형적인 펌웨어 구조 때문입니다. 애플은 일반적인 커널 드라이버를 둘로 쪼개어 절반을 커널에, 나머지 절반을 전용 RTOS(RTKit) 위에서 돌아가는 GPU 펌웨어에 심어두고, 호스트와 펌웨어가 복잡하게 얽힌 메모리 구조체를 공유하도록 설계했습니다. 특히 이번 M4 및 A18 Pro는 과거 M1/M2 시절보다 구조체가 1.5배, 포인터가 2배 이상 늘어나는 등 복잡성이 아득하게 치솟은 상태였습니다. 이들은 자체 제작한 하이퍼바이저를 통해 macOS가 동작하는 하드웨어 메모리 트레이스만을 관찰하고 재생(replay)하는 '클린 룸' 리버스 엔지니어링 방식을 고수했습니다. 특히 이 과정에서 AI 코딩 모델(Codex)을 적극적으로 투입했는데, 모델이 메모리 덤프를 직접 복원하고 점진적으로 원본 코드로 재구성해 나가는 놀라운 적응력을 보여주며 개발 기간을 획기적으로 단축할 수 있었다고 밝혔습니다. 현재 사용자 배포를 위한 마무리 작업이 진행 중입니다.
Sponsored · 광고