Lisätty Skia WebKitGTK- ja WPEWebKit-tuki 2D-grafiikkaa varten

Skia logo

Skia on avoimen lähdekoodin 2D-grafiikkakirjasto

Kehityksen maailmassa verkkoselaimet ja työpöytäympäristöt, optimointi ja suorituskyky ovat u kysytyimmistä ominaisuuksista käyttäjien toimesta, ja nämä ovat kriittisiä näkökohtia, jotka vaikuttavat suoraan käyttökokemukseen ja yksi tärkeimmistä tekijöistä verkkoselaimen valinnassa.

Tässä asiayhteydessä, kehitystiimit WPEWebKitin ja WebKitGTK:n takana (selainmoottori, jota käytetään selaimissa, kuten Safari ja Epiphany/GNOME Web), ovat sisällyttäneet mahdollisuuden käyttää Skia-kirjastoa 2D-grafiikkaa varten.

Viime vuosina WebKit-kehittäjät ovat tehneet kovasti töitä parantaakseen suorituskykyä WebKitGTK- ja WPEWebKit-kaavio. Siitä huolimattaja ominaisuuksia on otettu käyttöön kuten kierteitetty renderöinti ja VSync, ja kävi selväksi, että CPU-pohjainen 2D-renderöijä oli saavuttanut rajansa suorituskyvyn ja tehokkuuden suhteen. Mainitaan, että he tutkivat erilaisia ​​vaihtoehtoja ennen kuin valitsivat Skian. Yritykset lisätä WebKitGTK:n käyttämään Kairon kirjastoon 2D-grafiikkasuorittimen renderöintiominaisuuksia epäonnistuivat kirjaston arkkitehtuurin rajoitusten vuoksi. Lisäksi mukautetun renderöintikirjaston kehittämisprojekti hylättiin, koska suorituskyvyn ja renderöinnin laadun välillä oli vaikeuksia tasapainottaa.

Kairoa yritettiin saada tukemaan GPU-renderöintiä, mikä ei toiminut erityisen hyvin, koska kirjasto oli suunniteltu PostScript-malliin perustuvan tilallisen toiminnan ympärille, mikä johti kätevään ja tuttuun API:iin, jolla on erinomainen tulostuslaatu, mutta vaikea suunnata uudelleen. ja joillakin erityisen hitailla kulmakoteloilla. Samaan aikaan muut verkkomoottorit ovat siirtäneet enemmän työtä GPU:lle, mukaan lukien 2D-renderöinti, jossa monet toiminnot ovat huomattavasti nopeampia.

Vaikka Ajatus Skian käytöstä hylättiin alun perin johtuen sovellusliittymän vakauteen liittyvistä ongelmista, sen käytöstä ulkoisena riippuvuutena ja tarpeesta ylläpitää kolmannen osapuolen moduulia WebKitissä, pidettiin lopulta optimaalisena ratkaisuna parantaaksesi WebKitGTK:n grafiikan renderöinnin suorituskykyä.

Skia on grafiikkakirjasto käytetään useissa Googlen tuotteissa, kuten Chrome, Firefox, ChromeOS, Android ja Flutter. Tämä lisäys mahdollistaa renderöinnin GPU:lla, mikä voi parantaa merkittävästi grafiikan toiston suorituskykyä.

Igalia toteutti siirtymisen Skiaan osana aloitetta WebKitGTK:n suorituskyvyn optimoimiseksi GNOMElle. Mainitaan, että tärkein syy tähän siirtymiseen oli rajan saavuttaminen 2D-renderöinnin suorituskyvyn optimointiprosessissa suorittimen avulla. Grafiikkasuorittimen käyttö tarjoaa lisäominaisuuksia grafiikan toiston suorituskyvyn parantamiseen.

Siirtyminen Skiaan alkoi sisäisellä testauksella joulukuussa 2023 ja ensimmäiset tulokset olivat vaikuttavia, sillä merkittäviä suorituskyvyn parannuksia nähtiin heti, etenkin työpöydällä. Testauksen edetessä kävi selväksi, että Skia ei vain tarjonnut ylivoimaista suorituskykyä, vaan myös yksinkertaistaisi koodia ja avaa oven uusille toiminnallisuuksille.

Helmikuussa 2024, intensiivisen kehitysjakson jälkeen ja testaus, täytäntöönpano Skia saavutti "upstreamable" -tilan, mikä tarkoittaa, että se oli valmis integroitavaksi WebKitGTK:hen ja WPEWebKitiin julkisesti, ja kehittäjäyhteisön ensimmäinen vastaus oli myönteinen, mikä merkitsi tärkeää virstanpylvästä siirtymäprosessissa.

Tiimi on sitoutunut jatkamaan Skia-toteutuksen parantamista WebKitGTK:ssa ja WPEWebKitissä jatkossakin ja aikoo edelleen optimoida GPU-renderöinnin suorituskykyä ja tehokkuutta. Vaikka painopiste on tällä hetkellä WPE-portissa, on odotettavissa, että myös muut portit, kuten GTK, saavat tukea Skialta tulevaisuudessa.

Vihdoin jos olet kiinnostunut tietämään siitä lisää, voit tarkistaa yksityiskohdat seuraava linkki.


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.