Gå til innhold

Javastøtte for flere CPU-kjerner


Anbefalte innlegg

Skrevet

Leste idag om Intel sitt Threading Building Blocks som er blitt gitt ut som åpen kildekode under GPLv2. Dette er tydeligvis for C++, så jeg lurer på om Java har noe lignende direkte støtte for koding mot flere CPU-kjerner? Dette er ukjent farvann for meg da parallellisme i Java ikke er noe jeg har vært innom før.

 

http://www.threadingbuildingblocks.org/

Videoannonse
Annonse
Skrevet

Tråder i java er native, så det er operativsystemet som avgjør hvilken kjerne som tråden skal kjøre på. Så i den sammenheng så drar trådete applikasjoner i Java nytte av flerkjerne prosessorer. Men du kan ikke i koden bestemme hvilken kjerne du ønsker at tråden skal kjøre i.

 

For meg så virker det som at TBB er et API som skjuler kompleksiteten av tråd programmering i C++ for å gjøre det enklere og tryggere å utvikle fler trådete applikasjoner i C++.

Skrevet (endret)
Tråder i java er native, så det er operativsystemet som avgjør hvilken kjerne som tråden skal kjøre på. Så i den sammenheng så drar trådete applikasjoner i Java nytte av flerkjerne prosessorer. Men du kan ikke i koden bestemme hvilken kjerne du ønsker at tråden skal kjøre i.

 

For meg så virker det som at TBB er et API som skjuler kompleksiteten av tråd programmering i C++ for å gjøre det enklere og tryggere å utvikle fler trådete applikasjoner i C++.

9153723[/snapback]

 

TBB er vel mye det samme som OpenMP. Kort fortalt er det en måte å hente ut en god gevinst fra flere kjerner/prosessorer uten for høye kostnader (utviklingsarbeid). Tror det finnes en Java utgave av OpenMP.

 

Dersom man ønsker å lære litt mer grunnleggende paralellprogrammering kan man se på MPI (tilgjengelig for Java,C/C++, Fortan). MPI er vel en API for sending av data mellom prosessorer/kjerner.

Endret av mar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...