Panfrostilla on nyt OpenGL 3.1 -tuki Malin näytönohjaimille

Collabora-kehittäjät eivät ole lopettaneet toimintaansa, ja viime kuukausina he ovat antaneet paljon puhetta, ja tällä kertaa se ei ole poikkeus, koska viime aikoina ilmoitti ilmoittaneensa OpenGL 3.1 -tukien käyttöönotosta Panfrost-ohjaimessa Midgard-näytönohjaimille (Mali-T6xx, Mali-T7xx, Mali-T8xx) ja Bifrost-näytönohjaimille (Mali G3x, G5x, G7x) sekä OpenGL ES 3.0 -tukeen Bifrost-suorittimille.

Nämä muutokset odotetaan sisältyvän Mesa 21.0 -julkaisuun, joka on tällä hetkellä käynnistysehdokasvaiheessa.

On syytä muistaa, että Collabora-kehittäjät ovat työskennelleet pitkään taulukkojen ohjainten käyttöönotossa ja esimerkki tästä on menneisyyttä Gallium-pöytäohjain, joka toteuttaa välikerroksen organisoida OpenCL 1.2 ja OpenGL 3.3 API ajureista, joilla on DirectX 12 (D3D12) -tuki ja että heidän lähdekoodinsa julkaistaan ​​MIT-lisenssillä.

Ehdotettu rekisterinpitäjä antaa sinun käyttää Mesaa laitteissa jotka eivät ole alun perin yhteensopivia OpenCL: n ja OpenGL: n kanssa ja myös lähtökohtana portoida OpenGL / OpenCL -sovellukset toimimaan D3D12: lla.

Uuden Panfrost-ohjaimen osalta havaitaan, että GPU Midgardilla ja Bifrostilla on yhteiset tietorakenteet kiinteille toiminnoille, mutta Bifrost käyttää pohjimmiltaan erilaisia ​​ohjeita, mikä vaikeuttaa GPU-tietojen toiminnallisuuden synkronointia.

Arkkitehtonisesti Bifrost jakaa suurimman osan kiinteän toiminnon tietorakenteistaan ​​Midgardin kanssa, mutta esittelee uuden ohjeiston. Työmme OpenGL ES 3.0: n esittelemiseksi Bifrostille heijastaa tätä jakoa.

Jotkut kiinteät toiminnot, kuten instantiation ja muunnospalautteet, toimivat ilman mitään erityistä Bifrost-muutosta, kuten teimme jo Midgardissa. Muut varjostimen ominaisuudet, kuten yhtenäiset puskuriobjektit, edellyttävät Bifrost-kääntäjän "tyhjästä" toteutusta, jonka kääntäjän kypsä väliesitys ja ensiluokkainen koontituki helpottavat.

Esimerkiksi Midgardille jo toteutetut kiinteät toiminnotkuten 'muunnospalaute', voidaan siirtää Bifrostille ilman muutoksia, kun taas ominaisuudet, kuten Multiple Render Targets (MRT), rajoittuvat joihinkin erityisiin Bifrost-muutoksiin.

Samanaikaisesti muut varjostustoiminnot, kuten yhtenäiset puskuriobjektit, vaativat naarmuuntumisen Bifrost-varjostimen kääntäjälle.

Tämä seuraa kesällä laskeutunutta Midgardin OpenGL ES 3.0 -tukea sekä Bifrostille äskettäin debyyttiä olevaa alkuperäistä OpenGL ES 2.0 -tukea. OpenGL ES 3.0 on nyt testattu Mali G52: lla Mesan jatkuvassa integraatiossa ja saavuttaa 99.9% läpäisyaste vastaavissa DrawElements-laatuohjelman testeissä.

Muut ominaisuudet, kuten useita renderöintikohteita, vaativat kuitenkin erityistä koodia Bifrostilta hyödyntäen samalla Midgardin kanssa jaettua muuta koodia. Silti työ eteni paljon nopeammin toisen kerran, osoitus jaettujen koodien voimasta. Mutta sinun ei tarvitse rajoittaa vaihtoasi vain Panfrost-näytönohjaimiin; Avoimen lähdekoodin ohjaimet voivat jakaa koodin toimittajien välillä.

Lisäksi ilmoituksessa mainitaan se osa työn päällekkäisyydestä vältettiin käyttämällä välittäjää kääntäjässä, joka yhdessä jaetun koodin kanssa nopeuttaa merkittävästi kehitystä ja että tällä lähestymistavalla koodia voidaan käyttää paitsi GPU-perheen lisäksi myös erilaisille ohjaimille.

Kehittäjät mainitsevat erityisesti, että OpenGL: n käyttöönottamiseksi työpöytäjärjestelmissä Panfrost-ohjain vaati käyttövalmiiden Mesa-komponenttien käyttöä, kun taas Malin oma ajuri on rajoitettu vain OpenGL ES: n tukemiseen.

Työpöydän OpenGL 3.1 -tuki on kuitenkin melkein "ilmainen" meille ylävirran Mesa-ohjaimena hyödyntämällä yhteistä infrastruktuuria.

lopuksi, jos olet kiinnostunut tietämään siitä lisää Collabora-kehittäjien ehdottamasta uudesta Panfrost-toteutuksesta voit tarkistaa yksityiskohdat Seuraavassa linkissä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.