Π Π΅Π»ΠΈΠ· Mesa 20.0.0 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Vulkan 1.2

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Ρ€Π΅Π»ΠΈΠ· свободной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ API OpenGL ΠΈ Vulkan — Mesa 20.0.0. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ выпуск Π²Π΅Ρ‚ΠΊΠΈ Mesa 20.0.0 ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ статус — послС провСдСния ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стабилизации ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ вСрсия 20.0.1. Π’ Mesa 20.0 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.6 для GPU Intel (Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ i965, iris) ΠΈ AMD (radeonsi), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.5 для GPU AMD (r600) ΠΈ NVIDIA (nvc0), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Vulkan 1.2 для ΠΊΠ°Ρ€Ρ‚ Intel ΠΈ AMD.

Π‘Ρ€Π΅Π΄ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:

  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ RadeonSI (для GPU AMD) обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°
    OpenGL 4.6 (OpenGL 4.6 Ρ€Π°Π½Π΅Π΅ поддСрТивался Π² Mesa Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для GPU Intel) ΠΈ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ прСдставлСния ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² SPIR-V.

  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… RADV ΠΈ ANV для GPU AMD ΠΈ Intel Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° графичСского API Vulkan 1.2;
  • Для GPU Intel Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Broadwell ΠΈ Skylake (Gen8+) ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ задСйствован Π½ΠΎΠ²Ρ‹ΠΉ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Iris, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎ своим возмоТностям достиг ΠΏΠ°Ρ€ΠΈΡ‚Π΅Ρ‚Π° с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ i965. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ Iris основан Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Gallium3D, выносящСй Π·Π°Π΄Π°Ρ‡ΠΈ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π½Π° сторону DRI-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Π² ядрС Linux ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ состояний с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ кэша ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Для Ρ‡ΠΈΠΏΠΎΠ² Π½Π° Π±Π°Π·Π΅ старых ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, Π΄ΠΎ Haswell Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, оставлСн Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ i965;
  • Π’ RADV (Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для Ρ‡ΠΈΠΏΠΎΠ² AMD) ΠΈ бэкСнд для компиляции ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² «ACO«, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ развиваСтся ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Valve Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ компилятору ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² LLVM, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠΉ GCN 1.0/GFX6 (Southern Islands) ΠΈ GCN 1.1/GFX7 (Sea Islands);
  • Π’ RADV ΠΈ ACO обСспСчСна компиляция гСомСтричСских ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ²;
  • Π’ RADV ΠΈ ACO для GPU GFX10 (Navi) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° Wave32 (объСдинСниС 32 ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² ΠΎΠ΄Π½Ρƒ «Π²ΠΎΠ»Π½Ρƒ» для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ выполнСния);
  • Π”Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ LLVMpipe ΠΈ RadeonSI ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° использованиС бСстипового ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ прСдставлСниС (IR) ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² NIR, Π½Π°Ρ†Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° самом Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, ΠΏΠΎΠ΄ GLSL IR ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ IR Mesa. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° оптимизация ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ NIR;
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ RadeonSI Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° live-кэша, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ отсСиваниС Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² скомпилированных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ²;
  • Π’ OpenGL ΠΈ Vulkan Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ для GPU Intel Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² Gen11 (Jasper Lake);
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ V3D (для Raspberry Pi) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° гСомСтричСских ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… OpenGL ES 3.2, ΠΈ обСспСчСна полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL ES 3.1;
  • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° оптимизация ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° TURNIP для GPU Qualcomm Adreno;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ OpenGL:
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ RADV (для ΠΊΠ°Ρ€Ρ‚ AMD) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ:
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ANV (для ΠΊΠ°Ρ€Ρ‚ Intel) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ:

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