Programming Parallel Computers

Aalto 2026

CP4: perustason GPU-toteutus ★

Kirjaudu sisään palauttaaksesi tehtäviä.

Tehtävän ohjeet

Lue ensin tehtävän yleiset ohjeet. Tarkemmat tehtäväkohtaiset ohjeet ovat alla:

Toteuta perustason ratkaisu GPU:lle. Varmista, että koodi toimii oikein ja on kohtuullisen tehokas. Toteuta kaikki suoritustehon kannalta keskeiset osiot GPU:lla; kevyempää esi- ja jälkikäsittelyä voi tehdä myös CPU:lla. Muista tarkistaa kaikki CUDA-operaatiot virheiden varalta. Tässä tehtävässä saa käyttää yksinkertaisen tarkkuuden liukulukuja.

Koodin testaus

Koodin toimintaa testataan ensin erilaisilla testeillä. Voit kokeilla samaa omalla tietokoneellasi komennolla ./grading test.

Jos koodi toimii odotetusti, sille suoritetaan benchmark-testejä. Voit kokeilla tätä omalla tietokoneellasi komennolla ./grading benchmark. Huomaa kuitenkin, että ajoaika omalla tietokoneellasi voi olla eri kuin arviointiin käytetyllä laitteistolla.

Benchmark-testit

Nimi Parametrit
benchmarks/1a nx = 1000, ny = 1000
syöte sisältää 1000 × 1000 pikseliä, ja tulosteessa tulee olla 1000 × 1000 pikseliä
benchmarks/1b nx = 999, ny = 999
syöte sisältää 999 × 999 pikseliä, ja tulosteessa tulee olla 999 × 999 pikseliä
benchmarks/1c nx = 1001, ny = 1001
syöte sisältää 1001 × 1001 pikseliä, ja tulosteessa tulee olla 1001 × 1001 pikseliä
benchmarks/2a nx = 1000, ny = 4000
syöte sisältää 4000 × 1000 pikseliä, ja tulosteessa tulee olla 4000 × 4000 pikseliä
benchmarks/2b nx = 1000, ny = 4000
syöte sisältää 4000 × 1000 pikseliä, ja tulosteessa tulee olla 4000 × 4000 pikseliä

Arviointi

Tässä tehtävässä palautus arvioidaan benchmarks/2b-testin perusteella, jossa syöte sisältää 4000 × 1000 pikseliä, ja tulosteessa tulee olla 4000 × 4000 pikseliä.

Jos tehtävä palautetaan sunnuntaihin, 17. toukokuuta 2026, klo 23:59:59 (Helsinki) mennessä, se pisteytetään alla olevan taulukon mukaisesti:

AjoaikaPisteet
≤ 5.000 s 1
≤ 3.000 s 2
≤ 2.000 s 3
≤ 1.000 s 4
≤ 0.500 s 5

Jos palautat ratkaisun määräajan jälkeen mutta ennen kurssin päättymistä sunnuntaina, 31. toukokuuta 2026, klo 23:59:59 (Helsinki), pistemääräsi määräytyy näin:

AjoaikaPisteet
≤ 3.000 s 1
≤ 2.000 s 2
≤ 0.500 s 3