Tyr được giới thiệu, Linux- Trình điều khiển cho GPU ARM Mali, được viết bằng Rust

Daniel Almeida, người làm việc trong lĩnh vực phát triển codec video tại Collabora, đã đăng bài trên danh sách gửi thư của các nhà phát triển. Linux- Bản triển khai ban đầu của trình điều khiển Tyr dành cho GPU ARM Mali sử dụng công nghệ Command Stream Frontend (CSF), chẳng hạn như Mali G310, G510 và G710. Mã trình điều khiển được viết bằng Rust và chỉ bao gồm hơn 600 dòng mã. Công việc phát triển trình điều khiển Tyr đang được thực hiện bởi Collabora, Arm và Google.

Khung để tạo trình điều khiển mới sử dụng các thành phần của trình điều khiển trừu tượng rust_platform_driver và trình điều khiển Nova, được phát triển cho GPU NVIDIA, được viết bằng Rust và được thêm một phần vào nhân 6.15. Chức năng tương tác với GPU Mali được chuyển từ trình điều khiển DRM Panthor (Direct Rendering Manager) hiện có, được viết bằng C. uAPI của trình điều khiển Tyr giống hệt với uAPI của trình điều khiển Panthor, cho phép sử dụng các thành phần không gian người dùng hiện có với nó.

Công nghệ CSF, được sử dụng từ thế hệ GPU Mali thứ 10, đáng chú ý vì đã di chuyển một số chức năng trình điều khiển sang phía chương trình cơ sở và sử dụng một mô hình mới để tổ chức thực hiện công việc trên GPU. Trong các GPU có giao diện CSF, thay vì mô hình dựa trên việc gửi chuỗi công việc, mô hình dựa trên luồng lệnh được sử dụng với việc lập lịch hàng đợi luồng lệnh ở phía chương trình cơ sở. Để tổ chức công việc của trình lập lịch, một bộ vi điều khiển Cortex-M7 riêng biệt được tích hợp vào GPU và một đơn vị thực hiện lệnh đặc biệt (Đơn vị thực hiện lệnh) được cung cấp để thực hiện các lệnh CSF.

Chức năng của Tyr vẫn còn chậm hơn trình điều khiển Panthor, nhưng các nhà phát triển có ý định thu hẹp dần khoảng cách cho đến khi đạt được sự ngang bằng về khả năng của trình điều khiển. Các tính năng còn thiếu yêu cầu phải tích hợp thêm các trừu tượng vào hạt nhân để tạo trình điều khiển trong Rust, do đó, quá trình phát triển trình điều khiển Tyr sẽ được đồng bộ hóa với việc bổ sung các trừu tượng này vào hạt nhân. Ví dụ, hạt nhân vẫn chưa có khả năng ánh xạ bộ nhớ trong trình điều khiển Rust cho GPU, đang được phát triển trong bộ vá GPUVM, vẫn chưa được áp dụng.

Nguồn: opennet.ru

Mua dịch vụ lưu trữ đáng tin cậy cho các trang web có bảo vệ DDoS, máy chủ VPS VDS 🔥 Mua dịch vụ hosting website đáng tin cậy với bảo vệ DDoS, máy chủ VPS VDS | ProHoster