Programming Parallel Computers

Aalto 2026

IS6a: nopea CPU-ratkaisu 1-bittisille kuville ★★★

Tämä tehtävä avautuu palautuksille 2026-05-11, klo 00:00:00 (Helsinki). Kirjaudu lisäksi sisään palauttaaksesi tehtäviä.

Tehtävän ohjeet

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

Tässä tehtävässä syöte on aina yksivärinen kuva, jolloin syötepikselit ovat joko täysin valkoisia (RGB-arvot (1,1,1)) tai täysin mustia (RGB-arvot (0,0,0)). Nopeuta tehtävän IS4 ratkaisua hyödyntämällä tätä ominaisuutta. Nyt ratkaisuun riittää yksi värikanava, ja myös pyöristämisvirheet aiheuttavat vähemmän päänvaivaa. 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/1 nx = 100, ny = 100
syöte on strukturoitu mustavalkokuva, jossa on 100 × 100 pikseliä
benchmarks/2a nx = 199, ny = 199
syöte on strukturoitu mustavalkokuva, jossa on 199 × 199 pikseliä
benchmarks/2b nx = 200, ny = 200
syöte on strukturoitu mustavalkokuva, jossa on 200 × 200 pikseliä
benchmarks/2c nx = 201, ny = 201
syöte on strukturoitu mustavalkokuva, jossa on 201 × 201 pikseliä
benchmarks/3 nx = 400, ny = 400
syöte on strukturoitu mustavalkokuva, jossa on 400 × 400 pikseliä
benchmarks/4 nx = 600, ny = 600
syöte on mustavalkokuva, jossa on 600 × 600 pikseliä

Arviointi

Tässä tehtävässä palautus arvioidaan benchmarks/4-testin perusteella, jossa syöte on mustavalkokuva, jossa on 600 × 600 pikseliä.

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

AjoaikaPisteet
≤ 8.000 s 1
≤ 5.000 s 2
≤ 3.000 s 3
≤ 2.000 s 4
≤ 1.000 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
≤ 5.000 s 1
≤ 3.000 s 2
≤ 1.000 s 3

Kilpailu

Tehtävään tekemäsi palautukset osallistuvat automaattisesti myös kilpailuun, ja voit saada enintään 2 lisäpistettä, jos koodisi on yksi kurssin nopeimmista ratkaisuista!

AjoaikaLisäpisteet
≤ 1.20 × nopein 1
≤ 1.05 × nopein 2