Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ Asahi сСртифицирована ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.6 для Ρ‡ΠΈΠΏΠΎΠ² Apple M1 ΠΈ M2

Π’ Asahi, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ для GPU Apple AGX, обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.6 ΠΈ OpenGL ES 3.2 для Ρ‡ΠΈΠΏΠΎΠ² Apple M1 ΠΈ M2. ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π² Ρ€ΠΎΠ΄Π½Ρ‹Ρ… графичСских Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… для Ρ‡ΠΈΠΏΠΎΠ² M1 ΠΎΡ‚ Apple Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ спСцификация OpenGL 4.1, Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.6 ΠΏΠ΅Ρ€Π²ΠΎΠΉ появилась Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅. Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ ΡƒΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² состав Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Fedora ΠΈ доступны для использования Π² спСциализированной сборкС Fedora Asahi Remix 39, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΉ для установки Π½Π° систСмы с ARM-Ρ‡ΠΈΠΏΠ°ΠΌΠΈ Apple.

Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, консорциум Khronos, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ графичСских стандартов, ΠΏΡ€ΠΈΠ·Π½Π°Π» ΠΏΠΎΠ»Π½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Asahi для GPU AGX, поставляСмого Π² Ρ‡ΠΈΠΏΠ°Ρ… Apple M1 ΠΈ M2, со спСцификациями OpenGL 4.6 ΠΈ OpenGL ES 3.2. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΡ‘Π» всС тСсты ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° CTS (Kronos Conformance Test Suite) ΠΈ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π² список сСртифицированных Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ². ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π½Π° устройствах Apple M1, M1 Pro/Max/Ultra, M2 ΠΈ M2 Pro/Max Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ с дистрибутивом Asahi Linux Fedora Remix, Mesa 24.0.0 ΠΈ X.Org X Server (X11_GLX). ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ Apple для Ρ‡ΠΈΠΏΠΎΠ² M1 ΠΈ M2 ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² список сСртифицированных Π² Khronos Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ². ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ сСртификата Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π·Π°ΡΠ²Π»ΡΡ‚ΡŒ ΠΎ совмСстимости с графичСскими стандартами ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ связанныС с Π½ΠΈΠΌΠΈ Ρ‚ΠΎΡ€Π³ΠΎΠ²Ρ‹Π΅ ΠΌΠ°Ρ€ΠΊΠΈ Khronos.

Π’ GPU Ρ‡ΠΈΠΏΠΎΠ² M1 ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ возмоТности, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ OpenGL ES 3.2 ΠΈ OpenGL 4.2, поэтому подобная ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π° Π±Π°Π·Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. НапримСр, гСомСтричСскиС ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Ρ‹, тСссСляция ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ· Π²Π΅Ρ€ΡˆΠΈΠ½Π½ΠΎΠ³ΠΎ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π° (transform feedback) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², отсСчСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (cull distance) — Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΡΡ†ΠΈΡŽ, Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ отсСчСниСм (clip control) Ρ‡Π΅Ρ€Π΅Π· эпилог Π²Π΅Ρ€ΡˆΠΈΠ½Π½ΠΎΠ³ΠΎ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π°. Π’ дальнСйшСм Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² для GPU Apple AGX Π±ΡƒΠ΄Π΅Ρ‚ сосрСдоточСна Π½Π° обСспСчСнии ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ графичСского API Vulkan, Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽΡ‚ Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ ΡƒΠΆΠ΅ протСстированного Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… для OpenGL.

Напомним, Ρ‡Ρ‚ΠΎ для GPU Ρ‡ΠΈΠΏΠΎΠ² Apple M1 ΠΈ M2 развиваСтся Π΄Π²Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² сопряТСнии Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ: DRM-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ (Direct Rendering Manager) drm-asahi для ядра Linux, написанный Π½Π° языкС Rust, ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ asahi для Mesa, написанный Π½Π° языкС Π‘ΠΈ. Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ развиваСтся с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ API Vulkan, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс для взаимодСйствия с пространством ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ спроСктирован с оглядкой Π½Π° UAPI, прСдоставляСмый Π½ΠΎΠ²Ρ‹ΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ Intel Xe. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² Ρ‡ΠΈΠΏΠ°Ρ… Apple M1/M2 примСняСтся собствСнный GPU, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ достаточно слоТныС совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ нСзависимых Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² примСняСтся ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΈΠ· macOS.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru