Smartare datahantering kan göra framtidens datorer mångdubbelt snabbare

När det gäller att öka datorns prestanda vill Wallenberg Academy Fellow David Black-Schaffer skifta fokus från beräkningskapaciteten till ett smartare sätt att hantera data.

David Black-Schaffer

Professor i datorsystem

Wallenberg Academy Fellow, förlängningsanslag 2020

Lärosäte:
Uppsala universitet

Forskningsområde:
Utvecklar energieffektiva minnessystem för ökad datorkapacitet 

Sedan slutet av 1960-talet har Moores lag förutspått en regelbunden fördubbling av antalet transistorer som ryms på ett datorchip. Under åren har detta gett en exponentiell tillväxt av datorernas beräkningskapacitet.

Något som dock släpat efter är möjligheten att snabbt komma åt de data som behövs för beräkningarna. Situationen har dessutom förvärrats av de enorma datamängder som genereras inom allt från forskning till sociala nätverk och maskininlärning. David Black-Schaffer menar att det är dags att ta fram ett smartare sätt att flytta data.

– I dag ägnas cirka två tredjedelar av kraften hos en processor till att flytta omkring data. Bara en tredjedel av kraften används till de beräkningar som vi tänker på när vi talar om datorprestanda. 

Minneshanteringen begränsar

Även om processorerna aldrig varit snabbare än i dag så bromsas datorerna av sättet som information flyttas, läses och kopieras. Problemet har varit känt en längre tid, menar David Black-Schaffer. 

– Vi har utvecklat många sätt att hantera dessa begränsningar men det sker genom förenklingar och kompromisser som är långt ifrån optimala, säger han. 

I dag sker det vanligtvis genom att låta en del av processorn försöka förutspå vilka data som behövs och flytta dem i förväg. Förutsägelserna är svåra att göra då mönstren hos olika program skiljer sig åt. Och medan vissa program kan få en skjuts av funktionen så påverkas andra istället negativt.

Ett extra minneslager

David Black-Schaffer menar att vi behöver ett nytt sätt att programmera. Hans lösning är att separera minneshanteringen från programmen som står för beräkningarna. Med hjälp av en ny programmeringsmodell för minneshantering blir det möjligt att optimera tillgången och flytten av data.

– Då kan vi ge exakta instruktioner till hårdvaran hur den ska hantera data. Det skulle göra det möjligt att justera hur hårdvaran fungerar för varje enskilt program. 

Lösningen går att likna vid ett extra programmerbart lager mellan mjukvara och hårdvara. Ett flexibelt lager som gör det möjligt att ge exakta instruktioner om hur data ska överföras, hur olika data ska relateras till varandra och hur transaktioner ska ske där flera saker behöver ske samtidigt. Med hjälp av det programmerbara lagret kan dagens gissningslek undvikas.

– Om programmen själva kan styra hur data flyttas så kommer de att fungera bättre och vi slipper de kompromisser som kommer från dagens gissningar. Detta kan bli ett lika stort steg som virtualiseringen som öppnade för dagens molnutveckling. 

Små marginaler

Ett nytt programmerbart lager kommer dock att kräva mer energi och en del av datorns prestanda. Redan i dag är marginalerna små, inte minst när det gäller energianvändningen hos våra mobila system. Därför är det viktigt att se till att lagret frigör mer kraft än det kräver.

Dessutom är det viktigt att utveckla nya verktyg och programbibliotek som kan delas bland morgondagens programmerare. 

– Vi behöver skapa en miljö där det går att anpassa och återanvända minneshanteringsprogrammen. Annars leder det till ett merarbete som ingen har tid att utföra. Om vi kan påvisa fördelarna med systemet, och hitta ett sätt att enkelt implementera det, så behöver vi sedan en processortillverkare som är öppen för möjligheten att bygga in funktionen i sin hårdvara, säger David Black-Schaffer.

I dag finns ett samarbete mellan David Black-Schaffers forskargrupp och den engelska processorutvecklaren Arm Research. Gruppen har även samarbetat med flera amerikanska processorutvecklare i USA och Asien. Många forskare från avdelningen Black-Schaffer tillhör har också gått vidare till större internationella företag vilket gör närheten till industrin stor.

– Tack vare anslaget Wallenberg Academy Fellow kan vi ta ett större grepp och involvera fler personer vilket är avgörande för att vi ska nå ett så ambitiöst mål.

”Förlängningen av Wallenberg Academy Fellow gör det möjligt att bygga vidare på mina tidigare resultat och ta mig an större frågor än tidigare. ”

Betonar utbildningens roll

David Black-Schaffer kom till Uppsala universitet 2009 efter att ha doktorerat vid Stanford University i Kalifornien. Vid sidan av forskningen har han även lett utvecklingen av ett populärt verktyg för digitalt lärande och undervisning. I valet mellan att kommersialisera verktyget eller lägga sin tid på forskning så blev valet det senare. 

– Vårt verktyg har använts av närmare 80 000 studenter världen över. Men det är väldigt svårt att nå framgång med ett utbildningsföretag eftersom det kräver att du kan övertyga lärarna att utveckla sin egen undervisning i linje med dina verktyg, säger han.

Lärdomarna han tar med sig är flera. Inte minst att det behövs fler incitament för att lärare ska ägna tiden som krävs till utveckling av utbildningsmaterial. 

– Vår viktigaste uppgift som universitet är utbildning. Människorna som vi utbildar bidrar i flera årtionden till samhället. Detta är särskilt tydligt när det gäller forskare, där varje forskare ger ett betydande avtryck i samhället under sina karriärer. Mycket större än de forskningsartiklar de publicerar under sin utbildning.

Text Magnus Trogen Pahlén
Bild Magnus Bergström, David Black-Schaffer, Stiftelsen för strategisk forskning