Rinnakkaiset käyttöjärjestelmät ovat eräänlainen tietokoneen käsittelyalusta, joka jakaa suuret tehtävät pienempiin osiin, jotka suoritetaan samanaikaisesti eri paikoissa ja eri mekanismeilla. Joskus niitä kuvataan myös “moniytimisiksi” prosessoreiksi. Tämän tyyppinen järjestelmä käsittelee yleensä erittäin tehokkaasti erittäin suuria tiedostoja ja monimutkaisia numeerisia koodeja. Se näkyy yleisimmin tutkimusasetuksissa, joissa keskuspalvelinjärjestelmät käsittelevät paljon erilaisia töitä kerralla, mutta ne voivat olla hyödyllisiä aina, kun useat tietokoneet tekevät samanlaisia töitä ja muodostavat yhteyden jaettuihin infrastruktuureihin samanaikaisesti. Niiden asentaminen voi olla aluksi vaikeaa ja vaativat hieman asiantuntemusta, mutta useimmat teknologia-asiantuntijat ovat yhtä mieltä siitä, että ne ovat pitkällä aikavälillä paljon kustannustehokkaampia ja tehokkaampia kuin yhden tietokoneen vastaavat.
Rinnakkaislaskennan perusteet
Rinnakkaiskäyttöjärjestelmä toimii jakamalla laskutoimitukset pienempiin osiin ja jakamalla ne verkon koneiden kesken. Suorittimen ytimien ja muistiryhmien välisen kommunikaation helpottamiseksi reititysohjelmiston on joko jaettava muisti määrittämällä sama osoitetila kaikille verkotetuille tietokoneille tai jaettava muisti jakamalla eri osoitealue kullekin käsittelyytimelle. Muistin jakaminen mahdollistaa käyttöjärjestelmän toiminnan erittäin nopeasti, mutta se ei yleensä ole yhtä tehokas. Kun käytetään hajautettua jaettua muistia, prosessorit voivat käyttää sekä omaa paikallista muistiaan että muiden prosessorien muistia; tämä jakelu voi hidastaa käyttöjärjestelmää, mutta se on usein joustavampi ja tehokkaampi.
Ohjelmiston arkkitehtuuri perustuu tyypillisesti UNIX-pohjaiseen alustaan, jonka avulla se voi koordinoida hajautettuja kuormia verkon useiden tietokoneiden välillä. Rinnakkaisjärjestelmät pystyvät hallitsemaan ohjelmistoja kaikkien rinnakkain toimivien tietokoneiden eri resurssien, kuten muistin, välimuistien, tallennustilan ja prosessointitehon hallintaan. Näiden järjestelmien avulla käyttäjä voi myös olla suoraan yhteydessä kaikkiin verkon tietokoneisiin.
Alkuperä ja ensimmäiset käyttötavat
Vuonna 1967 Yhdysvalloissa työskentelevä yhdysvaltalainen tietotekniikan tutkija Gene Amdahl käsitteli ajatusta ohjelmiston käyttämisestä rinnakkaislaskennan koordinoimiseksi. Hän julkaisi havaintonsa Amdahlin laki -nimisessä paperissa, jossa hahmoteltiin prosessointitehon teoreettinen kasvu, jota voitaisiin odottaa rinnakkaiskäyttöisen verkon käyttämisestä. Hänen tutkimuksensa johti pakettikytkentöjen kehittämiseen ja siten nykyaikaiseen rinnakkaiskäyttöjärjestelmään. Tätä pakettikytkentöjen kehitystä pidetään laajalti läpimurtona, joka myöhemmin käynnisti ”Arpanet -projektin”, joka vastaa Internetin, maailman suurimman rinnakkaisen tietokoneverkon, perustasta.
Nykyaikaiset sovellukset
Useimmat tieteen alat käyttävät tällaista käyttöjärjestelmää, mukaan lukien biotekniikka, kosmologia, teoreettinen fysiikka, astrofysiikka ja tietojenkäsittelytiede. Näiden järjestelmien monimutkaisuus ja kapasiteetti voivat myös auttaa luomaan tehokkuutta sellaisilla aloilla kuin konsultointi, rahoitus, puolustus, televiestintä ja sääennusteet. Itse asiassa rinnakkaislaskennasta on tullut niin vankka, että monet johtavat kosmologit ovat käyttäneet sitä vastatakseen maailmankaikkeuden alkuperää koskeviin kysymyksiin. Tutkijat pystyivät suorittamaan simulaatioita suurista avaruuden osista kerralla. Tiedemiehillä kesti vain kuukausi simulaation Linnunradan muodostumisesta käyttämällä tällaista käyttöjärjestelmää, esimerkiksi saavutusta, jota aiemmin pidettiin mahdottomana sen monimutkaisuuden ja raskauden vuoksi.
Kustannukset
Tiedemiehet, tutkijat ja alan johtajat päättävät usein käyttää tällaisia käyttöjärjestelmiä ensisijaisesti niiden tehokkuuden vuoksi, mutta myös kustannukset ovat yleensä tekijä. Yleensä rinnakkaisen tietokoneverkon kokoaminen maksaa paljon vähemmän kuin supertietokoneen kehittäminen ja rakentaminen tutkimukseen – tai investointi lukuisiin pienempiin tietokoneisiin ja työn jakaminen. Rinnakkaisjärjestelmät ovat myös täysin modulaarisia, mikä mahdollistaa useimmissa tapauksissa edulliset korjaukset ja päivitykset.