Ivo vanokurudzira kuitwa kwemutyairi weGPU akanyorwa muRust, yeApple AGX G13 uye G14

Linux Apple Rust

Uyu mutyairi akakwana weApple AGX G13 uye G14 akatevedzana maGPU.
Nhasi controller inoenderana neSoCs

Nhau dzakaburitswa nguva pfupi yadarika izvo kutanga kuita kwemutyairi wedrm-asahi kwarongwa kune akatevedzana maGPU Apple AGX G13 uye G14 inoshandiswa muApple M1 uye M2 chips pane iyo Linux kernel yekuvandudza tsamba yekutumira.

Chinodzora chakanyorwa neRust pamwe, inosanganisira seti yezvese zvinongedzo nezve DRM subsystem (Direct Rendering Manager) iyo inogona kushandiswa kugadzira mamwe madhiraivha emifananidzo muRust.

Iyo yakaburitswa chigamba seti kusvikira zvino yakakumbirwa kuti ikurukurwe chete nevagadziri vepakati (RFC), asi inogona kugamuchirwa muchikwata chepakati mushure mekunge ongororo yapera uye kushomeka kwakaonekwa kwabviswa.

Iyi ndiyo vhezheni yangu yekutanga yeRust abstractions ye DRM subsystem. Zvinosanganisira zvinotorwa pachezvazvo, zvimwe zvidiki prerequisite shanduko padivi reC pamwe neiyo drm-asahi GPU mutyairi (kureva mashandisirwo anoitwa zvinyorwa, asi kwete hazvo chinangwa chekumhara pamwechete).

Aya mapeche anoiswa pamusoro pemuti mu [1], iyo yakavakirwa pa 6.3-rc1 ine yakawanda yekubvisa / Rust rutsigiro inowedzerwa mukati kumusoro. Zvizhinji zveizvi hazvisi zvekutanga zve DRM zvinotorwa. pachavo, asi chete kubva kumutyairi.

Kubva munaDecember, mutongi anosanganisirwa mukati pasuru ine kernel yeAsahi Linux kugovera uye yakaedzwa nevashandisi vechirongwa ichi.

Mutyairi anogona kushandiswa paLinux kugovera kune kuronga mamiriro emifananidzo mu dApple zvishandiso zvine SoC M1, M1 Pro, M1 Max, M1 Ultra uye M2. Paunenge uchigadzira mutyairi, kuedza kwakaitwa kwete kungowedzera kuchengetedzeka nekudzikisa zvikanganiso kana uchishanda nendangariro mukodhi yakaitwa padivi reCPU, asiwo kudzivirira zvishoma kubva kumatambudziko anomuka kana uchibatana ne firmware.

Kunyanya mutyairi anopa zvimwe zvinosungirwa kune zvakagovaniswa zvimiro zvendangariro isina kuchengetedzeka netambo dzakaomarara dzeanongedzo anoshandiswa muiyo firmware kuti iwirirane nemutongi. Mutyairi anotsanangurwa anoshandiswa pamwe chete neasahi Mesa mutyairi, iyo inopa mushandisi-nzvimbo OpenGL rutsigiro uye anopfuura OpenGL ES 2 kuenderana kuyedzwa. uye yave kuda kugadzirira kutsigira OpenGL ES 3.0.

Panguva imwecheteyo, mutyairi anoshanda pa kernel level inotangwa nerutsigiro rwenguva yemberi yeVulkan API mupfungwa, uye iyo programming interface yekudyidzana nenzvimbo yemushandisi yakagadzirwa neUAPI yakapihwa nemutyairi mutsva weIntel Xe mupfungwa.

Pamusoro pe nyaya dzinozivikanwa zvinotevera zvinotaurwa:

  • Iyo iripo Rust yekubatanidza parizvino haitsigire zvivakwa zvekuvaka semamodule, saka Rust abstractions inongowanikwa kune yakadzamirwa DRM zvikamu.
  • DRM inotsamira zvakanyanya pa "subclassing" pateni yezvinhu zvekutonga, uye izvi hazvigari zvakanaka neRust.
  • Parizvino, izvo chete zvinodikanwa kune controller zvinoitwa (pamwe nehuwandu hushoma hwe
    zviri pachena zvekuwedzera uko zviri nani API kutendeseka kune musoro).
  • drm ::mm inoguma yave kuda chimumumu chakavakirwa mukati mekubvisa, panzvimbo
    kupa iyo kumushandisi neyakajairwa Rust mutability mitemo.
    Izvi zvinodaro nekuti node dzinogona kudonhedzwa chero nguva uye mabasa iwayo
    inoda kuenderana.
  • Kudivi reMesa iwe parizvino une mutyairi weGallium uyo anonyanya kutokwira kumusoro (UAPI bits kazhinji isipo) uye
    anopfuura bvunzo dzeDEQP GLES2/EGL, neGLES3.0 yakawanda ichipfuura.
    Mapazi epamusoro ebasa ari kuenderera mberi. Iyi inharaunda mutyairi reverse engineering, saka zvinonzi pachine zvakawanda zvinoda kuitwa muchikamu ichi.

pakupedzisira kana uri kufarira kuziva zvakawanda nezvazvo, unogona kutarisa ruzivo mu chinotevera chinongedzo.


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira data: AB Internet Networks 2008 SL
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako