Pokročilé architektury počítačů

Podobné dokumenty
Pokročilé architektury počítačů

Architektury paralelních počítačů I.

IB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. RNDr. Jiří Barnat, Ph.D.

Povídání na téma. SUPERPOČÍTAČE DNES A ZÍTRA (aneb krátký náhled na SC) Filip Staněk

Přednáška 1. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Operační systémy. Přednáška 1: Úvod

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Systémy pro sběr a přenos dat

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

Pokročilé architektury počítačů

Přednáška #12: Úvod do paralelních počítačů. Paralelní počítače a architektury

Mezipaměti počítače. L2 cache. L3 cache

Profilová část maturitní zkoušky 2013/2014

IB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. Jiří Barnat

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 TECHNICKÉ VYBAVENÍ POČÍTAČŮ

Roman Výtisk, VYT027

12. Virtuální sítě (VLAN) VLAN. Počítačové sítě I. 1 (7) KST/IPS1. Studijní cíl. Základní seznámení se sítěmi VLAN. Doba nutná k nastudování

Povídání na téma SUPERPOČÍTAČE DNES A ZÍTRA

Luděk Matyska. Jaro 2014

Paralelní architektury se sdílenou pamětí typu NUMA. NUMA architektury

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

Využití paralelních výpočtů v geodézii

Pokročilé architektury počítačů

Paralelní algoritmy --- Parallel Algorithms

Přidělování paměti II Mgr. Josef Horálek

Platforma Juniper QFabric

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

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Paralelní výpočty ve finančnictví

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

Systém řízení sběrnice

METACentrum Český národní gridovýprojekt. Projekt METACentrum. Jan Kmuníček ÚVT MU & CESNET. meta.cesnet.cz

Procesy a vlákna (Processes and Threads)

Ro R dina procesor pr ů Int In e t l Nehalem Šmída Mojmír, SMI108 PAP PA 2009

Základy počítačových sítí Model počítačové sítě, protokoly

Řízení IO přenosů DMA řadičem

Pokročilé architektury počítačů

5. Směrování v počítačových sítích a směrovací protokoly

MetaCentrum - Virtualizace a její použití

Architektura počítačů

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

Novinky z vývoje v MetaCentru

4. Úvod do paralelismu, metody paralelizace

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

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

Systém adresace paměti

Distribuovaný systém je takový systém propojení množiny nezávislých počítačů, který poskytuje uživateli dojem jednotného systému.

Martin Lísal. Úvod do MPI

Propojování sítí,, aktivní prvky a jejich principy

Obsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21

Profilová část maturitní zkoušky 2014/2015

Paralelní a distribuované výpočty (B4B36PDV)

Systémy pro sběr a přenos dat

SUPERPOČÍTAČE DANIEL LANGR ČVUT FIT / VZLÚ

Komunikační sítě paralelních architektur

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

PRINCIPY OPERAČNÍCH SYSTÉMŮ

Petr Holášek / 1 of 21

C2115 Praktický úvod do superpočítání

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Počítačové síťě (computer network) Realizují propojení mezi PC z důvodu sdílení SW (informací, programů) a HW(disky, tiskárny..)

Sbě b r ě n r i n ce

Příloha č. 1 zadávací dokumentace. Technická dokumentace, specifikace požadovaného plnění a popis hodnocení

Pamět ová hierarchie, návrh skryté paměti 2. doc. Ing. Róbert Lórencz, CSc.

X.25 Frame Relay. Frame Relay

Princip funkce počítače

Pohled do nitra mikroprocesoru Josef Horálek

UAI/612 - Cloudová Řešení. Návrh aplikací pro cloud

TOPOLOGIE DATOVÝCH SÍTÍ

Úvod Úrovňová architektura sítě Prvky síťové architektury Historie Příklady

Paralelní architektury - úvod

Profilová část maturitní zkoušky 2015/2016

Informační a komunikační technologie

AGP - Accelerated Graphics Port

1. Směrovače směrového protokolu směrovací tabulku 1.1 TTL

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

METACentrum zastřešení českých gridových aktivit

Informační technologie. Název oboru: Školní rok: jarní i podzimní zkušební období 2017/2018

Metody připojování periferií BI-MPP Přednáška 1

Virtualizace MetaCentra

Paralelní architektury - úvod

Cloudy a gridy v národní einfrastruktuře

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í

Cache paměti (1) Cache paměť: V dnešních počítačích se běžně používají dva, popř. tři druhy cache pamětí:

Principy počítačů I Netradiční stroje

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Pokročilé architektury počítačů

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

Server je v informatice obecné označení pro počítač, který poskytuje nějaké služby nebo počítačový program, který tyto služby realizuje.

C2115 Praktický úvod do superpočítání

Pokročilé architektury počítačů

Souborové služby. Richard Biječek

Směrování. static routing statické Při statickém směrování administrátor manuálně vloží směrovací informace do směrovací tabulky.

Obecné výpočty na GPU v jazyce CUDA. Jiří Filipovič

Vstupně - výstupní moduly

Síťová vrstva. RNDr. Ing. Vladimir Smotlacha, Ph.D.

Pokročilé architektury počítačů

Cache paměti (2) Cache paměti (1) Cache paměti (3) Cache paměti (4) Cache paměti (6) Cache paměti (5) Cache paměť:

Transkript:

Pokročilé architektury počítačů Tutoriál 4 Superpočítače a paralelní počítání Martin Milata

Dvě třídy MIMD multiprocesorů Třídy se odvíjí od počtu procesorů, který v důsledku definuje organizaci paměti a propojovací strategii Architektura s centralizovanou sdílenou pamětí Menší počet procesorů (méně než 100) umožňuje sdílení jedné centralizované paměti Použití cache pamětí per procesor Sdílená paměť dělená do banků (větší propustnost) Pro všechny procesory zůstává zachována stejná (uniformní) přístupová doba Uniform Memory Access (UMA) se Symmetric (shared-memory) Multiprocessors (SMPs)

MIMD s centralizovanou sdílenou pamětí

Dvě třídy MIMD multiprocesorů Architektura multiprocesorů s fyzicky distribuovanou pamětí Umožňuje použití většího počtu procesoru v klasteru v porovnání s architekturou se sdílenou pamětí Lepší škálovatelnost - cenově dostupnější řešení složené z většího počtu levnějších pamětí Větší šířka pásma každý uzel přispívá šířkou lokální směrnice k její celkové velikosti Redukce latence přístupu do paměti - většina přístupu řešena lokálně v rámci jednoho uzlu Komplikovaný a pomalý přístup do pamětí jiných uzlů (vzdálený přístup) Jednotlivé uzly musejí být propojeny vhodnou propojovací sítí (obousměrná přepínaná síť, vedlejší multidimenzionální síť)

MIMD s fyzicky distribuovanou pamětí

Modely přístupu k paměti Na základě modelu adresního prostoru sdílené paměti rozlišujeme dva přístupy Sdílený adresní prostor Adresní prostor je rozprostřen přes všechny uzly resp. části distribuované paměti Vytváří tím jeden logický sdílený adresní prostor Pomocí něj může být adresována libovolná paměťová buňka kdekoliv v distribuované soustavě Model se nazývá Distributed shared-memory (DSM) Přístupová doba v rámci celého prostoru není jednotná Přístup k lokální částí distribuované paměti je výrazně kratší ve srovnání s latencí vzdáleného přístupu Nonuniform memory access (NUMAs) Stejná fyzická adresa vždy ukazuje na stejnou paměťovou buňku

Modely přístupu k paměti Per uzel privátní adresní prostor Každý uzel disponuje vlastním adresním prostorem Uzel lze chápat jako samostatný počítač (Obvykle je samostatným počítačem). Procesor nemá přímou možnost adresovat paměť jiného uzlu Stejná fyzická adresa na různých uzlech reprezentuje různé paměťové buňky Preferovaný paměťový model pro dnešní klasterová řešení Přístup k paměti cizích uzlů Sdílený adresní prostor Load a Store instrukce, jejichž implementace počítá s možným přístupem mimo lokální paměť Privátní adresní prostory Metoda explicitního zasílání zpráv mezi procesory

