Datorarkitekturer. Sammanfattande bedömning. Ämnesbeskrivning

Relevanta dokument
Metalliska material. Sammanfattande bedömning. Ämnesbeskrivning

F1 Introduktion och ingenjörsrollen EDAA05 Datorer i system! Roger Henriksson!

Matematikens grundvalar och programmering av datorer

F1 Introduktion och ingenjörsrollen

Datorhistoria och datorn i samhällsutvecklingen. Moment i DD1390 Programsammanhållande kurs i datateknik

Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)

Utdrag från kapitel 1

CIVILINGENJÖRSEXAMEN MASTER OF SCIENCE IN ENGINEERING

ITinstitutionen bit för bit

DATA- OCH INFORMATIONSVETENSKAP

Datorhistoria och datorn i samhällsutvecklingen. Moment i DD1390 Programsammanhållande kurs i datateknik

Beräkningsvetenskap. Vad är beräkningsvetenskap? Vad är beräkningsvetenskap? Informationsteknologi. Informationsteknologi

Specialiseringar InfoCom

Kursplan och kunskapskrav för skolämnet Teknik

Grundläggande programmeringsteknik Datorsystem

KONSTRUKTION. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Datorhistoria och datorn i samhällsutvecklingen. Moment i DD1390 Programsammanhållande kurs i datateknik

PARALLELLISERING AV ALGORITMER PROCESSORER FÖR FLERKÄRNIGA

13 1MA302 Automatateori DV1 4 A D, M 1TD442 Algoritmer och datastrukturer DV1 6 A D

Förordning om särskilda programmål för gymnasieskolans nationella program

KONSTRUKTION. Ämnets syfte

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg

TEKNIK. Ämnets syfte. Undervisningen i ämnet teknik ska ge eleverna förutsättningar att utveckla följande:

Pedagogisk planering

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

TEKNIK. Ämnets syfte. Undervisningen i ämnet teknik ska ge eleverna förutsättningar att utveckla följande: Kurser i ämnet

Pedagogisk planering till klassuppgifterna Teknikåttan 2019

1642 uppfann Blaise Pascal världens första mekaniska räknemaskin. Den kunde både addera och subtrahera. Den kan ses som en föregångare till datorn.

Forsknings- och innovationsagenda 2019

Tillsammans med dig förädlar vi framtiden

XS4 2.0 RE-VOLUTION XS4 MINI. LIMITED EDITION PRINT

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

SKOLFS. beslutade den XXX 2017.

INSTITUTIONEN FÖR FYSIK

CDC en jämförelse mellan superskalära processorer. EDT621 Campus Helsingborg av: Marcus Karlsson IDA

ESN lokala kursplan Lgr11 Ämne: Teknik

LUNDS UNIVERSITET. Parallell exekvering av Float32 och INT32 operationer

Optimeringslara = matematik som syftar till att analysera och. Optimeringslara ar en gren av den tillampade matematiken.

Datavetenskap/IT. vid Uppsala universitet

Pedagogisk planering till klassuppgifterna, rikstävling Teknikåttan 2018

Pedagogisk planering till Klassuppgiften Teknikåttan 2016

Studieplan för utbildning på forskarnivå i datalogi

Du kan även lyssna på sidorna i läroboken: Teknik direkt s Lyssna gör du på inläsningstjänst.

Grundutbildning vid EIT. Lunds universitet

Uppvaktning av utbildningsminister Jan Björklund

Tekniska beräkningar. Vad är tekn beräkningar? Vad är beräkningsvetenskap? Informationsteknologi. Informationsteknologi

Betyg i årskurs 6. Grundskolans läroplan Kursplan i ämnet teknik

Beräkningsvetenskap I. Exempel på tillämpningar: Vad är beräkningsvetenskap? Informationsteknologi

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

Bidrag till uppbyggnad och drift aven svensk nationell infrastruktur - Swedish National Infrastructure for Computing (SNIC)

Vetenskap och Teknologi 9686 Koppling till Lgr11

Teknikprogrammet (TE)

Fakulteten för hälsa, natur- och teknikvetenskap. Utbildningsplan

SKOLFS. beslutade den -- maj 2015.

campus.borlänge Förstudie - Beslutsstöd för operativ tågtrafikstyrning

Centralt innehåll. Några enkla ord och begrepp för att benämna och samtala om tekniska lösningar. I årskurs 1 3. I årskurs 4 6

TEKNIKPROGRAMMET Mål för programmet

