NVK, trình điều khiển mở cho card đồ họa NVIDIA, hỗ trợ Vulkan 1.0

Tập đoàn Khronos, nơi phát triển các tiêu chuẩn đồ họa, đã công nhận khả năng tương thích hoàn toàn của trình điều khiển NVK mở dành cho card màn hình NVIDIA với thông số kỹ thuật Vulkan 1.0. Trình điều khiển đã vượt qua thành công tất cả các bài kiểm tra từ CTS (Bộ kiểm tra tuân thủ Kronos) và được đưa vào danh sách trình điều khiển được chứng nhận. Chứng nhận đã được hoàn thành cho GPU NVIDIA dựa trên vi kiến ​​trúc Turing (TITAN RTX, GeForce RTX 2060/2070/2080, GeForce GTX 1660, Quadro RTX 3000-8000, Quadro T1000/T2000). Thử nghiệm được thực hiện trong môi trường có nhân Linux 6.5, X.Org X Server 1.20.14, XWayland 22.1.9 và Gnome Shell 44.4. Việc nhận được chứng chỉ cho phép bạn chính thức tuyên bố khả năng tương thích với các tiêu chuẩn đồ họa và sử dụng các nhãn hiệu Khronos được liên kết.

Trình điều khiển NVK được xây dựng từ đầu bởi một nhóm bao gồm Karol Herbst (nhà phát triển Nouveau tại Red Hat), David Airlie (người bảo trì DRM tại Red Hat) và Jason Ekstrand (nhà phát triển Mesa tích cực tại Collabora). Khi tạo trình điều khiển, các nhà phát triển đã sử dụng các tệp tiêu đề chính thức và các mô-đun hạt nhân mở do NVIDIA xuất bản. Mã NVK đã sử dụng một số thành phần cơ bản của trình điều khiển Nouveau OpenGL ở một số nơi, nhưng do sự khác biệt về tên trong tệp tiêu đề NVIDIA và tên được thiết kế ngược trong Nouveau nên việc mượn mã trực tiếp rất khó khăn và phần lớn nhiều thứ phải được suy nghĩ lại và thực hiện lại từ đầu.

Quá trình phát triển được thực hiện nhằm mục đích tạo trình điều khiển Vulkan tham chiếu mới cho Mesa, mã của trình điều khiển này có thể được mượn khi tạo các trình điều khiển khác. Để làm được điều này, khi làm việc trên trình điều khiển NVK, họ đã cố gắng tính đến tất cả kinh nghiệm hiện có trong việc phát triển trình điều khiển Vulkan, duy trì cơ sở mã ở dạng tối ưu và giảm thiểu việc chuyển mã từ các trình điều khiển Vulkan khác, làm như vậy đối với công việc tối ưu và chất lượng cao, không sao chép một cách mù quáng cách thực hiện trong các trình điều khiển khác. Trình điều khiển đã được bao gồm trong Mesa và những thay đổi cần thiết đối với API trình điều khiển Nouveau DRM cũng được bao gồm trong nhân Linux 6.6.

Trong số những thay đổi trong thông báo, Mesa cũng lưu ý việc áp dụng trình biên dịch phụ trợ mới cho NVK, được viết bằng ngôn ngữ Rust và giải quyết các vấn đề trong trình biên dịch cũ cản trở việc truyền văn bản của Kronos, cũng như loại bỏ một số hạn chế cơ bản của kiến trúc không thể sửa được nếu không làm lại hoàn toàn trình biên dịch cũ. Trong số các kế hoạch cho tương lai, việc bổ sung hỗ trợ GPU dựa trên vi kiến ​​trúc Maxwell và triển khai hỗ trợ đầy đủ cho API Vulkan 1.3 đều được đề cập trong phần phụ trợ mới.

Nguồn: opennet.ru

Thêm một lời nhận xét