Symetrická sdílená paměť Přístup do fyzické paměti realizován pomocí procesory společně sdílené sběrnice Použití cache pamětí pro redukci průměrné latence a potřebné šířky pásma do fyzické paměti Více úrovňová cache paměť s různým stupněm sdílení mezi procesory Cache ukládá jak privátní data (používaná pouze jedním procesorem) tak sdílená data (sdílí se mezi procesory)

Cache paměť a multi-procesory Uložení sdílených dat v cache paměti Redukuje přístupovou latenci a potřebnou šířku pásma pro přístup do fyzické paměti Způsobuje replikaci a dočasné uložení informace na více místech a to i v rámci stejného stupně cache hierarchie Cache přiřazená každému procesoru může obsahovat vlastní kopii dat Tím umožňuje paralelní přístup k datům bez vyvolání konfliktu na společné sběrnici Přináší problém cache koherence Potřeba zajistit, aby každé čtení datové položky obsažené v cache pamětích vrátilo pro něj aktuální zapsanou hodnotu Přináší problém konzistence Definice pořadí read a write požadavků na sdílenou datovou položku

Schémata zajištění koherence Pro multiprocesorové systémy s menším počtem procesorů je obvykle protokol zajištění cache koherence implementován v HW Jeho realizace je založena na sledování datových bloků na sdílené sběrnici mezi procesory a fyzickou pamětí Dvě základní třídy protokolu pro zajištění cache koherence Directory based - Stav sdílení bloku fyzické paměti je udržován na jednom místě (directory). Přináší vyšší implementační režii než sooping. Výhodou je možnost použití s větším počtem procesorů Snooping Stav bloků neuchovává centralizovaně. Podmínkou nasazení je možnost zaslání broadcast zprávy, kterou zaregistrují všechny cache kontroléry. Změny aktualizace obsahu bloků v cache se provádí na základně odposlouchávání komunikace jiných procesorů

MSI transakční diagram Popis událostí Obsluhovaná událost / Důsledek zasílán na sběrnici Události způsobené procesorem PrWr zápis hodnoty PrRd čtení hodnoty Transakce na sběrnici BusRd čtení hodnoty bez následné modifikace BusRdX čtení hodnoty s následnou modifikací (zpráva pro invalidaci ostatní cache)

Propojovací sítě paralelního počítače taxonomie Komponenty propojovací sítě Linka (drát, optika) Přepínač význam závislý na použité technologii Výpočetní uzel Topologie Statická síť spojení realizováno p2p pevnými linkami (přímé propojení) Dynamická síť propoj tvořen přepínanou sítí (nepřímé propojení přepínačem zprostředkované) Povaha sítě Blokující existují takové cesty mezi různými uzly p, q a r, s pro něž platí, že komunikace nemůže probíhat současně (konfliktní cesty) Neblokující plně nezávislé cesty mezi všemi propojenými uzly

Statické a dynamické propojovací sítě

Vlastností propojovací sítě Síťové rozhraní Zodpovídá za přípravu paketů, výpočet směrovací informace (obvykle se nepohybujeme v prostředí IP sítí) a dočasné ukládání odesílaných resp. přijímaných dat (I/O buffering) Můžeme rozlišit na I/O Bus (karty různých technologií nepříklad pro PCI, PCI Expres sloty) Memory Bus (Intel QuickPath Interconnect, AMD HyperTransport) Síťová topologie Stupeň (uzlu) počet linek na uzel Diametr (sítě) nejkratší cesta mezi nejvzdálenějšími uzly sítě Bisekční šířka (Bisection Width) minimální počat hran dělící síť na dvě části Cena počet linek nebo přepínačů

Náhrada sběrnicové topologie v dnešních procesorech Intel QuickPath Interconnect Obrázky převzaty z: http://www.intel.com/technology/quickpath/introduction.pdf

