Výkonnost počítačů, empirické zákony o výkonnosti. INP 2008 FIT VUT v Brně

Podobné dokumenty
Architektura počítače

Kvantitativní principy návrhu počítačů

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Kvantitativní principy návrhu počítačů. doc. Ing. Róbert Lórencz, CSc.

Pohled do nitra mikroprocesoru Josef Horálek

Kvantitativní principy návrhu počítačů

OPS Paralelní systémy, seznam pojmů, klasifikace

Úvod do problematiky návrhu počítačových systémů. INP 2008 FIT VUT v Brně

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Úvod do architektur personálních počítačů

Paměťová hierarchie. INP 2008 FIT VUT v Brně

2.8 Procesory. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Architektura Intel Atom

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

Výkonnost mikroprocesoru ovlivňují nejvíce dvě hlediska - architektura mikroprocesoru a tzv. taktovací frekvence procesoru.

Paměťový podsystém počítače

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

Technické prostředky počítačové techniky

NSWI /2011 ZS. Principy cpypočítačůčů aoperačních systémů ARCHITEKTURA

Představení a vývoj architektur vektorových procesorů

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

Procesor. Hardware - komponenty počítačů Procesory

Základní deska (1) Označována také jako mainboard, motherboard. Deska plošného spoje tvořící základ celého počítače Zpravidla obsahuje:

PROCESOR. Typy procesorů

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Architektury CISC a RISC, uplatnění v personálních počítačích

Uspořádání cache pamětí procesorů historie a současný stav

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Architektury počítačů a procesorů

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Roman Výtisk, VYT027

Procesor. Procesor FPU ALU. Řadič mikrokód

Hardware - komponenty počítačů Von Neumannova koncepce počítače. Von Neumannova koncepce počítače

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Pokročilé architektury počítačů

Procesor Intel Pentium (1) Procesor Intel Pentium (3) Procesor Intel Pentium Pro (1) Procesor Intel Pentium (2)

Paměť počítače. 0 (neprochází proud) 1 (prochází proud)

Procesor EU peníze středním školám Didaktický učební materiál

Architektura procesoru ARM

Paměti cache. Cache může být realizována softwarově nebo hardwarově.

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

Hlavní využití počítačů

Identifikátor materiálu: ICT-1-08

Jak do počítače. aneb. Co je vlastně uvnitř

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Procesory, mikroprocesory, procesory na FPGA O. Novák, CIE 11 1

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Pojem architektura je převzat z jiného oboru lidské činnosti, než počítače.

Procesory. Autor: Kulhánek Zdeněk

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností a hlavnímu parametry.

Základní pojmy informačních technologií

HW počítače co se nalézá uvnitř počítačové skříně

Referát (pokročilé architektury počítačů)

Architektura počítačů Výkonnost počítačů

Struktura a architektura počítačů (BI-SAP) 11

PRINCIPY POČÍTAČŮ Metodický list číslo 1

Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje

PRINCIPY POČÍTAČŮ. Schopnost logického uvažování a rešeršní práce v prostředí Internetu.

Integrovaná střední škola, Sokolnice 496

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Principy počítačů a operačních systémů

Intel (2) Intel (1) Intel (3) Intel (4) Intel (6) Intel (5) Nezřetězené zpracování instrukcí:

Intel Itanium. Referát. Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Charakteristika dalších verzí procesorů v PC

Parametry pamětí vybavovací doba (tj. čas přístupu k záznamu v paměti) = 10 ns ms rychlost toku dat (tj. počet přenesených bitů za sekundu)

Témata profilové maturitní zkoušky

Pokročilé architektury počítačů

Architektura počítačů Výkonnost počítačů

PV109: Historie a vývojové trendy ve VT

Operační systémy. Přednáška 7: Správa paměti I

Paměti operační paměti

Operační paměti počítačů PC

Architektura počítačů

Kubatova Y36SAP procesor - control unit obvodový a mikroprogramový řadič RISC Y36SAP-control unit 1

Profilová část maturitní zkoušky 2017/2018

LOGICKÉ OBVODY X36LOB

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností, budoucností a hlavními parametry.

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Hardware ZÁKLADNÍ JEDNOTKA

SKŘÍŇ PC. Základní součástí počítačové sestavy je skříň.

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

Výstavba PC. Vývoj trhu osobních počítačů

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

ARCHITEKTURA PROCESORŮ

Témata profilové maturitní zkoušky

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading)

Blue Gene Vysoká škola báňská-technická univerzita Ostrava. Blue Gene. Karel Chrastina. Úvod. Blue Gene L. Blue Gene P.

2) Registry Velmi rychlé paměťové místo malé kapacity (jednotky bytů) umístěné většinou uvnitř procesoru počítače.

PROCESOR. Rozdělení procesorů

Témata profilové maturitní zkoušky

Úvod do informačních technologií

Pokročilé architektury počítačů

Transkript:

Výkonnost počítačů, empirické zákony o výkonnosti INP 2008 FIT VUT v Brně 1

Moorův zákon Gordon Moore (Fairchild Semicondutor) si v r. 1965 všiml, že počet tranzistorů na čipu procesoru se vždy za 18 až 24 měsíců přibližně zdvojnásobí. Platí to dodnes a zdá se, že ještě několik let bude No of T s 1 mld 100 m 10 m 1 m 100 k 10 k 8086 80286 I 486 I 386 Pentium II Pentium Pro Pentium Alpha 221464 Pentium 4 1000 1975 1980 1985 1990 1995 2000 2005 2010 Year 2

Intel Penryn, dvoujádrový procesor - 410 mil. tranzistorů na čipu Čtyřjádrová verze - 820 mil. tranzistorů na čipu. Technologie: 45 nm, umožněno vytvořením nového typu tranzistoru Zdroj: IEEE Spectrum 11/2007 3

CPU Historický vývoj parametrů (1) 1980 1985 1990 1995 2000 2005 2005:1980 processor 8080 286 386 Pentium P-III P-4 clock rate(mhz) 1 6 20 150 750 3000 3000 cycle time(ns) 1000 166 50 6 1.3 0.3 3333 SRAM metric 1980 1985 1990 1995 2000 2005 2005:1980 $/MB 19200 2900 320 256 100 75 256 access (ns) 300 150 35 15 12 10 30 DRAM metric 1980 1985 1990 1995 2000 2005 2005:1980 $/MB 8000 880 100 30 1 0.20 40000 access (ns) 375 200 100 70 60 50 8 typical size(mb) 0.064 0.256 4 16 64 1000 15000 Disk metric 1980 1985 1990 1995 2000 2005 2005:1980 $/MB 500 100 8 0.30 0.05 0.001 10000 access (ms) 87 75 28 10 8 4 22 typical size(mb) 1 10 160 1000 9000 400000 400000 4

Historický vývoj parametrů (2) 5

Dlouhodobé pozorování: nárůst kapacity a rychlosti Kapacita Rychlost (1/latence) Logika: 2x za 3 roky 2x za 3 roky DRAM: 4x za 3 roky 2x za 10 let Disk: 4x za 3 roky 2x za 10 let 6

1000 100 10 1 Rozdíl mezi výkonností CPU a paměti Moorův zákon CPU CPU 60% za rok (2X/1.5roku) Rozdíl ve výkonnosti roste o 50% za rok! DRAM DRAM 9%/rok (2X/10let) 7 výkonnost 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000

Lokalita odkazů (1) Analýzou napsaného programu zjistíme tzv. statickou četnost jednotlivých instrukcí. K naprosto odlišným výsledkům dojdeme sledováním četnosti instrukcí během provedení programu, tj. dynamické četnosti. V programu se opakovaně provádějí instrukce uvnitř cyklů, procedur apod., takže docházíme k empirickému poznatku, že v programech je zřejmá tendence používat znovu ty instrukce (a ta data), které již byly jednou, nebo vícekrát použity. Velmi zhruba platí, že procesor stráví 90% svého času prováděním pouze 10% ze všech instrukcí programu (tzv. pravidlo 90/10). 8

Lokalita odkazů (2) Časová lokalita odkazů znamená, že pokud procesor použil v jistém okamžiku určitou instrukci, pak pravděpodobnost, že ji v dalším okamžiku bude provádět znovu je větší, než je pravděpodobnost použití instrukce, kterou dosud nepoužil. Prostorová lokalita odkazů se vyjadřuje pravidlem, že pokud bral program v poslední době instrukce z jistého bloku paměti, pak je velká pravděpodobnost, že v následující době bude brát instrukce zase z tohoto bloku. Princip časové a prostorové lokality odkazů platí i pro data, ovšem v daleko menší míře. Přesné údaje o lokalitě odkazů se mění podle konkrétního programu, na němž měření četnosti probíhá. 9

Rychlá vyrovnávací paměť cache Na základě zjištěné zákonitosti o lokalitě odkazů bylo modifikováno schéma von Neumannovského počítače doplněním rychlé vyrovnávací paměti RVP (cache) mezi procesor a paměť M. Můžeme proto již mluvit o hierarchii pamětí, protože nejblíže procesoru jsou jeho vnitřní registry, což je vlastně paměť na nejnižší úrovni, další úroveň je tvořena blokem RVP, pomocí paměťové sběrnice je umožněn přístup do třetí paměťové úrovně, tedy do paměti M, a čtvrtá, nejvzdálenější je vnější paměť (disk). CPU (registry) RVP (cache) paměťová sběrnice HLAVNÍ PAMĚŤ M V/V sběrnice VNĚJŠÍ PAMĚŤ V této struktuře se již strojové cykly CPU nesynchronizují s cykly hlavní paměti M, nýbrž s RVP. Díky lokalitě odkazů může být kapacita RVP výrazně menší, než kapacita M a tudíž mohou být použity rychlejší a dražší paměťové obvody. 10

Amdahlův zákon o urychlení výpočtu Amdahlův vztah hodnotí urychlení činnosti systému zavedením rychlejšího zpracování části úlohy. Doby provedení výpočtu před a po úpravě si označíme jako t e stará a t e nová, poměrnou velikost úseku zpracování, jehož se týká urychlení, označíme číslem f, f < 1, a koeficient urychlení označíme r, pak t e nová = t e stará ((1 - f) + f/r) a celkové urychlení V r je rovno te stará = 1 1 -f f V r V r = t e stará / t e nová = 1 / ((1 - f) + f/r) 1 - f f/r te nová 11

Zrychlení jako funkce f, r = konst. Př. Jakého urychlení dosáhneme, pokud vložíme do počítače RVP, která je 5x rychlejší než hlavní paměť a je využita v 90% případů? 6 5 4 vr 3 2 f=0.9, r=5, Vr =3.57 1 0 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 f 12

Definice výkonnosti počítače Výkonnost počítače se posuzuje několika způsoby. Z hlediska uživatele je základním výkonovým ukazatelem doba (provedení) výpočtu, označovaná t e (execution time). Z hlediska provozovatele systému, který poskytuje služby uživatelům, je hlavním parametrem výkonnosti propustnost systému P e, tedy počet transakcí, které je systém schopen uskutečnit za časovou jednotky. Absolutní měření výkonnosti je velmi problematické. Schůdnější je hodnotit výkonnost relativně, tj. vzhledem k referenčnímu počítači, jako např. PC XT 4,7 MHz, nebo VAX-11/780. Je-li výkonnější počítač označen X a méně výkonný Y, lze pro poměr jejich výkonností (propustností) P e a dob výpočtu t e psát P ex /P ey = t ey /t ex = 100 + n a říkáme "počítač X je o n % výkonnější než počítač Y", nebo "počítač Y má o n % delší dobu výpočtu než X". 13

Měření výkonnosti Převážnáčást počítačů je zkonstruovaná s využitím konstantního hodinového kmitočtu f C. Docházíme tak ke konstantní době cyklu T C =1/ f C, např. 10 ns. Doba výpočtu: t e = Počet hodinových cyklů během programu x T C (1) Můžeme spočítat počet provedených instrukcí programu Počet I a určit důležitý parametr procesoru - počet cyklů na provedení jedné instrukce CPI - Cycles Per Instruction. CPI = Počet hodinových cyklů během programu / Počet I (2) tedy Počet hod. c. během prog. = CPI x Počet I (3) Po dosazení (3) do rovnice (1) dostaneme t e = Počet I x CPI x T C (4) Počet instrukcí v programu je dán řešenou úlohou a je ovlivněn architekturou instrukčního souboru (Instruction Set Architecture - ISA) a technologií kompilátoru, parametr CPI je dán architekturou ISA, a T C je dána použitou obvodovou technologií a organizací obvodů počítače. 14

Měření výkonnosti v jednotkách MIPS Alternativou k době provedení je počet operací provedených za sekundu, udávaný pro současné počítače v jednotkách MIPS. P MIPS = Počet I / (t e x 10 6 ) = f c / ( CPI x 10 6 ) (5) Pozn.: Poslední výraz byl získán pomocí vztahu t e = ( Počet I x CPI ) / f c (6) Výhodou této definice je její jednoduchost, ale její použití pro srovnávání výkonnosti počítačů se sebou nese některé problémy. Např. P MIPS je závislý na instrukčním souboru, takže je problematické srovnávat počítače s různými instrukčními soubory. 15

Měření výkonnosti v jednotkách MIPS Řešením by mohlo být definovat výkonnost relativně vzhledem k referenčnímu počítači, a pracovat s relativním P MIPS. Relativní P MIPS = ( t e ref. počítače x P MIPS ref. počítače ) / t e měř. počítače P MIPS ref. počítače je dohodnutéčíslo. Od r. 1980 se značně rozšířilo uznání počítače VAX - 11/780 za referenční počítač, který byl označen za "1 MIPS" stroj. Od r. 1995 byl nahrazen počítačem SUN SPARCstation 10/40. Rovněž v kategorii osobních počítačů je zvykem udávat výkonnost relativně vzhledem k referenčnímu počítači, např. P100, Pentium 1GHz atd. Je otázka, zda by na starším referenčním počítači měla běžet poslední verze kompilátoru a operačního systému, nebo zda je třeba stav programového vybavení referenčního počítače zakonzervovat a nepřipustit, aby se měnilo a zdokonalovalo. Je rovněž lákavé použít pro zjištění relativního P MIPS jako měřicího programu jednu zkušební úlohu, přesto, že by docházelo ke značným odchylkám v relativní výkonnosti. Rovněž relativní P MIPS není příliš objektivní. 16

Měření v jednotkách MFLOPS Pro počítače s jednotkou pro práci s čísly s pohyblivou řádovou čárkou (FP) se udává výkonnost v počtu operací s pohyblivou řádovou čárkou (FLOPS). P MFLOPS = Počet FP operací / ( t e x 10 6 ) Zde opět záleží na počítači a na programu. Problém je, že instrukční soubory FP nejsou u všech počítačů stejné. Např. počítač Cray - 2 nemá FP dělení a jeho porovnání např. s procesorem Motorola 68 882, který má FP dělení, odmocninu, sin, cos atd. je pak nekorektní. Složitost FP operací je různá. Operace sčítání je značně rychlejší, než operace dělení. Program se 100% operací sčítání pak zjistí vyšší výkonnost než program se 100% operací dělení. Aby parametr P MFLOPS tyto rozdíly správně zachytil, byly definovány kanonické počty FP operací ve zkušebním programu. Každá operace FP se pak ohodnotí vahou, která representuje její složitost a dostaneme parametr normalizovaný P MFLOPS. Váhy FP operací podle Livermore Loops ADD, SUB, CMP, MPY 1 DIV, SQRT 4 EXP, SIN 8 17

Programy pro hodnocení výkonnosti Metodika měření výkonnosti je značně rozsáhlá a složitá a neustále se vyvíjí. 1. Reálné programy nejobjektivnější metoda. Nakupované programové produkty pro řešení konkrétních úloh uživatele, jako kompilátor C, textový editor, návrhový systém pro automatizovaný návrh logických obvodů. 2. Jádra (kernels) - nejvýznamnějšíčásti skutečných programů, jako např. Livermore Loops a Linpack. Samy o sobě v reálném provozu nikdy neběží. Nejlépe se hodí k vyhodnocení jistého rysu počítače a k vysvětlení rozdílů v chování reálných programů. 3. Demonstrační zkušební úlohy (toy benchmarks) - typicky 10 až 100 řádků programu, slouží k populární demonstraci výkonnosti počítače. Např. Quicksort, Erastothenovo síto, různé skládačky (puzzles) ap. 4. Syntetické zkušební úlohy (synthetic benchmarks) - mají obdobnou filosofii jako jádra, snaží se vystihnout průměrné frekvence operací a dat na rozsáhlých množinách programů. Z historie jsou známé instrukční mixy, jako GPO-WU II (General Post Office - Work Unit II), Gibson mix, Norton index pro osobní počítače, Landmark atd. U nás byla pro hodnocení výkonnosti počítačů zavedena norma ČSN 36 9306, která používala pro počítače v oblasti vědeckotechnických výpočtů mix Gibson III a pro plánovací a ekonomické úlohy mix GPO-WU II. V minulosti bylo nejrozšířenější použití benchmarků, jako Whetstone benchmark s převahou operací v pohyblivé řádové čárce a Dhrystone benchmark s převahou operací v pevnéřádovéčárce. 18

SPEC Nejdokonalejší jsou série reálných benchmarků SPEC (System Performance Evaluation Cooperative): SPEC89, SPEC92, SPEC95 a SPEC2000 Skupiny měřicích programů se neustále mění tak, aby se objektivizovalo měření a pokrývaly se moderní aplikace SPECint pro operace s pevnou řádovou čárkou nyní 12 programů, jako komprese dat, rozmisťování a propojování obvodů FPGA, compilátor jazyka C, šachy, textový editor, vizualizace, objektová databáze atd. SPECfp pro operace s pohyblivou řádovou čárkou nyní 14 programů, jako 3D grafická knihovna, modelování mělké vody, neuronová síť pro rozpoznávání obrazů, simulace šíření seizmické vlny, zpracování a rozpoznávání obrazu lidské tváře, teorie čísel - testování prvočíselnosti, šíření znečištění atmosférou atd. Pro každou úlohu se zjistí relativní doba výpočtu (vzhledem k referenčnímu počítači). Ve skupinách int, fp se pak odděleně vypočte tzv. geometrický průměr, což je n-tá odmocnina ze součinu n relativních dob provedení. Výsledkem jsou dva výkonové parametry SPECint a SPECfp. 19