Trình điều khiển video nguồn mở NVIDIA cho nhân Linux

NVIDIA đã thông báo rằng tất cả các mô-đun hạt nhân có trong bộ trình điều khiển video độc quyền của họ đều là nguồn mở. Mã này được mở theo giấy phép MIT và GPLv2. Khả năng xây dựng mô-đun được cung cấp cho kiến ​​trúc x86_64 và aarch64 trên các hệ thống có nhân Linux 3.10 và các bản phát hành mới hơn. Phần sụn và thư viện được sử dụng trong không gian người dùng, chẳng hạn như ngăn xếp CUDA, OpenGL và Vulkan, vẫn là độc quyền.

Người ta hy vọng rằng việc xuất bản mã sẽ dẫn đến sự cải thiện đáng kể về khả năng sử dụng khi làm việc với GPU NVIDIA trên hệ thống Linux, tăng cường tích hợp với hệ điều hành và đơn giản hóa việc cung cấp trình điều khiển và gỡ lỗi các vấn đề. Các nhà phát triển Ubuntu và SUSE đã công bố việc hình thành các gói dựa trên các mô-đun mở. Sự hiện diện của các mô-đun mở cũng sẽ đơn giản hóa việc tích hợp trình điều khiển NVIDIA với các hệ thống dựa trên các bản dựng tùy chỉnh không chuẩn của nhân Linux. Đối với NVIDIA, nguồn mở sẽ giúp cải thiện chất lượng và tính bảo mật của trình điều khiển Linux thông qua sự tương tác chặt chẽ hơn với cộng đồng và khả năng xem xét các thay đổi của bên thứ ba và kiểm toán độc lập.

Cần lưu ý rằng cơ sở mã mở được trình bày được sử dụng đồng thời trong việc hình thành các trình điều khiển độc quyền, đặc biệt, nó được sử dụng trong nhánh beta 515.43.04 được xuất bản ngày hôm nay. Trong trường hợp này, kho chính là kho lưu trữ đóng và cơ sở mã mở được đề xuất sẽ được cập nhật cho mỗi bản phát hành trình điều khiển độc quyền dưới dạng dàn diễn viên sau khi xử lý và làm sạch nhất định. Lịch sử của các thay đổi riêng lẻ không được cung cấp, chỉ có cam kết chung cho từng phiên bản trình điều khiển (hiện tại mã mô-đun cho trình điều khiển 515.43.04 đã được xuất bản).

Tuy nhiên, các thành viên của cộng đồng có cơ hội gửi yêu cầu kéo để đẩy các bản sửa lỗi và thay đổi của họ đối với mã mô-đun, nhưng những thay đổi này sẽ không được phản ánh dưới dạng các thay đổi riêng biệt trong kho lưu trữ công cộng mà trước tiên sẽ được tích hợp vào kho lưu trữ riêng tư chính và chỉ sau đó được chuyển với những thay đổi còn lại để mở. Để tham gia phát triển, bạn phải ký thỏa thuận chuyển giao quyền sở hữu đối với mã được chuyển giao cho NVIDIA (Thỏa thuận cấp phép cộng tác viên).

Mã của các mô-đun hạt nhân được chia thành hai phần: các thành phần chung không gắn với hệ điều hành và một lớp để tương tác với nhân Linux. Để giảm thời gian cài đặt, các thành phần phổ biến vẫn được cung cấp trong trình điều khiển NVIDIA độc quyền dưới dạng tệp nhị phân đã được lắp ráp sẵn và lớp được lắp ráp trên mỗi hệ thống, có tính đến phiên bản kernel hiện tại và cài đặt hiện có. Các mô-đun hạt nhân sau được cung cấp: nvidia.ko, nvidia-drm.ko (Trình quản lý kết xuất trực tiếp), nvidia-modeset.ko và nvidia-uvm.ko (Bộ nhớ video hợp nhất).

Hỗ trợ GPU dòng GeForce và máy trạm được liệt kê là chất lượng alpha, nhưng các GPU chuyên dụng dựa trên kiến ​​trúc NVIDIA Turing và NVIDIA Ampere được sử dụng trong kiến ​​trúc tăng tốc điện toán trung tâm dữ liệu và điện toán song song (CUDA) đều được hỗ trợ và kiểm tra đầy đủ và phù hợp để sử dụng trong sản xuất. dự án (nguồn mở đã sẵn sàng để thay thế trình điều khiển độc quyền). Việc ổn định hỗ trợ GeForce và GPU cho máy trạm được lên kế hoạch cho các bản phát hành trong tương lai. Cuối cùng, mức độ ổn định của cơ sở mã nguồn mở sẽ được đưa lên mức độ của trình điều khiển độc quyền.

Ở dạng hiện tại, việc đưa các mô-đun đã xuất bản vào nhân chính là không thể, vì chúng không tuân thủ các yêu cầu về kiểu mã hóa và quy ước kiến ​​trúc của nhân, nhưng NVIDIA dự định hợp tác cùng với Canonical, Red Hat và SUSE để giải quyết vấn đề này và ổn định các giao diện phần mềm trình điều khiển. Ngoài ra, mã được xuất bản có thể được sử dụng để cải thiện trình điều khiển Nouveau mã nguồn mở có trong kernel, sử dụng cùng phần sụn GPU với trình điều khiển độc quyền.

Nguồn: opennet.ru

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