Wgpu geneerisenä laskentarajapintana - Kauppinen, Janne (2023)
Tässä tutkimuksessa tutkitaan wgpu-kirjaston käytettävyyttä GPU-laskentaan. Wgpu on Rust-ohjelmointikielellä toteutettu grafiikka- ja laskentarajapinta, joka on suunniteltu toimimaan useassa eri ajoympäristössä. Tutkimusta varten kehitetään wgpu-sovellus, joka luo pistepilvidatasta etäisyyskentän. Etäisyyskentän luonti toteutetaan eikonal-yhtälön ratkaisijalla. Kenttää visualisoidaan sphere tracing -tekniikalla. Ohjelman algoritmit toteutetaan WGSL-varjostinohjelmointikielellä, ja ohjelma testataan Windows-, Linux- ja macOS-käyttöjärjestelmissä. Ohjelma käännetään natiiveiksi ohjelmiksi ja WebAsseblyksi. WebAssembly-versiota testataan eri käyttöjärjestelmissä Firefox Nightly web-selaimessa, jolloin käytettävissä oleva grafiikka- ja laskentarajapinta on web-selaimen WebGPU-rajapinta. Wgpu on teknologiana vielä uusi ja keskeneräinen, mikä käy ilmi tutkimuksen testeissä. Tutkimus osoittaa kuitenkin sen, että teknologialla on potentiaalia.