ΠΠΎΠ½ΡΠΎΡΡΠΈΡΠΌ Khronos, Π·Π°Π½ΠΈΠΌΠ°ΡΡΠΈΠΉΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ², ΠΏΡΠΈΠ·Π½Π°Π» ΠΏΠΎΠ»Π½ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° NVK Π΄Π»Ρ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡ NVIDIA ΡΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ Vulkan 1.0. ΠΡΠ°ΠΉΠ²Π΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ» Π²ΡΠ΅ ΡΠ΅ΡΡΡ ΠΈΠ· Π½Π°Π±ΠΎΡΠ° CTS (Kronos Conformance Test Suite) ΠΈ Π²ΠΊΠ»ΡΡΡΠ½ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ². Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π° Π΄Π»Ρ GPU NVIDIA Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Turing (TITAN RTX, GeForce RTX 2060/2070/2080, GeForce GTX 1660, Quadro RTX 3000-8000, Quadro T1000/T2000). ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π±ΡΠ»Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ Ρ ΡΠ΄ΡΠΎΠΌ Linux 6.5, X.Org X Server 1.20.14, XWayland 22.1.9 ΠΈ GNOME Shell 44.4. ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎ Π·Π°ΡΠ²Π»ΡΡΡ ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π½ΠΈΠΌΠΈ ΡΠΎΡΠ³ΠΎΠ²ΡΠ΅ ΠΌΠ°ΡΠΊΠΈ Khronos.
ΠΡΠ°ΠΉΠ²Π΅Ρ NVK ΡΠΎΠ·Π΄Π°Π½ c Π½ΡΠ»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΎΠ΄ΡΡ ΠΠ°ΡΠΎΠ» Π₯Π΅ΡΠ±ΡΡ (Karol Herbst, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Nouveau ΠΈΠ· Red Hat), ΠΡΠ²ΠΈΠ΄ ΠΠΉΡΠ»ΠΈ (David Airlie, ΠΌΡΠΉΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ DRM ΠΈΠ· Red Hat) ΠΈ ΠΠΆΠ΅ΠΉΡΠΎΠ½ ΠΠΊΡΡΡΠ°Π½Π΄ (Jason Ekstrand, Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Mesa ΠΈΠ· Collabora). ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΎΡΠΊΡΡΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ΄ΡΠ°, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ NVIDIA. Π ΠΊΠΎΠ΄Π΅ NVK ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Nouveau, Π½ΠΎ ΠΈΠ·-Π·Π° ΠΎΡΠ»ΠΈΡΠΈΠΉ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΉ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ NVIDIA ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΉ Π² Nouveau, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³Π°, ΠΏΡΡΠΌΠΎΠ΅ Π·Π°ΠΈΠΌΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΎ ΠΈ ΠΏΠΎ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΎΡΠΌΡΡΠ»ΠΈΠ²Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²Π΅ΡΠΈ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΡ Ρ Π½ΡΠ»Ρ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²Π΅Π»Π°ΡΡ Ρ ΠΎΠ³Π»ΡΠ΄ΠΊΠΎΠΉ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΡΠ°Π»ΠΎΠ½Π½ΠΎΠ³ΠΎ Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π΄Π»Ρ Mesa, ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΈΠΌΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π΄ΡΡΠ³ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ². ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠΌ NVK ΠΏΠΎΠΏΡΡΠ°Π»ΠΈΡΡ ΡΡΠ΅ΡΡΡ Π²Π΅ΡΡ ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ ΠΎΠΏΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ Π² ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΠΊΠΎΠ΄Π° ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², Π΄Π΅Π»Π°Ρ ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, Π° Π½Π΅ ΡΠ»Π΅ΠΏΠΎ ΠΊΠΎΠΏΠΈΡΡΡ ΡΠΎ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π² Π΄ΡΡΠ³ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ . ΠΡΠ°ΠΉΠ²Π΅Ρ ΡΠΆΠ΅ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΡΠΎΡΡΠ°Π² Mesa, Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² API DRM-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Nouveau Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΡΠΎΡΡΠ°Π² ΡΠ΄ΡΠ° Linux 6.6.
ΠΠ· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π°Π½ΠΎΠ½ΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠΈΠ½ΡΡΠΈΠ΅ Π² ΡΠΎΡΡΠ°Π² Mesa Π½ΠΎΠ²ΠΎΠ³ΠΎ Π±ΡΠΊΠ΅Π½Π΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π΄Π»Ρ NVK, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust ΠΈ ΡΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² ΡΡΠ°ΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅, ΠΌΠ΅ΡΠ°Π²ΡΠΈΠ΅ ΠΏΡΠΎΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ² Kronos, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΡΠ°Π½ΡΡΡΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»ΠΊΠΈ ΡΡΠ°ΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠ· ΠΏΠ»Π°Π½ΠΎΠ² Π½Π° Π±ΡΠ΄ΡΡΠ΅Π΅ ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² Π½ΠΎΠ²ΡΡ
Π±ΡΠΊΠ΅Π½Π΄ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ GPU Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ Maxwell ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ API Vulkan 1.3.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru