NVK, trình điều khiển Vulkan mã nguồn mở cho card đồ họa NVIDIA, đã được ra mắt

Collabora đã giới thiệu NVK, trình điều khiển nguồn mở mới cho Mesa triển khai API đồ họa Vulkan cho thẻ video NVIDIA. Trình điều khiển được viết từ đầu bằng cách sử dụng các tệp tiêu đề chính thức và các mô-đun hạt nhân nguồn mở do NVIDIA xuất bản. Mã trình điều khiển có nguồn mở theo giấy phép MIT. Trình điều khiển hiện chỉ hỗ trợ GPU dựa trên vi kiến ​​trúc Turing và Ampere, được phát hành từ tháng 2018 năm XNUMX.

Dự án đang được phát triển bởi một nhóm bao gồm Karol Herbst, nhà phát triển Nouveau tại Red Hat, David Airlie, nhà 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 phát triển trình điều khiển mới, các thành phần cơ bản của trình điều khiển Nouveau OpenGL được sử dụng ở 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 trong Nouveau thu được trên cơ sở kỹ thuật đảo ngược, mượn trực tiếp trình điều khiển. mã rất khó và phần lớn cần phải suy nghĩ lại nhiều thứ và triển khai chúng bằng con số không.

Quá trình phát triển cũng đang được thực hiện nhằm mục đích tạo ra 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 với trình điều khiển, NVK đã 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, thực hiện theo cách tối ưu nhất. và công việc chất lượng cao, chứ không phải sao chép một cách mù quáng cách nó được thực hiện trong các trình điều khiển khác.

Trình điều khiển NVK mới được phát triển được vài tháng nên chức năng của nó còn hạn chế. Trình điều khiển đã vượt qua thành công 98% bài kiểm tra khi chạy 10% bài kiểm tra từ Vulkan CTS (Bộ kiểm tra khả năng tương thích). Nhìn chung, mức độ sẵn sàng của trình điều khiển được ước tính ở mức 20-25% chức năng của trình điều khiển ANV và RADV. Về mặt hỗ trợ phần cứng, trình điều khiển hiện bị giới hạn ở các thẻ dựa trên vi kiến ​​trúc Turing và Ampere. Các bản vá đang được nghiên cứu để hỗ trợ GPU Kepler, Maxwell và Pascal, nhưng chúng vẫn chưa sẵn sàng.

Về lâu dài, trình điều khiển NVK cho card đồ họa NVIDIA dự kiến ​​sẽ đạt được mức chất lượng và chức năng tương tự như trình điều khiển RADV cho card AMD. Khi trình điều khiển NVK đã sẵn sàng, các thư viện phổ biến được tạo trong quá trình phát triển trình điều khiển này có thể được sử dụng để cải thiện trình điều khiển Nouveau OpenGL cho card màn hình NVIDIA. Khả năng sử dụng dự án Zink để triển khai trình điều khiển OpenGL chính thức cho card màn hình NVIDIA, hoạt động thông qua việc phát các cuộc gọi tới API Vulkan, cũng đang được xem xét.

Nguồn: opennet.ru

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