AMD lisäsi Linux-ajureihin Primitive Culling with Async Compute -tuen

Viestiketju alueella 'Uutisia lyhyesti' , aloittaja Kaotik, 13.02.2019.

  1. Kaotik

    Kaotik Banhammer Ylläpidon jäsen

    Viestejä:
    9 002
    Rekisteröitynyt:
    14.10.2016
    AMD:n avoimen lähdenkoodin ajureihin on lisätty tuki asynkronista laskentaa hyödyntävälle Primitive Culling -ominaisuudelle. Tuki mahdollistaa primitiivien poistamisen kuvasta jo ennen verteksivarjostimia asynkronista laskentaa hyödyntäen, mikä parantaa suorituskykyä merkittävästi geometrialtaan raskaissa tilanteissa.

    upload_2019-2-13_22-11-18.png

    Ominaisuuden luonut Marek Olšák käytti esimerkkinä ParaView-sovellusta, jossa ominaisuus parantaa AMD:n suorituskykyä noin 1,7 - 4,8 kertaiseksi näytönohjaimesta riippuen. Päivityksen jälkeen pienimmän parannuksen saanut Radeon RX 480 voitti Phoronixin testeistä lainattujen tulosten perusteella jopa GeForce GTX 1080:n. Huomioitavaa vertailussa on kuitenkin se, että NVIDIAn tulokset ovat kesältä 2017, koska uudempia ei Olšákin mukaan ollut saatavilla.

    Ominaisuus toimii toisen sukupolven GCN-arkkitehtuurista (GCN1.1) lähtien kaikilla AMD:n näytönohjaimilla.

    Lähde: RadeonSI Picks Up Primitive Culling With Async Compute For Performance Wins - Phoronix
     
  2. Wapaaherra

    Wapaaherra

    Viestejä:
    34
    Rekisteröitynyt:
    17.10.2016
    Marek Olšák on erittäin lahjakas kaveri, joka on työskennellyt pitkään AMD:n avoimen lähdekoodin ajureiden parissa. On aina ilo seurata hänen ajureihin tekemiä parannuksia/optimointeja. AMD:n avoimen lähdekoodin ajurit alkavat olla niin hyvässä kunnossa, ettei ole enää syytä asentaa suljettuja ajureita linuxissa.
     
    kahvis ja novoiperkele tykkäävät tästä.
  3. Zetteri

    Zetteri

    Viestejä:
    1 114
    Rekisteröitynyt:
    06.11.2016
    Onkos tää ominaisuus Windows ajureissa? Jos ei niin onko tulossa? Pelit eivät varmaan tästä hyödy mitenkään vai kuinka?

    Sori isosta kasasta kysymyksia mutta toi kuulostaa kivalta ja ois tuossa hyllyssä kaikkea AMD rautaa kuten RX 480 ja 2kpl R9 Nanoa.
     
  4. potaatti55

    potaatti55

    Viestejä:
    34
    Rekisteröitynyt:
    05.02.2017
    Alustavia pelitestejä pitäisi olla tänään tulossa Phoronixilta. Loppuviikosta varmaa enemmänkin testejä.
     
  5. jabbadap

    jabbadap

    Viestejä:
    1 306
    Rekisteröitynyt:
    04.11.2016
    RadeonSI Primitive Culling Yields Mixed Benchmark Results - Phoronix

    Eli ei vaikutusta. Suorituskyky huonompi kautta linjan, tosin tuohon nyt voi vaikuttaa moni muukin asia ajureissa.
     
  6. fiarska

    fiarska

    Viestejä:
    385
    Rekisteröitynyt:
    23.02.2017
    Tuolla keskustelua aiheesta RadeonSI Primitive Culling Yields Mixed Benchmark Results : Amd
     
  7. vpmh

    vpmh

    Viestejä:
    1
    Rekisteröitynyt:
    17.02.2019
    Marek sortui hieman yliampuvaan asian esilletuontiin. Paraview ei ilmeisesti karsi peittoon tai näkemän ulkopuolelle jäävää geometriaa myöhemmistä laskentavaiheista juuri yhtään. Kun taas pelit jo valmiiksi karsivat sitä, ei toisesta karsimiskierroksesta ajuritasolla ole enää hyötyä.
     
  8. fiarska

    fiarska

    Viestejä:
    385
    Rekisteröitynyt:
    23.02.2017
    Juu, ei tämä propaganda uutinen ole maailmalla paljoa julkisuutta saanut.
     
  9. L2K2

    L2K2

    Viestejä:
    786
    Rekisteröitynyt:
    17.10.2016
    Hieman tuo on tosiaan ”parannettua” totuutta. Toisaalta jos tuon automaattisen ajuritasolla tapahtuvan näkymättömän geometrian poiston saa noin halvaksi (että se ei edes juurikaan hidasta peleissä, joissa tuo geometria poistettiin myös ohjelman tasolla), niin se kyllä helpottaa korkean suorituskyvyn saavuttamista monissa tapauksissa.

    Esim. pienemmät pelit ilman valmista pelimoottoria (joiden tapauksessa tuo manuaalinen ohjelman tekemä geometrian karsinta ei välttämättä ole loppuun asti optimointia), harrastelijaprojektit (kuten edellä), ja moni ammattilaissofta (kuten tuo paraview) jossa tuota karsintaa on joko vaikea tehdä (kun esitetään vaikka yhtä monimutkaista geometrista esinettä*, josta silti vain osa näkyy kuvassa) tai ei ole ollut resursseja tehdä optimointua versiota.

    Ei tämä ole propagandaa, mutta toki ei tämä välttämättä juuri auta peleissä (joissa tuon piirtääkkö vaiko eikö piirtää -päätöksen voi tehdä melko helposti esinetasolla). Vrt. piirrä yksi monimutkainen esine, josta katsellaan vain osaa (ei voi optimoida palastelematta esinettä, joka taas ei ole triviaalia tehdä yleisesti järkevästi tuntematta esinettä) vai pelimoottori (jossa piirretään useita etukäteen määritettyjä ja käsin optimoitua esineitä*, joista voi tehdä esinetasolla päätöksiä).

    * Esine: esim. hahmo, tai muu geometrinen kokonaisuus kuten ase, talo, ovi, ... paraview:n tapauksessa esine on vaikka se yksi lujuuslaskennan tulos, jossa on ne kaikki N miljoonaa kolmiota kerralla (joista vaikkapa n < N miljoonaa näkyvissä kerralla). Vrt. pelin N pienempää esinettä, joista M < N näkyvyssä.

    PS. Kaikki olettaen että ymmärsin oikeasti mitä tässä tehdään.
     
  10. kahvis

    kahvis

    Viestejä:
    231
    Rekisteröitynyt:
    18.10.2016
    Paitsi OpenCL ja video encoderit? :wtf:
     
  11. Wapaaherra

    Wapaaherra

    Viestejä:
    34
    Rekisteröitynyt:
    17.10.2016
    Jep, OpenCL on puutteellinen. Toivottavasti ROCm korjaa tilanteen tulevaisuudessa.