TKT-3201 Tietokonearkkitehtuuri 2. Luku 1: Tietokoneen abstraktiot ja tekniikka



Samankaltaiset tiedostot
Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Käyttöjärjestelmien historia. Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

Tietojenkäsittelyn historiaa

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

4. Lausekielinen ohjelmointi 4.1

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

Käyttöjärjestelmän rakenne

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

52480S TIETOKEARKKITEHTUURIT Tentti

Ongelma(t): Mihin perustuu tietokoneiden suorituskyky ja sen jatkuva kasvu? Mitkä tekijät rajoittavat suorituskyvyn parantamista ja mitkä niistä ovat

Suunnitteluautomaatio

Tietokonearkkitehtuuri 2 TKT-3201 (5 op)

Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

Käyttöjärjestelmät. Teemu Saarelainen Tietotekniikka

Ongelma(t): Mihin perustuu tietokoneiden suorituskyky ja sen jatkuva kasvu? Mitkä tekijät rajoittavat suorituskyvyn parantamista ja mitkä niistä ovat

Sulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä.

Virtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest).

TIES325 Tietokonejärjestelmä. Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos

Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

Ohjelmistoradio. Mikä se on:

Ohjelmointi 1. Kumppanit

Luento 0: Kurssihallinto Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Agenda. Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu ohjelmointi

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää

Teemun juustokakku Rekisterien, välimuistin, muistin, levymuistin ja magneettinauhan nopeudet suhteutettuna juuston hakuaikaan juustokakkua tehdessä?

Käyttöjärjestelmät: prosessit

Tietokoneen muisti nyt ja tulevaisuudessa. Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

POWER analytiikka-alustana

Intel Pentium Pro -prosessori. tietokonearkkitehtuurit, syksy -96 Ari Rantanen

CUDA. Moniydinohjelmointi Mikko Honkonen

Signaalien datamuunnokset. Näytteenotto ja pito -piirit

Virtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group

Kertausluento luennoista 1-3 1

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. FT Ari Viinikainen

Työasema- ja palvelinarkkitehtuurit (IC130301) Apumuistit. Kiintolevyt. 5 opintopistettä. Petri Nuutinen

11/20: Konepelti auki

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla

1. Keskusyksikön rakenne

Teemu Kerola Orientointi Syksy 2018

Tietokoneen toiminta (Computer Organization I)

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Älykännykät ovat pieneen tilaan paketoituja, mutta suuret ominaisuudet omaavia tietokoneita.

Tähtitieteen käytännön menetelmiä Kevät 2009

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I) Tavoitteet (4) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia

Backup Exec 3600 Appliance

Tietokoneen toiminta, K Tavoitteet (4)

Algoritmit 1. Luento 3 Ti Timo Männikkö

Kertausluento 1 (lu01, lu02, lu03) Tietokonejärjestelmän rakenne ttk-91 ja sillä ohjelmointi

Tietokoneen toiminta, Kevät Copyright Teemu Kerola Järjestelmän eri tasot Laitteiston nopeus

Tietokoneen rakenne: Harjoitustyö. Motorola MC prosessori

Tietokoneen toiminta (Computer Organization I) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia. Aihepiiri.

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

PC-tietokoneen kokoaminen. Osien valinta

Tietokoneen toiminta (Computer Organization I)

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely)

Moderneissa grafiikkakorteissa hyödynnetään myös samanlaista toimintamallia

Linux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

MP3 Manager Software for Sony Network Walkman

BL40A1810 & BL40A1820 Mikroprosessorit A/B. Luento 1: Johdanto kurssin aihepiiriin

2. Sulautettu järjestelmä ja mikro-ohjain , pva

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Chapel. TIE Ryhmä 91. Joonas Eloranta Lari Valtonen

4. Lausekielinen ohjelmointi 4.1

Tietokoneen toiminta (Computer Organization I)

Rinnakkaistietokoneet luento S

Referenssit ja näytteenotto VLBI -interferometriassa

CT50A2602 Käyttöjärjestelmät Seminaarityö. Tietokoneen muisti nyt ja tulevaisuudessa

Laiteläheinen C-kieli, yleistä

TIES325 Tietokonejärjestelmä. Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos

Älysopimusten kehittäminen. Sopimus suuntautunut ohjelmointi

Työasema- ja palvelinarkkitehtuurit IC Tallennusjärjestelmät. Tallennusjärjestelmät. 5 opintopistettä.

Raspberry Pi. Yhden piirilevyn tietokone. Tässä dokumentissa kerrotaan yleistä tietoa Rasberry Pi- tietokoneesta ja. sen toiminnoista.

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I) Aihepiiri. Mitä hyötyä tästä on? (3) Tavoitteet. Kurssien välisiä riippuvuuksia

Tietokoneen toiminta (Computer Organization I)

Tietotekniikan kaupallistuminen (USA) Tommi Kärkkäinen (Ceruzzi ss )

TIES530 - Sulautettujen järjestelmien arkkitehtuurit. Jukka Ihalainen, Tietoliikennelaboratorio,

JAVA on ohjelmointikieli, mikä on kieliopiltaan hyvin samankaltainen, jopa identtinen mm. C++

Transkriptio:

TKT-3201 Tietokonearkkitehtuuri 2 Luku 1: Tietokoneen abstraktiot ja tekniikka

#2 Tietokone Henkilökohtainen tietokone (Personal Computer, Desktop, Laptop) Suunniteltu tuottamaan hyvä suorituskyky yhdelle käyttäjälle huokeaan hintaan yleensä käyttäen kolmannen osapuolen ohjelmistoja Palvelin (Server) Ajetaan laajempia ohjelmistoja useamman samanaikaisen käyttäjän kesken. Käyttö verkon kautta. Painotus luetettavuudessa ja turvallisuudessa Supertietokone (Supercomputer) Tehokas ja kallis palvein kostuen sadoista tai tuhansista prosessoreista, useista teratavuista muistia, petatavuista tallennuskapasiteettia. Käyttö tieteelliseen laskentaan ja tekniikan sovelluksiin Sulautettu tietokone (Embedded Computer) Laitteen sisässä oleva tietokone, joka tyypillisesti suorittaa etukäteen määrättyä sovellusta

#3 Tietokone

#4 Prosessorimarkkinoista

Sulautetut prosessorit Suurin tietokonetejärjestelmien luokka Laajimmat sovellusalueet Usein minimaaliset suorituskykyvaatimukset Tiukat kustannusrajoitteet Tiukat tehonkulutusrajoitteet Usein sovellukset eivät kestä vikaantumista tai virheitä #5

Ohjelman sisältö sovellusohjelmisto järjestelmäohjelmisto #6 Järjestelmäohjelmisto (System Software) laitteisto Käyttöjärjestelmä (Operating System) hallinnoiva ohjelmisto, joka liittää käyttäjän ohjelman laitteistoon (esim. Linux, Windows, MacOS) Huolehtii perusrutiineista tiedon syöttöön ja tulostamiseen Allokoi muistia ja tallennusresursseja Suojaa useamman sovelluksen suorituksen Kääntäjä muuttaa korkeamman tason kielellä kirjoitetun ohjelman (esim. C, Java) laitteistolla suoritettaviksi konekäskyiksi

Ohjelma Menemällä syvemmälle paljastuu yksityiskohtaisempaa tietoa Abstrahointi kätkee yksityiskohtia One-to-many One-to-one #7

Korkeantason ohjelmointikielet Sallivat ohjelmoijan ohjelmoida luonnollisemmalla kielellä kyseiselle käyttötarkoitukselle Fortran tieteelliseen ohjelmointiin, Cobol kaupallisiin sovelluksiin, Java web-ohjelmointiin, jne Parantaa ohjelmoijan tuottavuutta, koska helpompi ymmärtää Koodi on helpompaa ylläpitää, tarkistaa ja debugata Ohjelma on riippumaton kohdeprosesorista kääntäjät ja assemblerit muuntavat koodin eri koneille Nykyään tehdään hyvin vähän assembly-tason ohjelmointia Kaikkein kriittisimmät osat silti assembly-koodia Assemblyn osaaminen auttaa ymmärtämään prosessorin toimintaa tarkemmin ja helpottaa tiettyjen vikojen selvittämistä #8

Tietokoneen pellin alla: Esim. 3. Esim. 2. 1. Esim. 4. 5. Esim. #9

Prosessorin perusosat Datapolku ja ohjaus = prosessori (CPU, Central Processing Unit) Koostuvat jopa sadoista miljoonista transistoreista Mahdotonta ymmärtää niiden toiminta tarkastelemalla yksittäisiä transistoreita tai edes logiikkaportteja Tarvitaan abstrahointia #10

AMD Barcelona 4 prosessoriydintä #11

Tallennetun ohjelman konsepti Käskyt ovat bittejä Ohjelmat tallennetaan muistiin luettavaksi tai kirjoitettavaksi kuten data toiminnot laske seuraava Prosessori käsky osoite Muisti Muisti datalle, ohjelmille, kääntäjille, editoreille jne. käskynhaku & suoritus (Fetch & Execute) toistuu loputtomasti Käskyt noudetaan ja laitetaan tiettyyn rekisteriin Bitit rekisterissä ohjaavat tulevia toimintoja #12

Käskykanta (prosessoriarkkitehtuuri) instruction-set architecture (ISA) Erittäin tärkeä abstraktiotaso rajapinta laitteiston ja alimman tason ohjelmiston välillä kuvaa käytettävissä olevat käskyt, rekisterit, muistiviittaukset, I/O, jne. ohjelmoijan näkymä prosessorista hyöty: eri toteutuksia samasta arkkitehtuurista haitta: estää joskus käyttämästä uusia innovaatioita käskykanta-arkkitehtuureja: x86, IA-64, AMD64, IA- 32, PowerPC, MIPS, SPARC, ARM, etc. Totta vai tarua: Binääriyhteensopivuus on tärkeää? Erittäin tärkeää PC-ympäristössä, vähemmän tärkeää sulautetuissa järjestelmissä #13

Alkutaival ENIAC rakennettiin toisen maailmansodan aikana ja se on yksi ensimmäisistä yleiskäyttöistä elektronista tietokoneista Tehtiin tykistön ballistiikkalaskelmia varten Käsitteli 10-kantaisia lukuja Lähes 30m pitkä Noin 18 000 radioputkea Pystyi suorittamaan sekunnissa 5 000 yhteenlaskua, 357 kertolaskua, tai 38 jakolaskua #14

Tallennusmediat ENIAC ohjelmoitiin nappuloita vääntelemällä Myöhemmin käytettiin kaukokirjoitinta (l. telexiä), mikä oli hieman elegantimpaa engl. teletype (tty) Ohjelmat ja data talletettiin mekaanisesti Reikäkortit ja reikänauha Magneettinen tallennus Nauha ja levy Optinen tallennus CD-ROM / DVD #15

Ensimmäiset kaupalliset tietokoneet Howard Aikenin ennusti vuonna 1947, että USA:ssa on tarvetta 6 tietokoneelle UNIVAC oli ensimmäinen massatuoteena valmistettu (1950-luvulla) ja sitä myytiin joitakin satoja kappleita IBM hallitsi markkinoita 1960-luvulla Esim. System/360 Varhaiset supertietokoneet ilmaantuivat 1960-luvulla Control Data Corporation CDC 6600 (1964) Cray Research Cray-1 (1976) Minitietokoneet ilmaantuivat 1960- ja1970- luvuilla Digital Equipment Corporation PDP, 1960- Digital Equipment Corporation VAX (11/780) 1978- Vas. Kuva. Ferriittrenkaisiin perustuva RAM-muisti (engl. magnetic core memory ja sieltä juontuu ilmaus core dumped ) Entäpä debug? #16

Mikroprosessorit Ensimmäinen yhdellä piirillä toteutettu mikroprosessori oli Intel 4004, 1971 2300 transistoria Kellotaajuus 108 khz Sitä seurasivat 8008 ja 8080 Ensimmäinen hlö-kohtainen tietokone MITS Altair 1975 Myytiin rakennussarjana Ja niitä 8086, 8088, 80186, 80286 IBM PC 1981 (suorittimena 8088) Ja niitä seurasivat Altair Intel 4004 IBM PC #17

Teknologiatrendit: Mooren laki Puolijohdepiirin transistorien lukumäärä tuplaantuu joka 18. kuukausi Laki viittaa transistorien määrään, myöhemmin muutettu viittaamaan suorituskykyyn Mitä Moore itseasiassa ennusti v. 1965? Integroitujen piirien kehitys on seurannut Mooren lakia Kuva alkup. julkaisusta: yksittäisen transistorin kustannus ftp://download.intel.com/research/silicon/moorespaper.pdf Kuva alla: esim. Intelin suorittimien transistorimäärä #18

Teknologiatrendit DRAM-kapasiteetti nelinkertaistunut 3 vuoden välein DRAM capacity Year Technology Relative performance/cost 1951 Vacuum tube 1 1965 Transistor 35 1975 Integrated circuit (IC) 900 1995 Very large scale IC (VLSI) 2,400,000 2005 Ultra large scale IC 6,200,000,000 #19

#20 Ray Kurtzweil, Kurzwail Tech., Inc.

IC-teknologia Tällä hetkellä prosessoreita tuotetaan 45nm transistoriteknologialla: Neulan päähän saa sijoitettua 30 miljoonaa transistoria Ihmisen hiuksen leveydelle voi sijoittaa 2000 transistoria Jos auton hinta olisi laskenut samalla nopeudella kuin transistorin hinta vuodesta 1968, niin auto maksaisi nyt noin 0.01 International Technology Roadmap for Semiconductors Vuosi 2004 2006 2008 2010 2012 Viivanleveys 90nm 65nm 45nm 32nm 22nm Integrointiaste, Biljoonaa transistoria 2 4 6 16 32 #21

Suorituskyky Millä lentokoneella on paras suorituskyky? #22

Vasteaika ja läpäisy Vasteaika (Response time) Kuinka kauan tehtävän suoritus kestää Läpäisy (Throughput) Aikayksikössä tehty kokonaistyö Esim. tehtävät/transaktiot/ per tunti Miten vastaika ja läpäisy muuttuvat, jos prosessori korvataan nopeammalla prosesorilla? lisätään prosessoreiden määrää? #23

Suhteellinen suorituskyky Performance = 1/Execution Time X on n kertaa nopeampi kuin Y Performance Performance X Y = Execution time Y Execution time X = n Esimerkki: ohjelman suoritukseen menee 10s koneella A, 15s koneella B Execution Time B / Execution Time A = 15s / 10s = 1.5 A on 1.5 kertaa nopeampi kuin B #24

Suoritusajan mittaaminen Kulunut aika (Elapsed time) Kokonaisvasteaika sisältäen kaikki toiminnan viiveet Prosessointi, I/O, käyttöjärjeslmäkuorma, joutoaika Määrittää järjestelmän suorituskyvyn CPU-aika (CPU time) Annetun työn prosessointiin kuluva aika vähennetään I/O-aika, muiden töiden kuluttama aika koostuu käyttäjän CPU-ajasta ja järjestelmän kuluttumasta CPU-ajasta CPU-suorituskyky ja järjestelmän suorituskyky vaikuttavat erilaisiin ohjelmiin erilailla #25

CPU-kello Digitaalisen laitteen toimintaa ohjataan vakiotaajuisella kellosignaalilla Clock (cycles) Data transfer and computation Update state Clock period Kellojakso (clock period) esim. 250ps = 0.25ns = 250 10 12 s #26 Kellotaajuus: Clock frequency (rate): jaksoa sekunnissa esim. 4.0GHz = 4000MHz = 4.0 10 9 Hz

CPU-aika CPU Time = CPU Clock Cycles Clock Cycle Time = CPU Clock Cycles Clock Rate Suorituskyky paranee Kellojaksojen määrän pienentyessä Kellotaajuuden kasvaessa Laitteiston suunnittelussa joudutaan tekemään kompromissejä kellojaksojen lukumäärän ja kellotaajuuden välillä #27

CPU-aika kone A: 2GHz kello, 10s CPU-aika Suunnitellaan kone B Tavoite: 6s CPU-aika Voidaan kellottaa nopeammin, mutta vaatii1.2 kellojaksoja Kuinka nopean koneen B on oltava? Clock Rate B = Clock Cycles CPU Time B B = 1.2 Clock Cycles 6s A Clock Cycles A = CPU Time A Clock Rate A = 10s 2GHz = 20 10 9 Clock Rate B = 1.2 20 10 6s 9 = 24 10 6s 9 = 4GHz #28

Käskyjen lukumäärä ja CPI Clock Cycles = Instruction Count Cycles per Instruction CPU Time = Instruction Count CPI Clock Cycle Time = Instruction Count Clock Rate CPI Ohjelman käskyjen lukumäärä Määräytyy ohjelmasta, kääntäjästä ja arkkitehturista (ISA) Keskimääräinen jaksojen määrä per käsky (cycles per instruction) Määräytyy CPU:n laitteiston perusteella Eri käskyillä voi olla erilainen CPI #29

CPI Esimerkki Kone A: kellojakso = 250ps, CPI = 2.0 Kone B: kellojakso = 500ps, CPI = 1.2 Kummassakin sama arkkitehtuuri (ISA) Kumpi on nopeampi? Kuinka paljon? CPU Time A CPU Time B CPU Time B CPU Time A = Instruction Count CPI A = I 2.0 250ps = I 500ps = Instruction Count CPI B = I 1.2 500ps = I 600ps I 600ps = I 500ps = 1.2 Cycle Time A Cycle Time B #30

CPI Jos eri käskyillä erilainen CPI Clock Cycles = n i= 1 (CPIi Instruction Counti) keskimääräinen painotettu CPI CPI = Clock Cycles Instruction Count = n i= 1 CPI i Instruction Counti Instruction Count Suhteellinen frekvenssi #31

CPI Esimerkki Vaihtoehtoisia käännettyjä koodisekvenssejä käyttäen käskyluokkia A, B, C luokka A B C Luokan CPI 1 2 3 Käskyjen määrä (IC): sekvenssi 1 2 1 2 Käskyjen määrä (IC): sekvenssi 2 4 1 1 Sekvenssi 1: IC = 5 kellojaksot = 2 1 + 1 2 + 2 3 = 10 Avg. CPI = 10/5 = 2.0 Sekvenssi 2: IC = 6 kellojaksot = 4 1 + 1 2 + 1 3 = 9 Avg. CPI = 9/6 = 1.5 #32

Suorituskyky: Yhteenveto Instructions Clock cycles CPU Time = Program Instruction Seconds Clock cycle Suorituskyky riippuu Algoritmista, vaikutus: IC, mahdollisesti CPI Ohjelmointikieli, vaikuttaa: IC, CPI Kääntäjä, vaikuttaa: IC, CPI Käskykanta, vaikuttaa: IC, CPI, T c (kellojakso) #33

CMOS-teknologia Tehoa kulutetaan ainoastaan signaaliransitiossa Transistorikytkimen muuttaessa tilaa on lyhyt aika, jolloin molemmat transistorit ovat johtavassa tilassa ja virta kulkee kytkimien läpi +V DD v O +V DD Q 1 OFF v I Q 2 Q 1 PMOS load v O NMOS driver Q 1 and Q 2 conducting V TH Q 2 OFF v I +V DD #34

Tehonkulutustrendi CMOS-IC-teknologiassa: Power = Capacitive load Voltage 2 Frequency 30 5V 1V 1000 #35

Tehonkulutustrendit IC-teknologian viivanleveyden pienentyessä, transistorien vuotovirrat kasvaneet merkittävästi I=vuotovirta Lämpötehoa tuotetaan yhä suuremmat määrät entistä pienemmällä alueella Tehotiheys on kasvanut niin korkeaksi, ettei lämpöä pystytä siirtämään piilastusta kustannustehokkaasti Lämpöseinä kellotaajuutta ei voida enää kasvattaa #36

Tehonkulutuksen pienentäminen Oletetaan, että uudessa CPU:ssa Kapasitanssikuorma on 85% vanhasta 15% pienempi käyttöjännite ja 15% pienempi kellotaajuus 2 Cold 0.85 (Vold 0.85) Fold 0.85 = = 0.85 2 P C V F Pnew 4 = old old old old 0.52 #37

Prosessorin suorituskyvyn kehitys rajoitteena tehonkulutus, käskytason rinnakkaisuus, muistin latenssi #38

IC-piirien valmistus Saanto (Yield): toimivien piisirujen osuus kaikista piikiekon siruista #39

AMD Opteron X2 Wafer X2: 300mm wafer, 117 chips, 90nm technology X4: 45nm technology #40

IC-piirin kustannus Cost per die = Cost per wafer Dies per wafer Yield Dies per wafer Wafer area Die area Yield = (1+ (Defects per 1 area Die area/2)) 2 Pinta-alalla ja vikatiheydellä epälineaarinen suhde Kiekon kustannus ja pinta-ala ovat kiinteitä Vikatiheys määräytyy valmistusprosessista Piilastun ala määräytyy arkkitehtuurista ja toteutuksesta #41

Tehonkulutus & joutokäynti AMD X4 tehonkulutus 100%-kuormaalla 295W 50%-kuormalla 246W (83%) 10%-kuormalla 180W (61%) Google data center Palvelin toimii keskimäärin 10% 50% kuormalla 100% kuorma harvemmin kuin 1% ajasta Prosessorin tehonkulutuksen pitäisi olla riippuvainen kuormasta #42

MIPS suorituskyvyn mittarina MIPS: Millions of Instructions Per Second Ei ota huomioon eroja koneiden käskykannassa käskyjen välisiä eroja #43 MIPS = = Instruction count Execution time 10 Instruction count Instruction count CPI 10 Clock rate 6 6 = Clock rate 6 CPI 10 CPI voi olla erilainen samassa CPU:ssa ajettaessa eri ohjelmia