Lärarrepresentanter Lars Holst, ordförande Gustav Amberg Henrik Christensen Eva Malmström Lars-Göran Mattsson Seshadri Seetharaman

KONJUNKTURLÄGE VÄSTERBOTTEN

Ny teknik slår igenom när den är gammal

Inköp av licenser för ny IT-infrastruktur i Luleå kommun

Information från programledningen

Information till blivande konsortier som avser att söka bidrag för nationell infrastruktur 2015.

Dynamisk programvara, ett didaktiskt verktyg?

Hur har du lyckats skapa ett så framgångsrikt

MIO310 Optimering & Simulering. Kursansvarig: Universitetslektor Fredrik Olsson, Produktionsekonomi, Lunds tekniska högskola

PiiA Innovation Skapar förutsättningar för innovation inom Svensk industri

Lärares planering och genomförande av arbetsområdet Trafiksignalsystem

LiTH Syllabus Ver 2.0 1

Förankring Lgr11. Pedagogisk planering till Klassuppgiften Teknikåttan 2013

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg niklas.broberg@chalmers.

Pedagogisk planering till Klassuppgiften Teknikåttan Förankring Lgr11

Nyttan med flyg för Sverige. Flygfakta i fickformat

W HIT E PA P ER. Vanliga frågor om Hybrid datacenter som tjänst. Hur kan jag veta att investeringen blir lönsam? t e xt : Johan Bentzel

Naturvetenskapsprogrammet Mål för programmet

Att välja kurser på Datateknik år 4-5

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

Hur trivs de manliga och kvinnliga studenterna på sin datautbildning vid Linköpings Universitet?

Studieplan för utbildning på forskarnivå inom Medieteknik Inom skolan för datavetenskap och kommunikation, KTH

Introduktionsföreläsning

Öppen tillgång till forskningsdata Forskarsamhället i förändring

Göteborg 5 december Teknik

Remissvar från Volvo Cars till SOU 2018:16 Vägen till självkörande fordon - introduktion

MIO310 Optimering & Simulering. Kursansvarig: Universitetslektor Fredrik Olsson Produktionsekonomi Lunds tekniska högskola

Datavetenskapligt program, 180 högskolepoäng

Vad är mjukvara? DEN INBYGGDA INTELLIGENSEN

Utbildningsplan för masterprogrammet i inbyggda system vid Uppsala universitet, 120 hp, 2014/2015

Tentamen i Digitalteknik, EIT020

Datorns utveckling. Bild av ENIAC

Statistiska metoder för utveckling av innovativa process-teknologier med hög yield för tillverkning av nästa generationens mikroprocessorer

Forskningen måste inriktas på individanpassad medicin

Är färre och större universitet alltid bättre?

Innovativa SCM-lösningar

STINT är unikt genom att vara den enda aktör som har internationalisering av högre utbildning och forskning som enda uppgift.

EV3 Design Engineering Projects Koppling till Lgr11

Produktion - handel - transporter

Transkript:

Datorarkitekturer Sammanfattande bedömning Datorarkitektur är det teknikvetenskapliga ämne som behandlar principer för konstruktion av datorsystem. Datorns arkitektur definierar ett funktionellt gränssnitt mot programvaran, den så kallade exekveringsmodellen. Viktiga fält inom datorarkitektur behandlar principer för exekveringsmodeller, principer för implementering av dessa modeller i given implementeringsteknologi samt metoder för analys av egenskaper såsom beräkningsprestanda, effektutveckling samt tillförlitlighet i given implementeringsteknologi. Ämnet angränsar till programvaruteknik genom dess koppling till programvara via exekveringsmodeller och till elektronik genom dess koppling till implementeringsteknologier. En viktig drivkraft bakom ämnet är dels den mångfacetterade användningen av datorer i vitt skilda tillämpningar och de krav de ställer på funktionalitet och beräkningsprestanda. En annan drivkraft är de ramvillkor som den teknologi som datorer utvecklas i ställer på implementering av datorsystem. Ämnet har historiskt intagit en central plats i USA men har på grund av satsningar på excellensnätverk fått en framskjuten plats inom Europa. I Asien har Japan varit ledande inom området men ämnet ägnas ett tilltagande intresse i Korea och Kina. Sverige har medvetet byggt upp en god och, inom vissa fält, internationellt erkänd forskning inom ämnet, speciellt inom parallelldatorer. Forskningen inom vissa fält är dock förhållandevis svag givet dess betydelse. Ett identifierat hot är inverkan av parallelldatorer på möjligheterna för programvara att utnyttja framtida datorers beräkningsprestanda. För att accelerera genombrott föreslås stimulans av tvärvetenskapliga samarbeten mellan datorarkitektur och relevanta grupperingar inom programvaruteknik. Ett annat identifierat hot avser implementeringsteknologins möjligheter att ge rätta förutsättningar för ökning av beräkningsprestanda i framtiden. Det är sannolikt att nya implementeringsteknologier snart måste beaktas och detta kommer att ge nya utmaningar för ämnet datorarkitektur. Det konstateras att de identifierade hoten ger goda möjligheter för svensk forskning inom datorarkitektur. Sverige har förhållandevis stark forskning inom såväl programvaruteknik som materialforskning. Genom att brygga dessa ämnen med datorarkitektur kan nya tvärvetenskapliga samarbeten potentiellt bryta de barriärer som identifieras. Ämnesbeskrivning Datorarkitektur är det teknikvetenskapliga ämne som behandlar principer för konstruktion av datorsystem. Inom ämnet studeras å ena sidan principer för datorns exekveringsmodell för programvaran och å andra sidan principer för hur exekveringsmodellen implementeras för att nå önskvärda egenskaper avseende exempelvis beräkningsprestanda, tillförlitlighet, och energieffektivitet i given implementeringsteknologi. Ämnet angränsar därför till programvaruteknik och ämnen rörande implementeringsteknologier som idag domineras av halvledarelektronik.

Ämnet lägger grunden för å ena sidan hur datorsystem konstrueras för att utgöra ett funktionellt gränssnitt för utveckling av datorbaserade tillämpningar och å andra sidan hur datorsystem kan uppfylla önskvärda egenskaper i given implementeringsteknologi. Genom ämnets koppling till å ena sidan programvaruteknik och å andra sidan elektronik påverkar ämnesutvecklingen inom alla tre områden varandra. Man kan dela in datorarkitekturämnet i tre fält: Principer för exekveringsmodeller för datorsystem och organisation av datorsystem. Principer för implementering av exekveringsmodeller för datorsystem mikroarkitektur, minnessystem och interna nätverk. Metoder för kvantitativ analys av konstruktionsprinciper för datorsystem. Inom fältet principer för exekveringsmodeller för datorsystem behandlas frågor rörande det funktionella gränssnittet mot programvaran. Inom fältet principer för implementering av exekveringsmodeller behandlas frågeställningar hur man kan uppfylla önskvärda egenskaper givet möjligheter och begränsningar i given implementeringsteknologi. Detta fält har tydliga underfält som beaktar mikroarkitektur, minnessystem samt interna nätverk. Notera att en exekveringsmodell kan vara ett gränssnitt som implementeras delvis i hårdvara och delvis i programvara varför vissa underfält inom programvaruteknik, såsom operativsystem och kompilatorteknik, överlappar med ämnet datorarkitektur. Slutligen behandlar fältet metoder för kvantitativ analys allmänt hur man analyserar kvantitativa egenskaper hos givna datorsystemimplementeringar av en given exekveringsmodell i en given implementeringsteknologi. Styrkor, svagheter och ämnesmässiga trender Ämnesmässiga drivkrafter Datorns historia är kort. Den första elektroniska datorn ENIAC stod klar 1946. Datorutvecklingen drevs i början av behovet att automatisera beräkningar men i och med intåget av halvledarelektronik under tidigt 1970-tal ledde den gynnsamma prisutvecklingen till att datorn blev en massmarknadsprodukt som idag finns integrerad i de flesta tekniska system. Utvecklingen inom halvledarelektronik brukar sammanfattas under benämningen Moore s lag: antalet transistorer i en integrerad krets ett chip fördubblas cirka vartannat år. Detta har lett till en fördubbling i beräkningsprestanda cirka vartannat år under de senaste tre decennierna som till stor del kan hänföras till bidrag från ämnesutvecklingen inom datorarkitektur. Under 1970-talet studerades i synnerhet principer för parallella exekveringsmodeller och exekveringsmodeller för olika programmeringsspråk. 1980-talet lade grunden för ämnet som en teknikvetenskaplig disciplin genom de genombrott som gjordes vid Stanford och Berkeley kring principerna bakom så kallade RISC-datorer. Tyngdpunkten för forskningen under 1980- och 1990-talen var inom fältet principer för implementering av exekveringsmodeller och fokuserade på hur man kan utvinna instruktionsparallellism och underfälten mikroarkitektur, minnessystem och interna nätverk blev centrala fält. Grunden för fältet metoder för kvantitativ analys lades och har sedan dess varit ett aktivt fält. Om än tyngdpunkten låg kring sekventiella exekveringsmodeller fanns också en betydande verksamhet inom parallella exekveringsmodeller. Frågeställningar har drivits huvudsakligen av utvecklingen inom halvledarelektronik då exekveringsmodellen varit relativt fixerad. Dock skedde under tidigt 2000-tal ett skifte mot parallella exekveringsmodeller genom att man då nådde gränsen för

