Mikä on Amdahlin laki?

Amdahlin laki on teoria, joka sisältää algoritmien suorittamisen joko sarjassa tai rinnakkain. Siinä todetaan, että rinnakkaisesta toiminnasta (eli useiden vaiheiden suorittamisesta samanaikaisesti) johtuvat edut rajoittuvat algoritmin mihin tahansa osaan, jotka voidaan suorittaa vain sarjassa (yksi vaihe kerrallaan). Yleisin Amdahlin lain käyttö on rinnakkaislaskenta, kuten moniydinkoneissa.

Sydämessä Amdahlin laki on matemaattinen kaava. Yksinkertaisimmassa muodossaan se sanoo, että suurin nopeuden kasvu, joka voidaan saavuttaa yhdistämällä prosessi, on yhtä kuin yksi jaettuna prosessin osuudella, jota ei voida rinnastaa, miinus yksi. Jos esimerkiksi 80% prosessista voidaan rinnastaa, yksi jaettuna jäljellä olevalla 20%: lla antaa viisi; yhden pois ottaminen jättää neljä. Tämä tarkoittaa, että prosessin rinnakkaistaminen tällä tavalla saa sen toimimaan neljä kertaa nopeammin. Kaava toimii myös silloin, kun vain pieni osa prosessista voidaan rinnastaa: jos 12% voidaan rinnastaa, laskelma jaetaan 88%: lla, joka on 1.136, miinus yksi, mikä lisää nopeutta 13.6%.

Kaavaa voidaan mukauttaa käytettäväksi monimutkaisemmissa tilanteissa, joissa prosessin eri vaiheet saavat eri nopeuden lisäyksiä rinnakkaisuudesta. Tämä tarkoittaa, että jokaiselle vaiheelle on laadittava luku, joka on prosenttiosuus kyseiseen vaiheeseen ennen rinnakkaisuutta, jaettuna nopeuden kasvulla ja laskemalla nämä luvut yhteen. Sitten kaava jakaa yhden tällä kokonaismäärällä ja vähentää yhden tuloksesta, jolloin kokonaisnopeus kasvaa.

Amdahlin lakia käytetään pääasiassa rinnakkaislaskennassa. Tässä prosessissa useita prosessoreita työskentelee kerralla. Tämä käsittelee yhtä tietokoneprosessorien suurimmista haitoista, että ne toimivat hyvin nopeasti, mutta voivat suorittaa vain yhden toiminnon kerrallaan. Joissakin tapauksissa moniydinprosessori voi tehokkaasti suorittaa rinnakkaislaskennan, koska se simuloi useita suorittimia.

Vaikka jotkut ihmiset väittävät, että Amdahlin laki on harhaanjohtava nimi ja sen pitäisi todella olla ”Amdahlin argumentti”, nimi on Mooren lakiin liittyvien sanojen leikki. Tämä on teoria, joka perustuu Intelin perustajan Gordon Mooren vuoden 1965 lausuntoon. Hän ennusti, että tekniikka kehittyy niin, että integroituun piiriin asennettavien transistorien määrä kaksinkertaistuu kahden vuoden välein, mikä ennuste on osoittautunut erittäin täsmälliseksi.