Rinnakkaisohjelmointi .NET-ympäristössä
Kontkanen, Aleksi; Lappalainen, Juho (2014)
Kontkanen, Aleksi
Lappalainen, Juho
Lapin ammattikorkeakoulu
2014

Creative Commons Attribution-NonCommercial-ShareAlike 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2014110315170
https://urn.fi/URN:NBN:fi:amk-2014110315170
Tiivistelmä
Tämä opinnäytetyö on tehty Lapin ammattikorkeakoulussa vuonna 2014. Opinnäytetyön päätavoite oli esitellä keinoja prosessoreiden moniydinarkkitehtuurin hyödyntämiseen Microsoftin .NET-ympäristössä.
Prosessoriteknologian kehityksen trendi on ollut 2000-luvun aikana ytimien lisääminen yksittäisiin prosessoreihin. Ytimien lisäämisellä voidaan nostaa laskentatehoa ilman sellaisia ongelmia, joita syntyy keskityttäessä pelkästään yksittäisen ytimen kellotaajuuden nostamiseen. Moniydinarkkitehtuuri synnyttää kuitenkin joukon ohjelmointiin liittyviä ongelmia, jotka saattavat olla vaikeasti paikannettavia.
Opinnäytetyön tavoitteina oli selvittää säieohjelmoinnissa käytössä olevia menetelmiä ja vertailla niiden tehokkuutta toisiinsa sekä perinteseen sekventiaaliseen ohjelmointitapaan. Lisäksi pyritään nostamaan esiin näihin menetelmiin liittyvät tyypillisimmät ongelmat.
Ohjelmoijan tulee ymmärtää säieohjelmoinnin periaatteet. Oikein toteutettu useampaa säiettä käyttävä ohjelmisto antaa kuluttajalle nopean ja responsiivisen kokemuksen. Opinnäytetyön prosessissa kävi ilmi, että rinnakkaisen ohjelman toteuttaminen poikkeaa paljon perinteisestä tavasta tehdä sovelluksia. Rinnakkain toimivat algoritmit saavat sovellukset toimimaan huomattavasti nopeammin
Prosessoriteknologian kehityksen trendi on ollut 2000-luvun aikana ytimien lisääminen yksittäisiin prosessoreihin. Ytimien lisäämisellä voidaan nostaa laskentatehoa ilman sellaisia ongelmia, joita syntyy keskityttäessä pelkästään yksittäisen ytimen kellotaajuuden nostamiseen. Moniydinarkkitehtuuri synnyttää kuitenkin joukon ohjelmointiin liittyviä ongelmia, jotka saattavat olla vaikeasti paikannettavia.
Opinnäytetyön tavoitteina oli selvittää säieohjelmoinnissa käytössä olevia menetelmiä ja vertailla niiden tehokkuutta toisiinsa sekä perinteseen sekventiaaliseen ohjelmointitapaan. Lisäksi pyritään nostamaan esiin näihin menetelmiin liittyvät tyypillisimmät ongelmat.
Ohjelmoijan tulee ymmärtää säieohjelmoinnin periaatteet. Oikein toteutettu useampaa säiettä käyttävä ohjelmisto antaa kuluttajalle nopean ja responsiivisen kokemuksen. Opinnäytetyön prosessissa kävi ilmi, että rinnakkaisen ohjelman toteuttaminen poikkeaa paljon perinteisestä tavasta tehdä sovelluksia. Rinnakkain toimivat algoritmit saavat sovellukset toimimaan huomattavasti nopeammin