effektutvecklingen på ett chip varvid parallelldatorer (så kallade multicores) ansågs vara enda vägen framåt. Ämnesmässiga trender Datorarkitekturämnets frågeställningar förväntas fortsättningsvis att drivas av utvecklingen inom halvledarelektroniken. Enligt halvledarelektronikens roadmap förväntas en fortsatt exponentiell ökning av antalet transistorer på ett chip under de kommande tio åren. Effektutvecklingen på ett chip kommer dock att bli en alltmer begränsande faktor. Som en följd av detta kommer beräkningsprestandaökning bli än mer beroende av att man kan utvinna parallellism. Detta förväntas ha en stor inverkan på forskningen i de olika fälten inom datorarkitektur. Principer för i synnerhet parallella exekveringsmodeller förväntas öka i betydelse. Principer för implementering av exekveringsmodeller förblir viktigt. Inom underfälten mikroarkitektur kommer frågan hur man utvinner parallellism dynamiskt att vara viktig. Underfältet minnessystem kommer att behöva göra genombrott hur man ska kunna erhålla en hög minnesbandbredd. Här erhåller underfältet interna nätverk också utmaningar. Övergripande kommer alla underfält att inrikta frågeställningarna mot hur man kan uppnå högre beräkningsprestanda med avsevärt mindre effektutveckling. Detta kommer att öka intresset för principer för specialiserade, och därför effektsnålare, såväl som anpassningsbara beräkningsstrukturer. I takt med att beräkningsstrukturerna i datorer blir alltmer komplicerade system kommer metoder för kvantitativ analys att finna nya utmaningar att adressera. På 5 års sikt kommer det att bli alltmer utmanande att utnyttja halvledarelektronik, som idag är CMOS, som implementeringsteknologi för datorer. Intresset för alternativa teknologier och exekveringsmodeller kommer därför att öka och ha betydelse för inriktningen av forskningen på 5 till 10 års sikt. Ämnets betydelse internationellt och nationellt styrkor och svagheter Ämnet intar naturligt en central plats i USA där de större universiteten har världsledande forskning. Ämnet är också välrepresenterat i Europa och har växt i betydelse under 2000-talet genom bildandet av det EU-finansierade nätverket HiPEAC som engagerar över 800 hundra forskare. Sverige är representerat i HiPEAC genom Chalmers. Ämnet har traditionellt också varit centralt i Asien, i framförallt Japan, men stiger i betydelse i Korea och Kina. Sverige byggde redan under 1950-talet upp kompetens genom de tidiga datorprojekten BARK, BESK och SMIL. STU (Styrelsen för teknisk utveckling) satsade under 1980-talet på en kompetensuppbyggnad inom datavetenskap och lade grunden för datorarkitekturforskning vid de större universiteten. Idag finns betydande verksamhet inom datorarkitektur vid Chalmers, Halmstad, Jönköping, KTH, Linköping och i Uppsala. Parallelldatorer har ägnats stor uppmärksamhet i Sverige. Forskningen håller god kvalitet och är i vissa fall internationellt erkänd. Att parallelldatorer nu är norm gör svensk datorarkitekturforskning mycket relevant. Det relativt nyligen skapade nätverket Swedish Multicore Initiative (SMI), anordnar årligen en informationsdag som besöks av över 200 forskare och ingenjörer från akademi och industri. En svaghet är att ämnet är relativt litet i Sverige. Därför kan endast ett fåtal fält ägnas uppmärksamhet. Principer för exekveringsmodeller ägnas relativt lite uppmärksamhet givet dess betydelse. Principer för implementering av exekveringsmodeller har däremot en gedigen verksamhet speciellt inom underfälten minnessystem. Underfältet mikroarkitektur är dock relativt styvmoderligt

behandlat. Fältet metoder för kvantitativ analys täcks till viss del om än inte motsvarande dess betydelse i framtiden. Frågeställningarna inom datorarkitektur drivs huvudsakligen av ämnesutveckling inom såväl teknologier (idag: halvledarelektronik) som programvaruteknik. En svaghet internationellt såväl som i Sverige är att relativt lite kopplingar finns mellan dessa ämnen. Betydelsen av att skapa bryggor mellan ämnena kommer att öka i betydelse i framtiden. Hot och möjligheter Sedan början av 2000-talet gjordes ett skifte i datorindustrin mot parallelldatorer (multicores) framtvingat av teknologibegränsningar. Antalet processorer på ett chip förväntas nu fördubblas vartannat år. För att kunna utnyttja beräkningsprestanda måste den mesta programvaran skrivas om. Detta är svårt och tidsödande. Det finns idag ingen framgångsrik metod för att med rimliga insatser anpassa programvaran till parallelldatorer om än stora forskningsresurser läggs ned på detta internationellt. Om framsteg dröjer kan det riskera att minska drivkraften inom hela det informationstekniska fältet och utgör därmed ett hot för informationsteknikens expansion. Halvledarelektronikens betydelse för datorer har byggt på möjligheten att miniatyrisera transistorer i enlighet med Moore s lag. Även om detta enligt teknikprognoser kan fortsätta ytterligare i 10 år kommer det till en ände (end-of-moore) med användandet av CMOSteknologi. Ännu tidigare kommer datorkonstruktörer att brottas med att finna sätt att minska effektutveckling och att tampas med transistorer vars egenskaper påverkas av kvantmekaniska fenomen. Detta kommer att skapa enorma utmaningar för datorarkitektur inom en 10- årsperiod. Ovanstående hot utgör samtidigt möjligheter. Vad avser de två teknikbarriärer som identifierats ovan teknologins påverkan på exekveringsmodeller (skiftet mot multicore) och exekveringsmodellens påverkan på teknologin finns intressanta möjligheter för tvärvetenskapliga utmaningar. Sverige är förhållandevis starkt inom materialvetenskap såväl som inom programvaruteknik. Genom att skapa broar mellan datorarkitektur och materialvetenskap skulle det finnas möjligheter att göra genombrott kring helt nya sätt att konstruera datorer. På samma sätt skulle problematiken kring parallellism kunna adresseras effektivare genom broar mellan datorarkitektur och relevanta grupperingar inom programvaruteknik. Forskningsinfrastruktur Forskningsmetodiken inom ämnet datorarkitektur är experimentell i sin natur. Modeller av datorsystem byggs upp antingen baserade på simulering eller på analytiska modeller. Analytiska modeller används med fördel i en tidig fas för att etablera om ett angreppssätt är meningsfullt. Senare i processen, då hög noggrannhet är av betydelse, utvecklas simuleringsmodeller av det tänkta objektet som kan modellera skeenden i datorsystemet till en noggrannhet ner till klockcykelnivå. Beräkningsprestanda för ett datorsystem etableras typiskt genom mätning av exekveringstiden för ett stort antal datortillämpningar på dessa simuleringsmodeller. Typiskt tar varje simulering ett dygn i anspråk. För en studie inom ämnet är det inte ovanligt att det behövs flera hundra simuleringar. Ämnet i sig har alltså behov av högpresterande datorer för att utföra den stora mängd simuleringar som krävs för att göra framsteg.

Tack och lov har ämnets behov av beräkningar kunnat mötas genom de beräkningskluster som Swedish National Infrastructure for Computing (SNIC) ställer till förfogande. Tyvärr ökar kraven för beräkningsprestanda i takt med att datorsystem innehåller allt fler subsystem. Moore s lag förutser exempelvis att antalet beräkningskärnor fördubblas vartannat år. Givet detta skulle man kunna tänka sig att teknikutvecklingen ger den prestandatillväxt som är nödvändig för områdets självförsörjning av prestanda. Dock har så inte visat sig fallet och detta har huvudsakligen sin grund i den redan nämnda svårigheten att utnyttja beräkningspotentialen hos parallelldatorer. Som en följd av detta har användningen av testriggar som består av specialbyggda datorsystem blivit allt vanligare. Inom en 5- till 10- årsperiod kommer det att behövas bygga upp speciella testriggar för att studera principer för implementering av nya datorarkitekturer, precis som är norm inom exempelvis experimentell fysik.