- ΠΠ»Ρ RADV (Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π΄Π»Ρ ΡΠΈΠΏΠΎΠ² AMD) ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²ΡΠΉ Π±ΡΠΊΠ΅Π½Π΄ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² «
ACO «, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Valve Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² LLVM. ΠΡΠΊΠ΅Π½Π΄ Π½Π°ΡΠ΅Π»Π΅Π½ Π½Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π°, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π΄Π»Ρ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π° Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠ΅Π½Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ACO Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘++, ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Ρ ΠΎΠ³Π»ΡΠ΄ΠΊΠΎΠΉ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π±ΡΡΡΡΡΠ΅ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΈΠ·Π±Π΅Π³Π°Ρ ΡΡΡΡΠΊΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° SSA (Static Single Assignment) ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ², ΡΠΎΡΠ½ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΡΠΈΡΠ»ΡΡ ΡΠ΅Π³ΠΈΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅ΠΉΠ΄Π΅ΡΠ°. ACO ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ GPU Vega 8, Vega 9, Vega 10 ΠΈ Navi 10 ΡΠ΅ΡΠ΅Π· Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ «RADV_PERFTEST=aco»; - Π ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ Π²ΠΊΠ»ΡΡΡΠ½ Gallium3D-Π΄ΡΠ°ΠΉΠ²Π΅Ρ
Zink , ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ API OpenGL ΠΏΠΎΠ²Π΅ΡΡ Vulkan. Zink ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½Π½ΡΠΉ OpenGL ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠΎΠ»ΡΠΊΠΎ API Vulkan; - Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ ANV ΠΈ OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ iris ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° 12 ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² Intel (Tiger Lake, gen12). Π ΡΠ΄ΡΠΎ Linux, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Tiger Lake, Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²ΡΠΏΡΡΠΊΠ° 5.4;
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ
i965 ΠΈ iris ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² SPIR-V, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π² Π΄Π°Π½Π½ΡΡ
Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ
ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ
OpenGL 4.6 ; - Π Π΄ΡΠ°ΠΉΠ²Π΅Ρ RadeonSI Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU AMD Navi 14 ΠΈ ΡΠ»ΡΡΡΠ΅Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 8K Π² ΡΠΎΡΠΌΠ°ΡΠ°Ρ H.265 ΠΈ VP9;
- Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅Ρ RADV Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΠΆΠΈΠΌΠ°
Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ , Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² ΠΏΠΎΡΠΎΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΡΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° seccomp. Π Π΅ΠΆΠΈΠΌ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ RADV_SECURE_COMPILE_THREADS; - Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ
Π΄Π»Ρ ΡΠΈΠΏΠΎΠ² AMD Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΠΎΡΠ²ΠΈΠ²ΡΠΈΠΉΡΡ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΡΠ΄ΡΠ° AMDGPU
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ±ΡΠΎΡΠ° GPU; - ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ APU AMD Radeon. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Gallium3D-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Iris Π΄Π»Ρ GPU Intel;
- Π Gallium3D-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ LLVMpipe, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ,
ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ²; - Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΉΠ΄Π΅ΡΠΎΠ² Π½Π° Π΄ΠΈΡΠΊΠ΅
ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π° Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ 4 ΡΠ΄Π΅Ρ CPU; - ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ Meson Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π² Windows Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ MSVC ΠΈ MinGW. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ scons ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΎ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌ, ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΎΡ Windows;
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ EGL-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ EGL_EXT_image_flush_external;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ OpenGL:
-
GL_ARB_gl_spirv Π΄Π»Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² i965 ΠΈ iris; -
GL_ARB_spirv _Π΄Π»Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² i965 ΠΈ iris; -
GL_EXT_demote_to_helper_invocation Π΄Π»Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² i965 ΠΈ iris;
-
- Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅Ρ RADV (Π΄Π»Ρ ΠΊΠ°ΡΡ AMD) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ:
- Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅Ρ ANV (Π΄Π»Ρ ΠΊΠ°ΡΡ Intel) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ:
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru