Siden april 2004 har det vært kjent at Sun drev prosjektet «Rock» for en banebrytende prosessor med flere kjerner og flere tråder, og med nye måter å håndtere tråder og minne på. Detaljer som ble sluppet på IEEEs årlige konferanse International Solid State Circuits Conference (ISSCC) i San Francisco i februar 2008 tydet på at det dreide seg om en virkelig teknologisk nyvinning, og at Sun på visse områder hadde et solid forsprang til både IBMs Power-familie, og til Intel. Man kan anta at Sun har brukt flere milliarder dollar på å utvikle Rock.
Uavhengig av hverandre, viser New York Times og Channel Register til hver sine anonyme kilder som forteller at Rock er skrinlagt, for godt. Det er ikke gitt noen begrunnelse for skrinleggingen.
Begge mediene har fått tilbakemeldingen «ingen kommentar» fra Suns talsperson Michelle Parkinson.
Ifølge den opprinnelige planen for Rock, skulle prosessoren ha nådd markedet i løpet av 2008. Etter presentasjonen på ISSCC i februar i fjor ble tidsplanen justert til lansering innen utgangen av 2009. Rock avlives med andre ord noen få måneder før den skulle vært i salg.
Hvis kildene har rett, og Rock avlives før Oracle formelt overtar Sun, kan Oracle-sjef Larry Ellison likevel sies å ha sine ord i behold da han i våres forsikret at Suns maskinvareprosjekter skal videreføres. Da blir det Sun selv som dreper Rock.
Sparc-teknologien har gjennom mange år vært utviklet i et samarbeid mellom Sun og Fujitsu.
I juni 2005 ble disse enige om en arbeidsdeling under navnet «Advanced Product Line»: Fujitsu skulle stå for «Olympus»-utgaven av Sparc64-prosessoren, rettet mot de største serverne, mens Sun skulle ta seg av «Coolthread», en prosessorfamilie med mange kjerner og flere tråder per kjerne.
«Niagara», siden kjent som UltraSparc T1 eller Coolthread T1, og så oppgradert til T2 i oktober 2007, var Suns første bidrag i dette samarbeidet. Rock skulle vært det andre. Samarbeidet med Fujitsu gjorde det mulig for Sun å skrinlegge UltraSparc V og etterfølgeren «Gemini», uten frykt for ikke å kunne dekke etterspørselen etter de aller kraftigste serverne.
Niagara kan antakelig oppsummeres som en suksess, både utviklingsmessig og markedsmessig.
Med sine åtte kjerner og åtte tråder per kjerne kan Niagara beskrives som en slags «rack på en chip». Den leverer tilfredsstillende datakraft for typiske behov, og med effektiv bruk av både areal og energi. I april i fjor fikk den forlenget liv gjennom et nytt brikkesett som gjorde det mulig å bygge servere med to Niagara-prosessorer. Seks måneder seinere kom enda et brikkesett: Sun kunne tilby servere med fire Niagara-prosessorer, og reklamere med en fireveis server som gjorde jobben til 256 servere, med virtualiseringsteknologi fra Suns operativsystem Solaris.
Arkitekturen i Rock er ganske forskjellig fra både Niagara og x86. Tallet på kjerner er doblet i forhold til Niagara, mens tallet på tråder per kjerne er redusert til fire.
Trådene i Rock er dessuten spesialiserte. I hver kjerne er det bare to tråder som beregner data. De to andre er «speider-tråder» («scout threads»). Hver speidertråd kjører parallelt med sin hovedtråd, og beregner adresser og sørger for å forhåndslaste dataverdier i et cacheminne. Tanken er at dette samlet sett er mer effektivt enn om man lar alle trådene beregne både adresser og data, som i Niagara, i x86 og i Power.
Det andre store teknologiske skillet mellom Rock på den ene siden, og Niagara, Power og x86 på den andre, gjelder minnehåndtering. Rock har «transactional memory», eller «transaksjonelt minne».
I prosessorer med flere tråder, må minnehåndteringen forholde seg til hva som skjer når flere tråder ønsker tilgang til den samme dataen på samme tid. Den vanlige måten å løse dette på, er å «låse» den aktuelle datablokken, slik at den bare er tilgjengelig for én tråd om gangen. Det innebærer dødtid, fordi hver tråd må vente til den forrige er ferdig, før den selv slipper til.
Studier av hvordan dette virker i praksis, tyder på at tråder i 90 prosent av tilfellene ikke forstyrrer for hverandre når de regner på den samme datablokken. Låsing innebærer med andre ord at man sløser med tid.
I transaksjonelt minne låses ikke datablokker for andre tråder, selv ikke tråder fra andre kjerner. I de 90 prosent av tilfellene der trådene ikke ødelegger data for hverandre, oppnår man raskere behandling. Derimot får man en tilleggsbelastning, fordi det må innføres kontrollrutiner for å fange opp og rette feil som oppstår i de resterende 10 prosent. Sun mente å ha løst dette på en måte som ga en klar samlet ytelsesgevinst.
Produksjons- og energimessig skulle dette også gitt fordeler: Trass i sine 16 kjerner og fire tråder per kjerne, ble de første Rock-prototypene realisert med bare 410 millioner transistorer, mot for eksempel 2 milliarder transistorer i Intels firekjernede Itanium-prosessor.
Hvordan dette ville slått ut i praksis får vi antakelig aldri vite.
Sun har siden desember 2005 overgitt mye av underlaget for Niagara-familien til åpen kildekode, gjennom OpenSparc Project. Framtiden til dette prosjektet kan også føles usikker.
Les også:
- [07.09.2009] Gribber sirkler rundt døende Sun
- [03.09.2009] EU trenger mer tid på å granske kjøpet av Sun
- [31.08.2009] Suns siste kvartal gjort opp med tap
- [21.08.2009] «Helt ok» at Oracle kjøper Sun
- [17.07.2009] Sun-aksjonærene sier «ja» til Oracle
- [03.07.2009] Oracle kutter opptil 1000 jobber i Europa
- [24.06.2009] Første salgssvikt for Oracle siden 2002
- [13.10.2008] Åttekjernet prosessor klar for fireveis server
- [09.04.2008] Sun-server oppgradert til 128 tråder
- [08.02.2008] Sun utsetter sin prestisjeprosessor
- [01.02.2008] Sun går nye veier innen flertråd-teknologi
- [11.12.2006] Lønnsomt å gi bort prosessor-design
- [26.01.2006] Fujitsu forsinker samarbeidet med Sun
- [07.12.2005] Ny Sun-prosessor til åpen kildekode