Jie siūlo įdiegti GPU tvarkyklę, parašytą Rust, Apple AGX G13 ir G14.

Linux Apple Rust

Tai gana išsami tvarkyklė, skirta Apple AGX G13 ir G14 serijų GPU.
Šiandieninis valdiklis yra suderinamas su SoC

Neseniai buvo paskelbta žinia buvo pasiūlytas preliminarus drm-asahi tvarkyklės diegimas serijiniams GPU Apple AGX G13 ir G14 naudojami Apple M1 ir M2 lustuose „Linux“ branduolio kūrėjų adresų sąraše.

Valdiklis parašytas Rust plius, apima universalių nuorodų apie DRM posistemį rinkinį (Tiesioginio atvaizdavimo tvarkyklė), kurią galima naudoti kuriant kitas Rust grafikos tvarkykles.

Išleistas pleistrų rinkinys iki dabar buvo pasiūlyta tik diskusijoms pagrindinių kūrėjų (RFC), bet gali būti priimtas į pagrindinę komandą, kai bus baigta peržiūra ir pašalinti nustatyti trūkumai.

Tai mano pirmoji DRM skirta Rust abstrakcijų versija posistemis. Apima pačias abstrakcijas, kai kurias smulkmenas būtini pakeitimai C pusėje, taip pat drm-asahi GPU tvarkyklė (dėl nuorodos, kaip naudojamos abstrakcijos, bet nebūtinai skirtas kartu nusileisti).

Šie pleistrai yra užklijuoti medžio viršuje [1], kuris yra pagrįstas 6.3-rc1 su daugybe abstrakcijos / rūdžių palaikymo įsipareigojimų aukščiau. Dauguma jų nėra būtinos DRM abstrakcijų sąlygos. patys, bet tik iš vairuotojo.

Nuo gruodžio mėn. valdiklis įtrauktas į paketą su branduoliu „Asahi Linux“ platinimui ir buvo išbandytas šio projekto vartotojų.

Tvarkyklę galima naudoti Linux platinimuose organizuoti grafinę aplinką dApple įrenginiai su SoC M1, M1 Pro, M1 Max, M1 Ultra ir M2. Kuriant tvarkyklę buvo bandoma ne tik padidinti saugumą, sumažinant klaidas dirbant su atmintimi procesoriaus pusėje vykdomame kode, bet ir iš dalies apsaugoti nuo problemų, kylančių sąveikaujant su programine įranga.

Visų pirma tvarkyklė pateikia tam tikrus bendrų atminties struktūrų susiejimus nesaugu naudojant sudėtingas rodyklių eilutes, naudojamas programinėje įrangoje sąveikauti su valdikliu. Siūloma tvarkyklė naudojama kartu su asahi Mesa tvarkykle, kuri teikia vartotojo erdvės OpenGL palaikymą ir išlaiko OpenGL ES 2 suderinamumo testą. ir beveik pasirengęs palaikyti OpenGL ES 3.0.

Tuo pačiu metu tvarkyklė, kuri veikia branduolio lygiu iš pradžių buvo sukurta atsižvelgiant į būsimą Vulkan API palaikymą, o programavimo sąsaja, skirta sąveikai su vartotojo erdve, sukurta atsižvelgiant į UAPI, kurį suteikia naujoji „Intel Xe“ tvarkyklė.

Per žinomos problemos minimi:

  • Esama „Rust“ integracija šiuo metu nepalaiko kūrimo abstrakcijų kaip modulių, todėl „Rust“ abstrakcijos galimos tik įterptiesiems DRM komponentams.
  • DRM labai priklauso nuo valdiklio objektų „poklasių“ modelio, o tai netinka „Rust“.
  • Šiuo metu įdiegta tik tai, kas reikalinga valdikliui (plius nedidelis kiekis
    akivaizdūs priedai, kur prasmingas geresnis API vientisumas).
  • „drm::mm“ vietoj to reikalauja abstrakcijoje integruoto mutex
    deleguoti tai vartotojui pagal įprastas rūdžių keitimo taisykles.
    Taip yra todėl, kad mazgus galima bet kada atsisakyti ir tas operacijas
    jis turi būti sinchronizuotas.
  • Mesa pusėje šiuo metu turite Gallium tvarkyklę, kuri dažniausiai jau yra prieš srovę (dažniausiai trūksta UAPI bitų) ir
    išlaiko dEQP GLES2/EGL testus, o dauguma GLES3.0 išlaiko
    Nebaigtų darbų šakos. Tai bendruomenės tvarkyklės atvirkštinė inžinerija, todėl minima, kad šiuo aspektu dar reikia daug nuveikti.

pagaliau jei esi domina sužinoti daugiau apie tai, išsamią informaciją galite sužinoti šią nuorodą.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.