NVIDIA ได้ปล่อยเวอร์ชันเสถียรของไดรเวอร์ NVIDIA รุ่นใหม่ เวอร์ชัน 570.124 แล้ว ไดรเวอร์นี้พร้อมใช้งานสำหรับ Linux (ARM64, x86_64), FreeBSD (x86_64) และ Solaris (x86_64) NVIDIA 570.x กลายเป็นเวอร์ชันเสถียรลำดับที่เก้าหลังจากที่ NVIDIA เปิดเผยซอร์สโค้ดของส่วนประกอบระดับเคอร์เนล ซอร์สโค้ดสำหรับโมดูลเคอร์เนล nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko และ nvidia-uvm.ko (Unified Video Memory) จากเวอร์ชันใหม่ของ NVIDIA รวมถึงส่วนประกอบที่ใช้ร่วมกันซึ่งไม่เฉพาะเจาะจงกับระบบปฏิบัติการนั้น ๆ ถูกจัดเก็บไว้บน GitHub ส่วนเฟิร์มแวร์และไลบรารีในพื้นที่ผู้ใช้ เช่น CUDA, OpenGL และ Vulkan ยังคงเป็นกรรมสิทธิ์ของ NVIDIA
การเปลี่ยนแปลงที่สำคัญ:
- แผงควบคุม nvidia-settings ได้รับการสลับให้ใช้ไลบรารี NVML แทน NV-CONTROL เพื่อควบคุมความถี่ GPU และความเร็วพัดลม การเปลี่ยนแปลงไปใช้ NVML ทำให้มั่นใจได้ว่า nvidia-settings ทำงานในสภาพแวดล้อมที่ใช้โปรโตคอล Wayland ซึ่งไม่สามารถใช้ส่วนขยาย NV-CONTROL X ได้ การดำเนินการบางอย่างที่เคยเปิดให้ผู้ใช้ที่ไม่มีสิทธิ์ใช้งานได้นั้น ปัจจุบันจะต้องได้รับสิทธิ์ที่สูงขึ้น
- เพิ่มการรองรับสำหรับ VRR (อัตราการรีเฟรชตัวแปร) ในการกำหนดค่าจอภาพหลายจอ รวมถึงสภาพแวดล้อม Wayland VRR ช่วยให้สามารถปรับอัตราการรีเฟรชของจอภาพได้ เพื่อให้การเล่นเกมและเล่นวิดีโอเป็นไปอย่างราบรื่นไม่มีภาพขาด
- รองรับการใช้งานส่วนขยาย Vulkan VK_KHR_incremental_present แล้ว
- สำหรับ GPU ที่รองรับการเปลี่ยนแปลงความถี่ของซอฟต์แวร์ ตัวกำหนดค่า nvidia-settings จะเปิดใช้งานการตั้งค่าการโอเวอร์คล็อก GPU ตามค่าเริ่มต้น ก่อนหน้านี้ หากต้องการให้การตั้งค่าดังกล่าวปรากฏขึ้น จำเป็นต้องเปิดใช้งานในไฟล์การกำหนดค่าผ่านส่วน "Coolbits"
- สำหรับ GPU ที่ใช้ Ada และสถาปัตยกรรมไมโครใหม่กว่า โหมดประหยัดพลังงานจะถูกปิดใช้งานสำหรับพื้นผิวที่สร้างผ่าน DRM Dumb-Buffers API (เช่น เมื่อใช้ fbdev DRM) การเปลี่ยนแปลงนี้แก้ไขปัญหาเกี่ยวกับหน้าจอสีดำที่ปรากฏเมื่อเรนเดอร์ผ่านบัฟเฟอร์ด้านหน้าแทนที่จะสลับบัฟเฟอร์โดยใช้ KMS
- เพิ่มพารามิเตอร์ 'conceal_vrr_caps' ลงในโมดูลเคอร์เนล nvidia-modeset เพื่อควบคุมการเปิดใช้งานฟีเจอร์การแสดงผลบางอย่าง เช่น LMB (Ultra Low Motion Blur) ที่ไม่เข้ากันกับ VRR (Variable Refresh Rate)
- เพิ่มข้อมูลลงในไฟล์ /proc/driver/nvidia/gpus/*/power เพื่อสะท้อนสถานะการใช้งานเทคโนโลยีปรับปรุงประสิทธิภาพ Dynamic Boost
- แบ็กเอนด์ NVIDIA GBM ได้เปิดใช้งานโหมดการทำงานร่วมกันของแอปพลิเคชัน 32 บิต
- เพิ่มไฟล์ /usr/share/nvidia/files.d/sandboxutils-filelist.json พร้อมรายการไฟล์ไดรเวอร์ทั้งหมดที่ใช้ในสภาพแวดล้อมที่ใช้แซนด์บ็อกซ์ เช่น nvidia-container-toolkit และ enroot
- เพิ่มการรองรับการเปิดใช้งานโหมดระงับแล้วไฮเบอร์เนตผ่านทาง systemd
- โดยค่าเริ่มต้น พารามิเตอร์ "nvidia-drm modeset=1" และ "nvidia-drm fbdev=1" จะถูกตั้งค่าไว้ ซึ่งจะใช้โมดูล nvidia-drm (Direct Rendering Manager) แทนคอนโซลระบบที่ใช้เฟรมบัฟเฟอร์ การเปลี่ยนแปลงนี้แก้ไขปัญหาเอาต์พุตไม่ถูกต้องเมื่อใช้หน้าจอเดียวพร้อมไดรเวอร์ nvidia-drm และ simpledrm
- นำการควบคุมการขัดจังหวะของตัวควบคุมการแสดงผลแบบทดลองมาใช้งานโหมดการจัดการการขัดจังหวะที่มีความล่าช้าน้อยที่สุด โดยปิดใช้งานตามค่าเริ่มต้น โหมดนี้มีประโยชน์ในการลดการกระตุกในระบบ VR ภายใต้สภาวะโหลดระบบสูง หากต้องการเปิดใช้งานในโมดูล nvidia.ko คุณสามารถใช้พารามิเตอร์ "NVreg_RegistryDwords=RMIntrLockingMode=1" ได้
- มีการเพิ่มการรองรับการสร้างโปรแกรมด้วยเคอร์เนลเวอร์ชันใหม่แล้ว Linux.
- เพิ่มโปรไฟล์เพื่อปรับปรุงประสิทธิภาพของเกม "Indiana Jones and the Great Circle"
- เพิ่มโปรไฟล์เพื่อแก้ไขปัญหาการแสดงผลหน้าจอไม่ถูกต้องใน Assassin's Creed Valhalla และ Assassin's Creed Mirage
- แก้ไขปัญหาประสิทธิภาพการทำงานและหยุดนิ่งที่เกิดขึ้นเมื่อเลื่อนหน้าต่างบนระบบ Wayland บนระบบที่มีเฟิร์มแวร์ GSP
- แก้ไขจุดบกพร่องที่ทำให้บางแอปพลิเคชันที่ใช้ Vulkan graphics API หยุดทำงานเมื่อจัดการเหตุการณ์ปรับขนาดหน้าต่าง
- แก้ไขจุดบกพร่องที่ทำให้แอปพลิเคชันมัลติเธรดบางตัวที่ใช้ OpenGL ในสภาพแวดล้อมที่ใช้ Xwayland หยุดทำงาน ตัวอย่างเช่น ปัญหาเกิดขึ้นในเกม Civilization 6
ที่มา: opennet.ru