Topologie propojovacích sítí paralelních počítačů Nepřímé propojovací sítě Sběrnice (Bus-Based Networks) Plně přepínaná síť (Crossbar Networks) Víceúrovňové sítě (Multistage Networks) Přímé propojovací sítě (modely) Plně propojená síť (Full Mesh Networks) Síť s hvězdicovou topologií (Star-Connected Networks) k-dimenzionální mesh sítě (k-dim mesh Networks) Sítě se stromovou strukturou

Model topologie propojovací sítě Statické toroidní sítě Statické topologie s toroidním uspořádáním n rozměrný torus (1 rozměrný torus resp. kruh, 2,3 rozměrný torus) 3D torus je často používaná topologie pro mnoha uzlové systémy

Fyzická versus logická topologie Fyzická organizace uzlů často nevyhovuje požadavkům na propojení prováděného výpočtu Nad fyzickou topologií se buduje logická s pomocí mapování výpočetních uzlů (vrcholů) logického uspořádání na fyzické Pomocí logického přemapování topologie je možné realizovat výpočet na superpočítačích s rozdílným fyzickým uspořádáním Metriky pro mapování mezi topologiemi G(V, E) na G'(V', E') Congestion (Zahlcení) Dilation (Roztažení) maximální počet hran z E mapovaný na hranu z E' maximální počet hran z E' mapovaný na jednu hranu z E Expansion (Rozšíření) Četnost množiny V / četnost množiny V'

Příklad mapování mřížky na hyperkrychli Požadovaná topologie Mřížka 2r x 2s Fyzická organizace 2r+s-dimensionalni hyperkrychle Congestion = Dilation = Expansion = 1

Typy propojení superpočítačů

Klastr Sestava vzájemně propojených počítačů (výpočetních uzlů) Většinou homogenní (uzly stejné HW konfigurace) Uzly dokáží efektivně řešit paralelní algoritmy s pomocí vzájemné spolupráce (nestačí počítače propojit, musejí být schopny na úloze spolupracovat) Spolupráce uzlů a tím i paralelizace založena na zasílání zpráv (message-passing MPI) Obtížnější paralelizace ve srovnání s MPP Potřeba propojů mezi uzly s nízkou latencí a vysokou propustností InfiniBand, kombinovaná a proprietární řešení Obtížnější správa Jedná se o samostatné počítače s více či méně nezávislými OS Distribuované souborové systémy,...

Klastr IBM Roadrunner Výpočetní uzel 4x PowerXCell 2x Opteron Interconnect InfiniBand 4x DDR Dvě úrovně InfiniBand přepínačů

Literatura John L. Hennessy, David A. Patterson, Computer Architecture: A Quantitative Approach (4th Edition) Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar: Introduction to Parallel Computing, 2003 Filip Staněk: Superpočítače dnes a zítra (aneb krátký náhled na SC) D. Goldenberg: InfiniBand Technology Overview J. M. Crummey: Parallel Computing Platforms (Routing, Network Embedding) T. Shanley, J. Winkles: InfiniBand network architecture Internetové zdroje www.wikipedia.org

Superpočítání a plánovač Torque Skript pro stažení a automatický import hlavního a výpočetních uzlů clustery wget http://158.196.141.74/cluster/cluster.sh -O /tmp/cluster.sh Importují se dva virtuální počítače HeadNode řídící uzel klastru CN1 výpočetní uzel klastru Druhý výpočetní uzel lze importovat stažením souborů a jejich následným importem do VirtualBoxu wget http://158.196.141.74/cluster/cn2.vmdk -O /tmp/cn2.vmdk wget http://158.196.141.74/cluster/cn2.ovf -O /tmp/cn2.ovf

Přístup k výpočetním uzlům Pro všechny uzly jsou platné dva přístupové účty root / pap pap / pap Práce s Torque Výpis stavu konfigurovaných uzlů pbsnodes -a Výpis konfigurace Torque na HeadNode cat /var/spool/torque/server_priv/nodes Výpis fronty úloh qstat Zařazení interaktivní úlohy (nelze jako root su pap) qsub -I