Kirjaudu sisään palauttaaksesi tehtäviä.
Lue ensin tehtävän yleiset ohjeet. Tarkemmat tehtäväkohtaiset ohjeet ovat alla:
Rinnakkaista CP1-tehtävän ratkaisusi OpenMP:n ja useiden säikeiden avulla siten, että toteutuksessa hyödynnetään rinnakkain useita CPU-ytimiä. Älä käytä vielä muita rinnakkaisuuden muotoja tässä tehtävässä. Käytä kaikissa laskutoimituksissa kaksinkertaisen tarkkuuden liukulukuja.
Automaattinen vektorointi ei ole käytössä tässä tehtävässä.
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.
| Nimi | Parametrit |
|---|---|
| benchmarks/1 | nx = 1000, ny = 1000 |
| syöte sisältää 1000 × 1000 pikseliä, ja tulosteessa tulee olla 1000 × 1000 pikseliä | |
| benchmarks/2 | nx = 1000, ny = 4000 |
| syöte sisältää 4000 × 1000 pikseliä, ja tulosteessa tulee olla 4000 × 4000 pikseliä | |
Tässä tehtävässä palautus arvioidaan benchmarks/2-testin perusteella, jossa syöte sisältää 4000 × 1000 pikseliä, ja tulosteessa tulee olla 4000 × 4000 pikseliä.
Jos tehtävä palautetaan sunnuntaihin, 31. elokuuta 2025, klo 23:59:59 (Helsinki) mennessä, se pisteytetään alla olevan taulukon mukaisesti:
| Ajoaika | Pisteet |
|---|---|
| ≤ 4.000 s | 1 |
| ≤ 1.000 s | 2 |
| ≤ 0.700 s | 3 |
Myöhästyneistä palautuksista ei saa pisteitä.