ΠΠ°ΡΠΎΠ½ ΠΠ»Π°ΡΡΠ½Π΅Ρ, Π΅Π΄ΠΈΠ½ ΠΎΡ Π²ΠΎΠ΄Π΅ΡΠΈΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π½Π° NVIDIA, ΠΎΡΠ΅Π½ΠΈ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Wayland Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π½Π° NVIDIA ΠΈ ΠΈΠ·Π±ΡΠΎΠΈ ΠΎΠ±Π»Π°ΡΡΠΈΡΠ΅, Π² ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Wayland, Π²ΡΠ΅ ΠΎΡΠ΅ ΠΈΠ·ΠΎΡΡΠ°Π²Π°Ρ ΠΎΡ X11. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈΡΠ΅ Π½Π° NVIDIA 565, ΠΊΠΎΡΡΠΎ Π΅ Π² Π΅ΡΠ°ΠΏ Π½Π° Π±Π΅ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π΅. ΠΠ·ΠΎΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ ΠΊΠ°ΠΊΡΠΎ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΡΠ°ΠΌΠΈΡΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π½Π° NVIDIA, ΡΠ°ΠΊΠ° ΠΈ Ρ ΠΎΠ±ΡΠΈΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΈΡΠ΅ ΡΡΡΠ²ΡΡΠΈ, ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π½Π° Π½Π΅Π³ΠΎΠ²Π° ΠΎΡΠ½ΠΎΠ²Π°.
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈΡΠ΅ Π½Π° NVIDIA Π² ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ Wayland Π·Π°ΡΠ°Π΄ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΈΡΠ΅. ΡΡΡΠ²ΡΡΠΈ.
- Π‘ΡΠ΅ΡΠ΅ΠΎΠ²ΡΠ²ΠΎΠ΄ (ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΡΡΠ΅ΡΠ΅ΠΎΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π±ΡΡΠ΅ΡΠΈ Π·Π° Π»ΡΠ²ΠΎΡΠΎ ΠΈ Π΄ΡΡΠ½ΠΎΡΠΎ ΠΎΠΊΠΎ), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ GLX, EGL ΠΈ Vulkan.
- Π Π΅ΠΆΠΈΠΌ SLI Mosaic, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ GPU Π² Π΅Π΄ΠΈΠ½ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ GPU, Π·Π° Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ Π³ΠΎΠ»ΡΠΌ Π²ΠΈΡΡΡΠ°Π»Π΅Π½ Π΅ΠΊΡΠ°Π½, ΡΡΡΡΠΎΡΡ ΡΠ΅ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΈΡΠΏΠ»Π΅Ρ.
- ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΡΡ nvidia-settings Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Π½ Π½ΠΈΠ²ΠΎ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΈ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ Wayland Π»ΠΈΠΏΡΠ²Π° Π΅Π΄ΠΈΠ½Π΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΅ΠΊΡΠ°Π½ΠΈ.
ΠΡΠΊΠΎΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π΅Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ Π΅Π΄Π½Π°ΠΊΠ²Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΈ. ΡΡΡΠ²ΡΡΠΈ Wayland. ΠΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅Π·ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π³ΡΠ°ΡΠΈΡΠ½ΠΈΡ API Vulkan ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Vulkan VK_KHR_display ("Vulkan Direct to Display"), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠ½Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π΅ΠΊΡΠ°Π½Π°, Π·Π°ΠΎΠ±ΠΈΠΊΠ°Π»ΡΠΉΠΊΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΈΡ ΡΡΡΠ²ΡΡ. Π§ΡΠ΅Π· Vulkan ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΡΠΎ ΡΡΠ΅ΡΠ΅ΠΎΠ²ΡΠ²ΠΎΠ΄ (VK_KHR_multiview Ρ ΡΠΈΡΡΠ²Π°Π½Π΅ Π² Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π²ΡΠΏΠΎΡΡΠ°), ΡΠ΅ΠΆΠΈΠΌ Vulkan Explicit SLI (ΡΡΠ΅Π· VK_KHR_device_group), Π³ΡΡΠΏΠΈ ΠΎΡ ΡΡΠ΅ΠΉΠΌΠ±ΡΡΠ΅ΡΠΈ (Swap Group, ΡΡΠ΅Π· VK_NV_present_barrier), Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ°Π΄ΡΠΈ (Frame Lock) ΠΈ ΠΎΠ±ΡΠΈ Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½ΠΈΡ (Genlock).
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π²Π΅ΡΠ΅ ΡΠ° Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° Π±ΡΠ΄Π°Ρ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π² Π±ΡΠ΄Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈΡΠ΅ Π½Π° NVIDIA:
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° VRR (Variable Refresh Rate) Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈ Π² ΡΡΠ΅Π΄ΠΈ Ρ Wayland. Π©Π΅ Π±ΡΠ΄Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π² ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈΡΠ΅ Π½Π° NVIDIA.
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° "nvidia-drm fbdev=1", ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΡΠ΅ΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΅Π΄ΠΈΠ½ Π΅ΠΊΡΠ°Π½ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈΡΠ΅ nvidia-drm ΠΈ simpledrm.
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° "nvidia-drm modeset=1".
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅ΠΉΠ½ΠΈΡ ΠΌΡΠ»ΡΠΈΠΏΠ»Π΅ΠΊΡΠΎΡ (mux) Π² Wayland Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ» Π΅ΠΊΡΠ°Π½ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΠΏΡΠ΅Π· Π΄ΠΈΡΠΊΡΠ΅ΡΠ΅Π½ GPU. ΠΠΈΡΠΏΠ»Π΅ΠΉΠ½ΠΈΡΠ΅ ΠΌΡΠ»ΡΠΈΠΏΠ»Π΅ΠΊΡΠΎΡΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² Π»Π°ΠΏΡΠΎΠΏΠΈ Ρ Π΄Π²Π° GPU (ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ ΠΈ Π΄ΠΈΡΠΊΡΠ΅ΡΠ΅Π½) Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΠΈΡ GPU Ρ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²ΡΠ½ΡΠ½ΠΈΡ Π΅ΠΊΡΠ°Π½.
- Π Π°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅ΠΈΡΠ΅, ΠΊΠ°ΡΠΎ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΠΌΠ΅ΡΠ²Π°Π½Π΅, ΠΈΠ·ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΈΠΊΡΠ΅Π»ΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° COLOR_ENCODING/COLOR_RANGE.
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Ρ Xwayland Π½Π° Π±ΡΡΠ΅ΡΠ° Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΅ΠΊΡΠ°Π½Π° (front-buffer) ΠΏΡΠΈ Π΄Π²ΠΎΠΉΠ½Π° Π±ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π² nvidia-drm (Direct Rendering Manager) Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Presentation Timing Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄ΡΡΠΈΡΠ΅ ΠΊΠ°Π΄ΡΠΈ Π½Π° Π΅ΠΊΡΠ°Π½Π°.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° API VDPAU (Video Decode and Presentation) Π·Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π² ΡΡΠ΅Π΄ΠΈΡΠ΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Wayland Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π²ΠΈΠ΄Π΅ΠΎ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ ΠΈ ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° ΡΡΡΠ°Π½ΠΈ Π½Π° GPU Π·Π°Π΄Π°ΡΠΈ, ΠΊΠ°ΡΠΎ ΠΏΠΎΡΡ-ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°, ΡΠΌΠ΅ΡΠ²Π°Π½Π΅ (compositing), Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π² ΡΠΈΡΡΠ΅ΠΌΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Wayland Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° vGPU, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ GPU NVIDIA Π² ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ GPU NVIDIA.
ΠΡ Π½Π°ΡΠΊΠΎΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ΅ ΠΎΡΠΊΡΠΎΡΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° egl-x11, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ EGL Π² DDX-ΡΠ΅ΡΠ²Π΅ΡΠ° Xwayland, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° X11-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΡΠ΅Π΄ΠΈΡΠ΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Wayland.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
