pariohjelmoinnin
Pariohjelmointi (rinnakkaisohjelmointi) on ohjelmoinnin ala, jossa useita laskentatehtäviä suoritetaan samanaikaisesti useilla suoritusyksiköillä. Se pyrkii nopeuttamaan laskentaa ja/tai parantamaan järjestelmän hyödyntämiskykyä. Pariohjelmointi jaetaan data-parallellisuuteen ja tehtävä-parallellisuuteen, ja sitä toteutetaan erilaisissa arkkitehtuureissa kuten moniydinprosessoreissa, grafiikkaprosessoreissa (GPU) sekä hajautetuissa järjestelmissä.
Data-parallellisuus tarkoittaa suurten tietojoukkojen jakamista osiin, joita käsitellään rinnakkain samoilla operaatioilla. Tehtävä-parallellisuus puolestaan rakentuu useista erillisistä
Keskeisiä haasteita ovat synkronointi ja kilpailevat pääsyoikeudet (race conditions), mahdolliset deadlock-tilanteet sekä muistien yhteiskäyttö ja cache-kohdentuvuus.
Sovellusalueita ovat tieteellinen laskenta, simuloinnit, grafiikan renderöinti, koneoppiminen sekä suurten datamäärien käsittely. Pariohjelmointi on olennaista modernin