Taloussanomat
Lue uutinen mobiilisivustolla
Kymmeniä, satoja ja jopa tuhansia ytimiä

Intel: Varautukaa tuhatytimisiin suorittimiin

Neliytimisiä Intelin Core 2 Quad-suorittimia seuraa vuoden loppupuolella kahdeksanytimiset Nehalem-suorittimet, ja lisää ytimiä on tulossa.

2.7.2008 16:03 Suoritinvalmistaja Intel kehottaa ohjelmistokehittäjiä varautumaan tulevaisuudessa suorittimiin, joissa on jopa tuhansia ytimiä.

Uutissivusto Cnetin Nanotech-blogi kertoo suoritinjätti Intelin kehottavan ohjelmistokehittäjiä optimoimaan koodiaan tuhansille ytimille.

Samaisessa blogissa haastateltiin aiemmin Intelin Tera-scale computing research program -hankkeen apulaispäällikkö Jerry Bautistaa kuvankäsittelyyn liittyvistä asioista.

– Mitä enemmän ytimiä meillä on, sitä parempi. Edellyttäen että pystymme tarjoamaan laitteelle tarpeeksi kaistaa muistille, Bautista totesi haastattelussa.

Kymmeniä, satoja ja
jopa tuhansia ytimiä

Intelin insinööri Anwar Ghuloum vei ajatusta blogissaan eteenpäin. Hän ohjeistaa ohjelmistokehittäjiä ajattelemaan kymmeniä, satoja ja tuhansia ytimiä ohjelmistojen kehitysprosesseissa.

Ghuloum mainitsee keskustelevansa usein Intelin ulkopuolisten ohjelmistokehittäjien kanssa ohjelmien optimoimisesta moniytimisille suorittimille. Hän kokee yhä useampien ohjelmistokehittäjien sisäistävän ajattelutavan tusinoille, sadoille ja jopa tuhansille suorittimille.

– Ohjelmoi [koodia] niin monelle ytimelle kuin mahdollista, vaikka ydinten määrä olisi enemmän kuin tällä hetkellä markkinoilla olevissa tuotteissa on, Ghuloum tiivistää blogissaan.

Jutun kirjoitti: Hannu Nokso-Koivisto

Hannu Nokso-Koivisto

Teksti on lisensoitu Creative Commons Nimeä-Ei muutoksia-Epäkaupallinen -lisenssillä.

Mainitut yritykset

Kommentit (23)

Huono 0
Rinnakkaisohjelmoinnin kasvu todellakin on iso IT maailman trendi. IBM:n Cell prosessori, Intel/AMD quad cores sekä prosessoreiden ulkopuolelta MapReduce ja Hadoop... Ovatkohan koulut mukana opetuspuolella tässä asiassa?
Concerned Citizen :)
Parallelisointi ei välttämättä ole helppoa. Rinnakkaisohjelmointi on aivan oma taiteenalansa, eikä 1000 ydintä auta, jos tarkoitus on esim. laskea lineaarisesti jotain kaavaa.
El-Gamal
Parallelisointi ei välttämättä ole helppoa. Rinnakkaisohjelmointi on aivan oma taiteenalansa, eikä 1000 ydintä auta, jos tarkoitus on esim. laskea lineaarisesti jotain kaavaa.

Onhan nykysupertietokoneissakin jopa satojatuhansia prosessoreita ja silti niille ohjelmoidaan jatkuvasti uutta softaa.
erkele
Taitaapa tulevaisuuden ohjelmat olla tukkoisia kun säikeet jumittaa. Taida olla oikeita yksittäisiä prosessoreita nuo tuhannet ytimet?
TT
Suurin osa koodareista kuitenkin vääntää jotain weppisoftaa javalla, jolloin sovelluspalvelin ja virtuaalikone hoitavat rinnakkaisuuden.
noh
Parallelisointi ei välttämättä ole helppoa. Rinnakkaisohjelmointi on aivan oma taiteenalansa, eikä 1000 ydintä auta, jos tarkoitus on esim. laskea lineaarisesti jotain kaavaa.

Onhan nykysupertietokoneissakin jopa satojatuhansia prosessoreita ja silti niille ohjelmoidaan jatkuvasti uutta softaa.


Miksi turhaan vastaat, jos et ymmärrä asiasta?

Tietenkin, jos katsotaan esim. Sunin Niagara-siruja, nähdään, että kyllähän sitä saa samaan aikaan pyörimään jo aika monta säiettä. Mutta ei se sitä tarkoita, että esim. quake pyörisi nopeammin 1000:lla corella kuin yhdellä.

Onhan se hyvä, että webserver voi omistaa jokaiselle asiakkaalle oman säikeen tai suoritettaessa kunnon hajautettua laskentaa. Mutta tässä onkin pointtina tuo "hajautettu". Kaikkea ei niin vain hajauteta, varsinkaan perinteisiä desktop-koneen toimintoja.
El-Gamal
Kaikkea ei niin vain hajauteta, varsinkaan perinteisiä desktop-koneen toimintoja.
Hyvänä esimerkkinä mm. Piin laskeminen. Muutenkin tuossa tulee raja vastaan aika nopeasti, tosin tämä on taas näitä juttuja joille kymmenen vuoden päästä nauretaan, että miten pärjättiin yhdellä ytimellä.

Uutta ajattelumallia ja uudenlaisia ohjelmointikieliä tämä vaatii, jo ihan käyttöjärjestelmä tasolta. Hyvä sauma rikastua kun keksii uuden systeemin hyödyntämään useita ytimiä.
plop
Kaikkea ei niin vain hajauteta, varsinkaan perinteisiä desktop-koneen toimintoja.

Mitähän niissä ei?

Kyllä normaalikäyttäjällä on useita ohjelmia yhtaikaa auki, selaimessakin useita sivustoja samaan aikaan, mikä tarkoittaa paljon toisistaan riippumatonta (esim.) javascriptiä. Myös tekstin- ja kuvankäsittelyohjelmistot tekevät useita eri asioita samaan aikaan, jotka pystyy jakamaan säikeisiin. Siinä olet kyllä oikeassa, ettei se aina helppoa ole.

Hyvänä esimerkkinä mm. Piin laskeminen.

Ei, piin laskeminen ei ole perinteinen desktop-toiminto valtaväestön keskuudessa. ;)
Otus
myös kääntäjien pitää parantua. Kääntäjän pitää analysoida koodi entistä älykkäämmin koodin pilkkomiseksi automaattisesti. Fiksu kone on tyhmää ohjelmoijaa parempi optimoija ;) siihen suuntaanhanintelin kääntäjä ja applen llvm projektit menevät. Muistaakseni ibarillakin on ainakin ollut jokin mustekala_kääntäjäprojekti celliä varten.
narri
1000 cores ought to be enough for anybody.
Salakka
Sivut: 1 2 3 Edellinen Seuraava
Kirjoita vastaus
Ohjeet: Pysy aiheessa ja kirjoita napakasti. Muista, että haastateltavilla, kanssakeskustelijoilla ja toimittajilla on oikeus omaan, eriävään mielipiteeseen. Ole kohtelias ja ystävällinen, äläkä tarkoituksella provosoi tai hauku muita keskustelijoita. Taloussanomat varaa oikeuden poistaa asiattomat viestit. Varauduthan siihen, että linkkejä sisältävät viestit tarkistetaan yksitellen roskapostin suodattamiseksi. Arvostamme mielipidettäsi!
> Lue koko keskusteluetiketti
.