Flerkärniga processorer skapar mjukvaruhuvudvärk

I decennier innebar förbättring av processorprestanda att höja ett chips klockhastighet. Utdelningen var omedelbart uppenbar för användarna: applikationerna körde snabbare. Men ett snabbare chip förbrukar mer elektricitet, vilket gör att batterierna blir torra i mobila enheter. Följaktligen övergick chiptillverkarna till energibesparande flerkärniga konstruktioner, där flera lågeffektprocessorer på ett enda chip kombineras för att replikera prestandan hos en enda, snabbare processor (se Designa för mobilitet) .





Tyvärr blir applikationer på flerkärniga system inte snabbare automatiskt när kärnor läggs till. Programvara måste skrivas för att dra fördel av den parallella processorkraften. Och att skriva program som körs effektivt och stabilt över flera kärnor är svårt. Om vi ​​inte löser det här programmeringsproblemet, säger Prith Banerjee, Hewlett-Packards senior vice president för forskning, kommer användare inte att se några hastighetsfördelar med nya mikroprocessorer. Banerjee tillägger, Detta är ett mycket grundläggande problem.

DATA SHOT

8,2 gigahertz Det nuvarande hastighetsrekordet för en stationär mikroprocessor, uppnått av entusiaster som överklockade ett chip designat för att köra på tre gigahertz. För att förhindra att spånet smälter kyldes det med flytande kväve.

En lovande potentiell lösning är att ta mänskliga programmerare ur slingan så mycket som möjligt: ​​istället för att låta enskilda programmerare komma på hur de ska få sina applikationer att köras över två, fyra eller fler kärnor, kan de röriga detaljerna överlåtas till kompilatorer, programvara som används för att konvertera högnivåprogrammeringsspråk till maskinkoden som en dator kan förstå. Alla de stora mjukvaru- och chipföretagen, tillsammans med många akademiska forskare, arbetar med att utveckla kompilatorer som kan hantera sådana uppgifter. Det största hindret är att det är svårt att identifiera de delar av ett program som inte är beroende av andra delar, så att en kärna inte lämnas inaktiv medan den väntar på någon del av data. Att helt enkelt övertala utvecklare att skriva renare program, med väldefinierade gränssnitt mellan kodblock, skulle göra jobbet mycket lättare, säger Wen-mei Hwu, professor i el- och datateknik vid University of Illinois. Men han uppskattar att det kommer att dröja fem år innan flerkärniga kompilatorer och matchande programmeringspraxis diffunderar genom datorindustrin.



Dölj