M4 Mac Mini에 리눅스 GPU 드라이버, 한 달 만에 뚝딱

“Niklas와 필자가 약 한 달 만에 M4 Mac Mini와 MacBook Neo용 완전한 OpenGL ES 3.0 호환 GPU 드라이버를 개발했다. 보통 수년이 걸리는 작업으로, 하이퍼바이저로 수집한 하드웨어 트레이스만 사용해 AGX 펌웨어 ABI와 사용자 공간을 리버스 엔지니어링하는 클린룸 방식을 따랐다. Chrome·Firefox의 WebGL과 Minecraft 200fps 구동이 가능하며, 아직 최종 사용자용은 아니지만 Vulkan 지원도 준비 중이다.”

AI 요약

Niklas와 Cody Ho는 약 한 달 만에 M4 Mac Mini와 MacBook Neo용 완전한 OpenGL ES 3.0 호환 GPU 드라이버를 개발했다. 통상 수년이 걸리는 작업을 하이퍼바이저를 이용한 역공학과 클린룸 기법으로 단축했으며, Chrome·Firefox의 WebGL과 Minecraft 200fps 실행까지 성공했다. Apple의 AGX GPU 펌웨어 ABI와 사용자 공간 컴포넌트를 하드웨어 트레이스만으로 분석해 리눅스 커널 드라이버까지 구현했다.

핵심 포인트

  • M4, A18 Pro, M5 사용자 공간을 라이브 프로빙만으로 역공학, Apple 드라이버가 방출하지 않는 하드웨어 지원 기능 발견
  • 커스텀 IR/셰이더 컴파일러, 커맨드 스트림 빌더 등 완전한 사용자 공간 드라이버 구축
  • 하이퍼바이저 트레이스로 AGX 펌웨어 ABI를 처음부터 역공학, 리눅스 커널 드라이버 구현
  • Apple 바이너리를 전혀 열람하지 않고 클린룸 방식으로 진행, 모든 실험을 agx-re 저장소에 공개

향후 전망

  • 아직 최종 사용자용으로는 준비되지 않았으나, 조속한 배포를 목표로 개발 중
  • OpenGL에 이어 Vulkan 드라이버 구현도 계획되어 있어 Apple Silicon 리눅스 생태계 확장 기대
출처:hackernews
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...