아사히 리눅스 개발사인 로젠바이크(Rosenzweig)가 애플 실리콘을 탑재한 맥에서 동작하는 오픈GL ES 버전 3.1을 지원하는 GPU 드라이버를 발표했다. 아사히 리눅스 개발자는 알리사 로젠바이크는 M1과 M2 칩 같은 애플 실리콘을 준수하는 세계에서 유일한 오픈GL ES 버전 3.1을 지원하는 아사히 리눅스용 오픈소스 GPU 드라이버를 발표한 것.
로젠바이크는 아사히 리눅스용 GPU 드라이버를 개발해온 인물로 2022년 12월에는 아사히 리눅스용 첫 GPU 드라이버를 구현한 바 있다. 아사히 리눅스용 GPU 드라이버가 오픈GL ES 버전 3.1을 지원하는 것에 대해 로젠바이크는 개발 중인 드라이버가 정확성을 증명하기 위해 수만 개 테스트를 통과했으며 업계에서 인정받은 걸 의미한다고 밝혔다.
오픈GL ES 버전 3.1을 지원하려면 사양 모든 기능을 검증하도록 설계된 공식 적합성 테스트 스위트를 통과해야 한다. 테스트 결과는 표준화 단체(Khronos)에 제출되어 30일간 검증 기간 이후 문제가 발견되지 않으면 구현이 승인된다. 이번에 출시된 GPU 드라이버는 오픈GL ES 3.1버전에 대응할 뿐 아니라 M1 그래픽 표준에 준거한 첫 구현이기도 하다. 다만 로젠바이크는 여기에서 멈출 생각이 없다며 앞으로 GPU 드라이버 개선을 계속할 것이라고 밝히고 있다.
애플 실리콘용 정품 드라이버와 아사히 리눅스용 GPU 드라이버간 차이에 대해 로젠바이크는 불행하게도 정품 드라이버는 표준 그래픽 API(Vulkan, OpenGL, OpenGL ES)를 준수하지 않는다며 애플리케이션이 애플 실리콘에서 동작한다는 보장은 없다고 밝혔다.
독자 드라이버 상에 벌칸 서브세트를 더하는 도구(MoltenVK)를 이용해 애플 실리콘이 대응하지 않는 표준 그래픽 API에 대응하려는 경우도 있다. 하지만 이런 도구에선 중요한 기능이 부족하고 유효 응용 프로그램을 사용할 수 없게 되는 경우도 있다고 한다. 애플이 이런 표준 그래픽 API를 준수하지는 않지만 아사히 리눅스가 자체적으로 이런 표준을 구현하고 있는 이유에 대해 로젠바이크는 최고 품질에 집착하고 리눅스 드라이버가 신뢰할 수 있다는 사실을 사용자에게 알리고 싶었기 때문이라고 말한다. 이를 통해 생태계에 올바른 예를 제시하고 싶었다는 것이다.
이번 아사히 리눅스용 GPU 드라이버가 지원하는 오픈GL ES 버전 3.1에선 그래픽 애플리케이션 내에서 일반 컴퓨팅을 고속화하기 위한 계산 셰이더가 추가되어 3D 게임 물리 시뮬레이션 등을 실행할 수 있다. 이를 통해 CPU와 GPU 물리적 시뮬레이션을 동기화하는데 필요한 걸 제거할 수 있어 게임 실행 속도가 높아진다. 관련 내용은 이곳에서 확인할 수 있다.