Ka nisur integrimi në kernelin Linux i driverit Nova për GPU NVIDIA

Inxhinierët e kompanisë Red Hat propozuan përfshirjen në kernin e Linux grupe të parë patch-e për implementimin e driverit Nova. Ky driver është i destinuar për t'u përdorur me GPU NVIDIA, të pajisura me firmware GSP, të cilat përdoren që nga seria NVIDIA GeForce RTX 2000, e ndërtuar mbi mikroarkitekturën Turing. Në këtë GPU, operacionet e inicializimit dhe menaxhimit janë implementuar në firmware dhe ekzekutohen nga një mikroprocesor i veçantë GSP (GPU System Processor). Supozohet që në një perspektivë afatgjatë, Nova do të zëvendësojë driverin Nouveau për GPU-të me mbështetje GSP.

Driveri i ri është shkruar në gjuhën Rust dhe, pasi infrastruktura për zhvillimin e driverëve në Rust është ende në zhvillim, kodi i Nova synohet të transferohet në përbërjen kryesore të kernit në mënyrë të fazuar, ndërsa shfaqen lidhjet e nevojshme për gjuhën Rust. Në fazën e parë, për përfshirjen në kernel është propozuar driveri «nova-core», i përbërë nga 232 rreshta kodi. Nova-core implementon një nivel bazik abstraksionesh mbi ndërfaqet programore të firmware-ve GSP dhe ofron një API që nuk varet nga versionet e firmware-ve.

Në fazën e ardhshme, planifikohet përfshirja e driverit DRM nova-drm (Direct Rendering Manager) në kern për t'u ndërvepruar me GPU-të nga hapësira e përdoruesit, si dhe driverit VFIO me menaxherin vGPU, i cili lejon përdorimin e GPU-ve virtuale NVIDIA në sistemet e virtualizimit.

Arsyeja kryesore për promovimin e driverit të ri Nova është mundësia për t'u shpëtuar komplikimeve që i atribuhen driverit Nouveau dhe për të arritur një thjeshtim të ndjeshëm, falë përdorimit të trajtuesve të gatshëm, ofruar nga firmware GSP dhe heqjes së peshës së mbështetjes së GPU-ve të vjetra. Nova gjithashtu do të zgjidhë problemet arkitektonike, të cilat në Nouveau kërkojnë një ripunim të konsiderueshëm të kodit, për shembull, problemet me bllokimet në kodin VMM/MMU. Gjuha Rust është zgjedhur për të zvogëluar probabilitetin e gabimeve gjatë punës me memorie, si dhe për të përmirësuar bashkëpunimin në punën mbi driverin e punës me krijimin e lidhjeve dhe abstraksioneve për zhvillimin e driverëve në Rust.

Luaj videon

Sa i përket përparimit të shtimit në kernelin Linux të mundësive për zhvillimin e shoferëve në gjuhën Rust, në degën 6.14 u pranuan lidhjet Rust për PCI, platforma, Open Firmware, pajisje simbolike dhe disa funksione hyrjeje/ daljeje. Greg Kroah-Hartman, i cili është përgjegjës për mbështetje e degës stabile të kernelit Linux, në kërkesën e tërheqjes me përmirësimet për shoferët në kernelin 6.14, e përshkroi gjendjen aktuale si "gati për të shkruar një shofer të vërtetë në Rust".

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster