Тир көрсөтүлөт, Linux- ARM Mali GPU үчүн драйвер, Rust тилинде жазылган

Collabora компаниясында видео кодектерди иштеп чыгуу боюнча иштеген Даниел Алмейда иштеп чыгуучулардын почта тизмесине жарыялады Linux- Mali G310, G510 жана G710 сыяктуу Command Stream Frontend (CSF) технологиясын колдонгон ARM Mali GPUлары үчүн Tyr драйверинин алгачкы ишке ашырылышы. Драйвердин коду Rust тилинде жазылган жана 600дөн ашык сап коддон турат. Tyr драйверинин үстүндө иштөө Collabora, Arm жана Google тарабынан биргелешип жүргүзүлүүдө.

Жаңы драйверди түзүү үчүн негиз абстракттуу rust_platform_driver драйверинин жана NVIDIA GPU үчүн иштелип чыккан, Rust менен жазылган жана жарым-жартылай 6.15 ядросуна кошулган Nova драйверинин компоненттерин колдонот. Мали GPU менен өз ара аракеттенүү функциясы C тилинде жазылган учурдагы Panthor (Direct Rendering Manager) DRM драйверинен көчүрүлгөн. Tyr драйверинин uAPIи Panthor драйверинин uAPI'и менен бирдей, ал аны менен учурдагы колдонуучу мейкиндигинин компоненттерин колдонууга мүмкүндүк берет.

Мали GPUларынын 10-муунунан бери колдонулган CSF технологиясы кээ бир драйвер функцияларын микропрограмма тарапка жылдыруу жана GPUде иштин аткарылышын уюштуруу үчүн жаңы моделди колдонуу менен өзгөчөлөнөт. CSF интерфейси бар GPUларда иштердин чынжырын жөнөтүүгө негизделген моделдин ордуна, микропрограмма тарабында буйрук агымынын кезегин пландаштыруу менен буйрук агымына негизделген модель колдонулат. Пландоочтун ишин уюштуруу үчүн GPUга өзүнчө Cortex-M7 микроконтроллери орнотулган жана CSF көрсөтмөлөрүн аткаруу үчүн атайын командаларды аткаруу бирдиги (Command Execution Unit) каралган.

Тирдин функционалдуулугу дагы эле Panthor драйверинен артта калууда, бирок иштеп чыгуучулар драйвердин мүмкүнчүлүктөрүндөгү паритетке жеткенге чейин ажырымды акырындык менен кыскартууга ниеттенүүдө. Жетишпеген функциялар Rustта драйверлерди түзүү үчүн кошумча абстракцияларды ядрого интеграциялоону талап кылат, ошондуктан Tyr драйверинин өнүгүшү ядрого бул абстракциялардын кошулушу менен синхрондолот. Мисалы, ядродо GPUVM патч топтомунда иштелип жаткан GPU үчүн Rust драйверлеринде эс тутум картасын түзүү мүмкүнчүлүгү азырынча жок, ал азырынча кабыл алына элек.

Source: opennet.ru

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster