Alternativy, Budoucnost aneb Kam směřuje další vývoj IA039 - poslední přednáška 1 Koprocesory • Jak získat vyšší výkon, když (general purpose) procesor nestačí? - Obecně paralelizací • Doposud jsme mluvili o homogenní paralelizací - Hyperthreading, více jader, paralelní počítače • Alternativou jsou ale heterogenní architektury - Použití koprocesorů - Nemají charakter general purpose, díky tomu mohou zvládat určité typy výpočtů mnohem efektivněji • Známe z historie v podobě numerických koprocesorů (80387) • Rozdílné přístupy - Grafické koprocesory (Cuda/Tesla architektura firmy NVidia) - ClearSpeed - IBM Cell - FPGA (programovatelný hardware, programování „in silico") 2 IBM CELL Společný projekt Sony, IBM, Toshiba 1 Power Processor Element, 8 Synergistic Proc. Elems Dual "configurable" High speed I/O channels (76.8 GBytes per second in total) Cell Processor Architecture r Power Processor Element (PPE) (64 bit PowerPC with VMX) I/O Controller I/O Controller H SPE1 SPE2 SPE3 SPE4 EIB ^_ Memory L^^™ Controller ľ Memory Controller SPE5 SPE6 ] SPE7 SPE8 D RAM RAM Dual 12.8 GByte per second memory busses give Cell huge memory bandwidth. (25.« GBytes per second In total] ) Nicholas Blachtord 2005 > EIB (Element Interconnect Bus) is the internal communication system. FPGA Programovatelná hradlová pole Jednodušší návrh, běží na nižších frekvencích Programovatelnost - pogramování "in silico" - FPGA se rekonfiguruje pro konkrétní algoritmus: - Circuit diagram v HDL (Hardware Description Language) - Následná konfigurace obvodů (může být časově náročnější) Hybridní architektury - Xilinx - kompletní systém, embedded procesor, (PowerPC) + FPGA - Mitrionics - modifikovaný jazyk C (flow-based programming, přesná pravidla ulehčující paralelizaci), odladění a simulace kódu, nakonec "zápis" do hardwaru Koprocesory - výpočetní modely SIMD - Návrat k původní ideji, realizovaný ale v rámci jednoho koprocesoru Systolické - Více jednotek koordinovaně řešící úlohy formou „vlny''. Explicitní prokládání výpočtů a komunikace, vhodné např., pro jednotky (součást jednoho koprocesoru) organizaované do pole Dataflow - Streaming Optimalizace pro heterogenní systémy ještě složitější než pro paralelní počítače - Zatím spíše vývojová prostředí, automatická optimalizace v počátcích Další oblasti • Gridy - Rozsáhlé distribuované systémy - Heterogenní, více administrativních domén, nízká spolehlivost komponent • Fault tolerance - Odolnost proti výpadku, ale stále častěji především Zotavení po výpadku - Znovu v popředí zájmu (rozsáhlé paralelní a zejména distribuované systémy nelze konstruovat bez toho, že komponenty selhávají) - Self healing systémy (v podstatě snaha zakomponovat fault toleranci do systémů orientovaných na služby) - Standardní přístup - checkpoint a restart - prakticky nefunguje v distribuovaných systémech • Operační systémy - Stále patrnější vliv na skutečnou efektivitu paralelních a distribuovaných systémů - Přímá podpora multi-core procesorů - Podpora distribuované prostředí v jádře - např. projekt ExtremeOS • Virtualizace - Řešení těžkých problémů - plánování zdrojů, zvýšení odolnosti, ... 6 Další vývoj • Začneme pohledem do minulosti - Dnešní stolní počítač má výkon předvčerejšího superpočítače • Stíhají uživatelé skutečně držet krok? • A budeme pokračovat novými architekturami - A také problémy, které na tyto architektury čekají 7 Před • Cray X-MP • Frekvence: 105 MHz tj. 9.5 nanosekund • 2 processory po 200 Mflops • Paměť 128 MB (16 megaslov) • Vyroben 1982 a stál přes 10 milionů dolarů • Zhruba na úrovni dnešních chytrých mobilních telefonů či PDA 25 lety HOHBMBHaH» 8 A co bude za 25 let? Podívejme se na seznam TOP500 ^1 c n 10 P Flops 1 P Flops 100 TFIops 10 TFIops 1 TFIops 100 GFIops 10 GFIops 1 GFIops 100 M Flops Performance Development 3527.61 TF ] [ 280.60 TF D D [ ^ ß IÜ ^ ] « i c ^ 1 „ C 2736 G F i"D' ŕ c D ] L : c :°C : c : c ] c ] c .A, Ľ 1 : c D L i i i i i i i i i D #1 D #500 d Sum en en en en en en o} OJ OJ OJ OJ OJ OJ OJ 1211.2006 h 1111: '.•■;w ť; .topSOO.oig/ •Graf pokrývá 13,5 let •Výkon nejrychlejšího počítače narostl 4700 krát •Výkon posledního počítače vzrostl 6514 krát •Celkový nárůst: 3150X 10 Zetaflops před rokem 2035 100 Mflops 1993 1995 2000 2005 2010 2015 2020 2025 2030 2035 2040 2043 10 Je tato projekce reálná Výkon procesorů - Nenarážíme na nějaké fyzikální limity? Rychlost paměti - Obdobně, je možné dále zvyšovat hustotu? Rychlost I/O - Zpravidla v pozadí, ale stále více ovlivňuje celkový dosažitelný výkon (jak síť, tak diskový a podobné subsystémy) Paralelní výpočetní modely - Stále jen počátky, automatická efektivní a obecná paralelizace (natož pak distribuce na heterogenní distribuovaný systém) zůstává stále jen snem Klasická DRAM paměť Q. i. 1 1000 ..«• 1UU j* ^"i ■■■i TU y ■■■ ■■■ IB 1 >♦♦♦ ♦ < ♦,♦% ►*♦♦♦< ♦ > U.U1 ,y < ♦ ♦ U.UU1 n nnm .*.♦• 4r ,..:< ♦ U.UUUU1 0.000001 < >-------------------- 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020 ♦ Historical ■ URS @ Production —1— ITRS @ Introduction ■c re O 1.00 0.90 0.80 0.70 0.60 0.50 % 0.40 0.30 0.20 0.10 0.00 ♦ ♦ ♦♦ II ***Aaa± A A A 1970 1980 1990 2000 2010 ♦ Historical aSIA Production ASIA Introduction 2020 Viditelné zpomalování nárůstu hustoty Příliš velká část chipu (cca 45%) nem paměť 12 Frekvence komponent N X. O O O 100,000 10,000 1,000 100 10 ♦ ♦ 7 ♦♦is* jty GHz 1975 1980 1985 "990 1995 2000 2005 2010 2015 2020 ♦ Historical ITRS Max Clock Rate (12 invertors) 10000 ♦ :: :«/ ^/ ■3 GHz 1^00 100000 10000 1000 100 10 100 10 Feature Size ♦ Historical ■ ITRS Max N J* O o o Pro rok 2008 byla v roce 2005 predikovana základní frekvence 5,2 GHz, predikce ale selhala. Vyráběné systémy se zastavily na hranici cca 3 GHz. Podrobnější analýzu ukáže, že hlavním problémem je energie, resp. její přílišná koncentrace (na lmm2) při vyšších frekvencích -neumíme teplo dostatečně rychle odvádět Překonání hranice • V podstatě zásadní změnou architekturu • Rozložení paměti více přímo mezi výpočetní komponenty, proložení více a méně zatížených komponent tak, aby se usnadnil rozvod tepla - Teplá místa menší, obklopena chladnějšími - výsledkem je vyšší škálovatelnost, tj.i vyšší dosažitelná frekvence • Vyšší integrace komponent - Složitější pro vývoj • MIND prvky a z nich skládané systémy (Dodecatron, VISION2020) 14 MIND prvky MIND memory accelerator Parcel Handler 4-Fflf Wide ALU Memory Manager Embedded DRAM Macro Gilgamesh Dodecatron an iiin.n ~ ~~ 111 r ~ ÍÉÉÉÉ aft mrt ÍPflÉF ihmm nnlsmn in,a||g n ni n n ä n ni nu j nul n,n||ig||n,n ~ ~ 11Ä r ~ Vision2020 System '-i File I/O i 128k-l Škálování výkonu Příspěvky jednotlivých architektonických řešení 16.0 14.0 12.0 10.0 Q. 3 ■o V V £ 80 fN Ol O 6.0 4.0 2.0 Single-processor Performance Scaling 55%/year improvement s s ' ' /V nn r i i rrpn cxi • / __--' / J*--— S jT ______ • jT ----- • jT ________ • • • S JT ________ s S ^____ • • > • _______ S / • / y Device speed Architectural frequency wall • / s J * s**'— i • / __A • / ^ --------------------------------------------------•--------^H ___" ' • / ^— • / ^-— • J ^0^^ s .— ____ • __^ ____ • ^— jS^ s ftV o!" í)í<) O?» O? l rfr ŕ f f f f f f f