GPU a CUDA. Historie GPU. Co je GPGPU? Nvidia CUDA
|
|
- Vítězslav Müller
- před 7 lety
- Počet zobrazení:
Transkript
1 GPU a CUDA Historie GPU Co je GPGPU? Nvidia CUDA
2 Historie GPU GPU = graphics processing unit jde o akcelerátory pro algoritmy v 3D grafice a vizualizaci mnoho z nich původně vzniklo pro účely počítačových her to byla často psychologická nevýhoda GPU typická úloha ve vizualizaci vypadá takto transformování miliónů polygonů aplikování textur o velikosti mnoha MB projekce na framebuffer žádná datová závislost
3 Historie GPU ANTIC in 8-bit Atari IBM Nvidia Co. založeno dfx Interactive založeno chip NV1 od Nvidia dfx vydalo Voodoo Graphics GeForce 256 by Nvidia - podpora geometrických transformací Nvidia kupuje 3dfx Interactive GeForce 4 vybaveno pixel a vertex shadery GeForce 8 - unifikovaná architektura (nerozlišuje pixel a vertex shader) (Nvidia CUDA) GeForce podpora dvojité přesnosti GeForce 480 (Fermi) - první GPU postavené pro obecné výpočty - GPGPU
4 Výhody GPU (Nvidia Tesla P100) GPU je navrženo pro současný běh až 3800 vláken - virtuálně až stovek tisíc vláken vlákna musí být nezávislá - není zaručeno, v jakém pořadí budou zpracována GPU je vhodné pro kód s intenzivními výpočty a s malým výskytem podmínek není zde podpora spekulativního zpracování není zde podpora pro cache GPU je optimalizováno pro sekvenční přístup do paměti GB/s
5 Výhody GPU Obrázek : Zdroj Nvidia Programming Guide
6 Výhody GPU Obrázek : Růst výkonu GPU a CPU
7 Porovnání CPU vs. GPU Nvidia INTEL Core i GeForce 980 Six-Core Transistors millions millions Clock 1.1 GHz 3.5 GHz Threads Num Peak. Perf. 4.6 TFlops 0.2 TFlops Bandwidth 224 GB/s 68 GB/s RAM 4 GB 64 GB Power 165 W 130 W
8 Porovnání CPU vs. GPU Nvidia INTEL Xeon E5-2699A V4 Tesla P Cores Transistors 15.3 billions 7.2 billions Clock 1.3 GHz 3.6 GHz Threads Num Peak. Perf. 10 TFlops 0.75 TFlops Bandwidth 720 GB/s 76.8 GB/s RAM 16 GB 1.54 TB Power 300 W 145 W
9 Co je GPGPU? mějme obdélník a pokryjme ho texturou s rozlišením 800x600 pixels promítneme ho jedna ku jedné do framebuferu/na obrazovku s rozlišením 800x600 pixelů co když použijeme dvě textury a alfa blending T (i, j) = α 1 T 1 (i, j) + α 2 T 2 (i, j), for all pixels (i, j) dostáváme váženou sumu dvou matic z R 800,600 a výsledek je uložen ve framebuferu/na obrazovce
10 Historie of GPGPU GPGPU = General Purpose Computing on GPU ( Lengyel, J., Reichert, M., Donald, B.R. and Greenberg, D.P. Real-Time Robot Motion Planning Using Rasterizing Computer Graphics Hardware. In Proceedings of SIGGRAPH 1990, GPGPU na běžných GPUs
11 Podstata GPGPU na počátku bylo nutné pro GPGPU využívat rozhraní OpenGL úlohy byly formulovány pomocí textur a operací s pixely vývojáři her ale potřebovali flexibilnější hardware vznikly pixel shadery jde o jednoduchý programovatelný procesor pro operace s pixely má podporu pro výpočty s plovoucí desetinnou čárkou v jednoduché přesnosti velikost kódu byla omezena na několik desítek instrukcí
12 Nvidia CUDA CUDA = Compute Unified Device Architecture - Nvidia 15 February 2007 výrazně zjednodušuje programování v GPGPU zcela odstraňuje nutnost pracovat s OpenGL a formulování úloh pomocí textur je založena na jednoduchém rozšíření jazyka C/C++ funguje jen s kartami společnosti Nvidia Je velice snadné napsat kód pro CUDA ale je potřeba mít hluboké znalosti o GPU aby byl výsledný kód efektivní.
13 CUDA architektura I. Architektura Maxwell Obrázek : Zdroj Nvidia
14 CUDA architektur I. GeForce 980 skládá se ze 4 GPC = Graphic Processing Cluster každý GPC obsahuje 4 SMM = Streaming Multiprocessors všechny GPC mezi sebou sdílejí 2MB L2 cache dále obsahuje 4 GB GDDR5 RAM
15 CUDA architektura I. Architektura Maxwell Obrázek : Zdroj Nvidia
16 CUDA architektur I. GeForce 980 SMM Každý SMM se skládá z: 32 jader/procesorů pro jednotlivá vlákna 64 nebo 96 kb velmi rychlé sdílené paměti a 24 kb L1 cache sdílená pamět se dělí do 32 modulů LD/ST jsou jednotky pro přístup do globální paměti SFU jsou jednotky pro výpočty složitých funkcí jako sin, cos, tan, exp Od hardwarové architektury se odvíjí hierarchická struktura vláken:
17 Vlákna v CUDA CUDA host je CPU a operační pamět CUDA device je zařízení pro paralelní zpracování až stovek tisíc nezávislých vláken - threads CUDA thread je velmi jednoduchá struktura - rychle se vytváří a rychle se přepíná při zpracování komunikace mezi výpočetními jednotkami je hlavní problém v paralelním zpracování dat nemůžeme očekávat, že budeme schopni efektivně synchronizovat tisíce vláken CUDA architektura zavádí menší skupiny vláken zvané bloky - blocks
18 Bloky a gridy jeden blok je zpracován na jednom multiprocesoru vlákna v jednom bloku sdílejí velmi rychlou pamět s krátkou latencí vlákna v jednom bloku mohou být synchronizována v jednom bloku může být až 1024 vláken multiprocesor přepíná mezi jednotlivými vlákny tím zakrývá latence pomalé globální paměti zpracovává vždy ta vlákna, která mají načtena potřebná data, ostatní načítají Bloky vláken jsou seskupeny do gridu - grid.
19 Model zpracování vláken Obrázek : Zdroj Nvidia: Getting Started with CUDA
20 Pamět ový model Obrázek : Zdroj Nvidia: Getting Started with CUDA
21 Pamět ová hierarchie Obrázek : Zdroj Nvidia: Getting Started with CUDA
22 Programování v CUDA programování v CUDA spočívá v psaní kernelů - kernels kód zpracovaný jedním vláknem kernely nepodporují rekurzi podporují větvení kódu, ale to může snižovat efektivitu nemohou vracet žádný výsledek jejich parametry nemohou být reference podporují šablony C++ od CUDA 2.0 podporují funkci printf!!!
23 Programování v CUDA 1 #include <cuda. h> 2 #include <cuda_runtime_api. h> 3 #include <iostream > 4 5 global void cudavectoraddition ( double cuda_u, 6 const double cuda_v, 7 const i n t size, 8 const i n t grididx, 9 const i n t griddim ) ; i n t main ( i n t argc, char argv [ ] ) 12 { 13 const i n t size ( 1 << 20 ) ; 14 double host_u, host_v, cuda_u, cuda_v ; / 17 A l l o c a t i o n on the host 18 / 19 host_u = new double [ s ize ] ; 20 host_v = new double [ s ize ] ; / 23 A l l o c a t i o n on the device 24 / 25 i f ( cudamalloc ( ( void ) & cuda_u, size sizeof ( double ) )!= cudasuccess 26 cudamalloc ( ( void ) & cuda_v, size sizeof ( double ) )!= cudasuccess ) 27 { 28 std : : c e r r << "Unable to allocate vectors on the device." << std : : endl ; 29 return EXIT_FAILURE ; 30 }
24 Programování v CUDA 1 / 2 Setting up the vectors 3 / 4 for ( int i = 0; i < size ; i ++ ) 5 { 6 host_u [ i ] = i ; 7 host_v [ i ] = size i ; 8 } 9 i f ( cudamemcpy ( ( void ) cuda_u, ( void ) host_u, 10 size sizeof ( double ), cudamemcpyhosttodevice )!= cudasuccess 11 cudamemcpy ( ( void ) cuda_v, ( void ) host_v, 12 s ize sizeof ( double ), cudamemcpyhosttodevice )!= cudasuccess ) 13 { 14 std : : c e r r << "Unable to copy data from the host to the device." << std : : endl ; 15 return EXIT_FAILURE ; 16 } / 19 Compute the a d d i t i o n on the CPU 20 / 21 for ( i n t i = 0; i < size ; i ++ ) 22 host_u [ i ] += host_v [ i ] ;
25 Programování v CUDA 1 2 / 3 Run the CUDA k e r nel 4 / 5 dim3 cudablocksize ( 256 ) ; 6 cudadeviceprop properties ; 7 cudagetdeviceproperties ( &properties, 0 ) ; 8 i n t maxcudagridsize ( properties. maxgridsize [ 0 ] ) ; 9 const i n t cudablockscount = s ize / cudablocksize. x + 10 ( size % cudablocksize. x!= 0 ) ; 11 const i n t cudagridscount = cudablockscount / maxcudagridsize + 12 ( cudablockscount % maxcudagridsize!= 0 ) ; 13 for ( i n t g r i d I d x = 0; g r i d I d x < cudagridscount ; g r i d I d x ++ ) 14 { 15 dim3 cudagridsize ; 16 i f ( g r i d I d x < cudagridscount ) 17 cudagridsize. x = maxcudagridsize ; 18 else 19 cudagridsize. x = cudablockscount % maxcudagridsize ; 20 cudavectoraddition <<< cudagridsize, cudablocksize >>> 21 ( cuda_u, cuda_v, size, grididx, maxcudagridsize ) ; 22 cudaerror err = cudagetlasterror ( ) ; 23 i f ( e r r!= cudasuccess ) 24 { 25 std : : cerr << "Computation on the device failed with error: " 26 << cudageterrorstring ( err ) << "." << std : : endl ; 27 return EXIT_FAILURE ; 28 } 29 }
26 Programování v CUDA 1 2 / 3 Copy the r e s u l t back to the host 4 / 5 i f ( cudamemcpy ( ( void ) host_v, ( void ) cuda_u, 6 size sizeof ( double ), cudamemcpydevicetohost )!= cudasuccess ) 7 { 8 std : : c e r r << "Unabel to copy data back from the GPU." << std : : endl ; 9 return EXIT_FAILURE ; 10 } i f ( memcmp( ( void ) host_u, ( void ) host_v, size sizeof ( double ) )!= 0 ) 13 { 14 std : : c e r r << "The results are different." << std : : endl ; 15 return EXIT_FAILURE ; 16 } 17 std : : cout << "Everything is ok." << std : : endl ; / 20 Freeing a l l o c a t e d memory 21 / 22 delete [ ] host_u ; 23 delete [ ] host_v ; 24 cudafree ( cuda_u ) ; 25 cudafree ( cuda_v ) ; 26 } global void cudavectoraddition ( double cuda_u, 29 const double cuda_v, 30 const i n t size, 31 const i n t grididx, 32 const i n t griddim ) 33 { 34 const i n t t i d = ( grididx griddim + blockidx. x ) blockdim. x + threadidx. x ; 35 i f ( t i d < size ) 36 cuda_u [ t i d ] += cuda_v [ t i d ] ; 37 }
27 Programování v CUDA Kód uložíme do cuda-vector-addition.cu a přeložíme pomocí nvcc.
28 Vývoj efektivního kódu Pro získání efektivního kódu je nutné dodržet následující pravidla: redukovat přenos dat mezi CPU (CUDA host) a GPU (CUDA device) optimalizovat přístup do globální paměti omezit divergentní vlákna zvolit správnou velikost bloků
29 Komunikace mezi CPU a GPU komunikace přes PCI Express je velmi pomalá cca. 8 GB/s je nutné tuto komunikaci minimalizovat ideálně provést jen na začátku a na konci výpočtu GPU se nevyplatí pro úlohy s nízkou aritmetickou intenzitou z tohoto pohledu mohou mít výhodu on-board GPU, které sdílí operační pamět pokud je nutné provádět často komunikaci mezi CPU a GPU pak je dobré jí provádět formou pipeliningu je možné provádět najednou výpočet na GPU výpočet na CPU kopírování dat z CPU do GPU kopírování dat z GPU na CPU
30 Sloučené přístupy do pamětí většinu přístupů GPU do globální paměti tvoří načítání textur GPU je silně optimalizováno pro sekvenční přístup do globální paměti programátor by se měl vyhnout náhodným přístupům do globální paměti ideální postup je: načíst data do sdílené paměti multiprocesoru provést výpočty zapsat výsledek do globální paměti sloučený přístup - coalesced memory access - může velmi výrazně snížit (až 32x) počet pamět ových transakcí
31 Sloučené přístupy do paměti Obrázek : Zdroj Nvidia: Nvidia CUDA programming guide
32 Sloučené přístupy do paměti Obrázek : Zdroj Nvidia: Nvidia CUDA programming guide
33 Sloučené přístupy do paměti Obrázek : Zdroj Nvidia: Nvidia CUDA programming guide
34 Keš Architektura Fermi zavádí plně funkční L1 a L2 keše. L1 keš se nachází na každém multiprocesoru lze nastavit, jaká část ze 64kB SRAM paměti bude určeno pro keš pomocí funkce: cudafuncsetcacheconfig( MyKernel, cudafunccacheprefershared ) cudafunccacheprefershared - shared memory is 48 KB cudafunccachepreferl1 - shared memory is 16 KB cudafunccacheprefernone - no preference L2 keš je společná pro všechny multiprocesory a má velikost 768kB
35 Sdílená pamět multiprocesoru sdílená pamět multiprocesoru je rozdělena na 32 pamět ových bank data se ukládají do jednotlivých bank vždy po 4 bajtech je potřeba se vyhnout situaci, kdy dvě vlákna ze skupiny 32 čtou z různých adres v jedné bance nevadí, když čte více vláken ze stejné adresy, použije se broadcast
36 Divergentní vlákna CUDA device umí zpracovávat současně různé kernely, ale jen na různých multiprocesorech Nvidia tuto architekturu nazývá SIMT = Single Instruction, Multiple Threads v rámci jednoho multiprocesoru jde ale o SIMD architekturu, tj. všechny jednotky provádějí stejný kód warp je skupina 32 vláken zpracovávaných současně vlákna ve warpu jsou tedy implicitně synchronizovaná všechna by měla zpracovávat stejný kód
37 Zpracování bloků vláken na multiprocesoru na mutliprocesoru většinou běží více bloků vláken scheduler mezi nimi přepíná a spouští vždy ty bloky vláken, které mají načteny potřebná data tím se zakrývají velké latence globální paměti k tomu je ale potřeba, aby jeden blok nevyčerpal všechny registry a sdílenou pamět pokud není dostatek registrů, ukládají se proměnné do local memory - to je pomalé je potřeba dobře zvolit velikost bloku - násobek 32 minimalizovat počet proměnných a množství sdílené paměti použité jedním blokem minimalizovat velikost kódu kernelu efektivnost obsazení multiprocesoru udává parametr zvaný occupancy (maximum je 1.0) za účelem optimalizace lze použít CUDA occupancy calculator 1 CUDA profiler výpisy nvcc -ptxas-options=-v 1
38 Multi-GPU systémy do jednoho PC lze instalovat az 4 GPU navíc existují i dvoučipové GPU karty dostáváme tak systém s distribuovanou pamětí jednotlivá GPU nemají přímý přístup do paměti těch ostatních více v CUDA Programming Guide
GPU a CUDA. Historie GPU. Co je GPGPU? Nvidia CUDA
GPU a CUDA Historie GPU Co je GPGPU? Nvidia CUDA Historie GPU GPU = graphics processing unit jde o akcelerátory pro algoritmy v 3D grafice a vizualizaci mnoho z nich původně vzniklo pro účely počítačových
GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA
GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA HISTORIE GPU GPU = graphics processing unit jde o akcelerátory pro algoritmy v 3D grafice a vizualizaci mnoho z nich původně vzniklo pro účely počítačových
Pokročilé architektury počítačů
Pokročilé architektury počítačů Tutoriál 3 CUDA - GPU Martin Milata Výpočetní model CUDA Organizace kódu Sériově organizovaný kód určený pro CPU Paralelní kód prováděný na GPU Označuje se jako kernel GPU
CUDA J. Sloup a I. Šimeček
CUDA J. Sloup a I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PAP, LS2010/11, Predn.6 Příprava studijního programu Informatika
GPGPU. Jan Faigl. Gerstnerova Laboratoř pro inteligentní rozhodování a řízení České vysoké učení technické v Praze
GPGPU Jan Faigl Gerstnerova Laboratoř pro inteligentní rozhodování a řízení České vysoké učení technické v Praze 8. cvičení katedra kybernetiky, FEL, ČVUT v Praze X33PTE - Programovací techniky GPGPU 1
Pokročilé architektury počítačů
Pokročilé architektury počítačů Přednáška 5 GPU - CUDA Martin Milata Obsah Obecné výpočty a GPU Grafické procesory NVIDIA Tesla Výpočetní model Paměťový model GT200 Zpracování instrukcí Vydávání instrukcí
Nvidia CUDA Paralelní programování na GPU
Mendelova univerzita v Brně Provozně ekonomická fakulta Nvidia CUDA Paralelní programování na GPU 2014 O čem to bude... Trocha historie Shadery Unifikace GPGPU CUDA Využití GPGPU GPU a jeho Hardware Nvidia
Paralelní architektury se sdílenou pamětí typu NUMA. NUMA architektury
Paralelní architektury se sdílenou pamětí typu NUMA NUMA architektury Multiprocesorové systémy s distribuovanou pamětí I. úzkým hrdlem multiprocesorů se sdílenou pamětí je datová komunikace s rostoucím
PŘEDSTAVENÍ GRAFICKÉHO PROCESORU NVIDIA G200
PŘEDSTAVENÍ GRAFICKÉHO PROCESORU NVIDIA G200 Bc.Adam Berger Ber 208 Historie a předchůdci G200 V červnu roku 2008 spatřila světlo světa nová grafická karta od společnosti Nvidia. Tato grafická karta opět
Pokročilé architektury počítačů
Pokročilé architektury počítačů Přednáška 7 CUDA První paralelní aplikace Martin Milata Obsah SIMD versus SIMT Omezení a HW implementace Způsob zpracování warp skupiny vláken CUDA - pohled programátora
Nvidia CUDA Paralelní programování na GPU
Mendelova univerzita v Brně Provozně ekonomická fakulta Nvidia CUDA Paralelní programování na GPU 2017 O čem to bude... Trocha historie Shadery Unifikace GPGPU CUDA Využití GPGPU GPU a jeho Hardware Nvidia
Základní operace. Prefix sum. Segmentovaný prefix-sum
Základní operace Paralelní redukce Paralelní redukce na architekturách se sdílenou pamětí Paralelní redukce na architekturách s distribuovanou pamětí Paralelní redukce na GPU v CUDA Prefix sum Segmentovaný
Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur
Přehled paralelních architektur Přehled paralelních architektur Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur Přehled I. paralelní počítače se konstruují
Obecné výpočty na GPU v jazyce CUDA. Jiří Filipovič
Obecné výpočty na GPU v jazyce CUDA Jiří Filipovič Obsah přednášky motivace architektura GPU CUDA programovací model jaké algoritmy urychlovat na GPU? optimalizace Motivace Moorův zákon stále platí pro
Úvod do GPGPU J. Sloup, I. Šimeček
Úvod do GPGPU J. Sloup, I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PRC, LS2010/11, Predn.3 Příprava studijního programu
Co je grafický akcelerátor
Co je grafický akcelerátor jednotka v osobním počítači či herní konzoli přebírá funkce hlavního procesoru pro grafické operace graphics renderer odlehčuje hlavnímu procesoru paralelní zpracování vybaven
GPGPU Aplikace GPGPU. Obecné výpočty na grafických procesorech. Jan Vacata
Obecné výpočty na grafických procesorech Motivace Úvod Motivace Technologie 3 GHz Intel Core 2 Extreme QX9650 Výkon: 96 GFLOPS Propustnost paměti: 21 GB/s Orientační cena: 1300 USD NVIDIA GeForce 9800
GPU Computing.
GPU Computing Motivace Procesory (CPU, Central Processing Units) jsou rychlé, paměť nestačí poskytovat data. Běžným lékem na latenční dobu (memory latency) paměti bývá užívání rychlých (ale malých) cache
OPS Paralelní systémy, seznam pojmů, klasifikace
Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus
Optimalizace pro GPU hardware
Optimalizace pro GPU hardware Jiří Filipovič jaro 2015 Jiří Filipovič Optimalizace pro GPU hardware 1 / 52 Paralelismus GPU Paralelní algoritmy je nutno navrhovat vzhledem k paralelismu, který poskytuje
Představení a vývoj architektur vektorových procesorů
Představení a vývoj architektur vektorových procesorů Drong Lukáš Dro098 1 Obsah Úvod 3 Historie, současnost 3 Architektura 4 - pipelining 4 - Operace scatter a gather 4 - vektorové registry 4 - Řetězení
Hlavní využití počítačů
Úvod Hlavní využití počítačů Počítače jsou výkonné nástroje využívané pro zpracování dat. Provádějí: načtení a binární kódování dat provedení požadovaného výpočtu zobrazení výsledku Hlavní využití počítačů
Přednáška 1. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012
Přednáška 1 Úvod do HW a OS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského
REALIZACE SUPERPOČÍTAČE POMOCÍ GRAFICKÉ KARTY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF TELECOMMUNICATIONS
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND
Paralelní a distribuované výpočty (B4B36PDV)
Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech
Část 2 POROVNÁNÍ VÝKONNOSTI A POUŽITELNOSTI ARCHITEKTUR V TYPICKÝCH APLIKACÍCH
Část 2 POROVNÁNÍ VÝKONNOSTI A POUŽITELNOSTI ARCHITEKTUR V TYPICKÝCH APLIKACÍCH Paralelizace kódu Rozdíl v přístupu k paralelizaci kódu si ukážeme na operaci násobení matice maticí: Mějme tři čtvercové
Vyuºití GPGPU pro zpracování dat z magnetické rezonance
Vyuºití pro zpracování dat z magnetické rezonance Katedra matematiky, Fakulta jaderná a fyzikáln inºenýrská, ƒeské vysoké u ení technické v Praze Bakalá ská práce 2007/2008 Cíle práce Zpracování dat z
Řešíme úlohu zpracování velkého množství dat. Data jsou symetrická, úloha je dobře paralelizovatelná
GPGPU Motivace Řešíme úlohu zpracování velkého množství dat Data jsou symetrická, úloha je dobře paralelizovatelná Propaganda výrobců grafických karet: Vezměte váš C-čkový kód, zkompilujte a pusťte jej
Procesor Intel Pentium (1) Procesor Intel Pentium (3) Procesor Intel Pentium Pro (1) Procesor Intel Pentium (2)
Procesor Intel Pentium (1) 32-bitová vnitřní architektura s 64-bitovou datovou sběrnicí Superskalární procesor: obsahuje více než jednu (dvě) frontu pro zřetězené zpracování instrukcí (značeny u, v) poskytuje
Paralelní a distribuované výpočty (B4B36PDV)
Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech
HW počítače co se nalézá uvnitř počítačové skříně
ZVT HW počítače co se nalézá uvnitř počítačové skříně HW vybavení PC Hardware Vnitřní (uvnitř počítačové skříně) Vnější ( ) Základní HW základní jednotka + zobrazovací zařízení + klávesnice + (myš) Vnější
Osobní počítač. Zpracoval: ict Aktualizace: 10. 11. 2011
Osobní počítač Zpracoval: ict Aktualizace: 10. 11. 2011 Charakteristika PC Osobní počítač (personal computer - PC) je nástroj člověka pro zpracovávání informací Vyznačuje se schopností samostatně pracovat
Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC
Informační systémy 2 Obsah: Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC ROM RAM Paměti typu CACHE IS2-4 1 Dnešní info: Informační systémy 2 03 Informační systémy
PROCESOR. Typy procesorů
PROCESOR Procesor je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program. Primárním úkolem procesoru je řídit činnost ostatních částí počítače včetně
Architektura grafických ip pro Xbox 360 a PS3
Architektura grafických ip pro Xbox 360 a PS3 Jakub Stoszek sto171 VŠB TU Ostrava 12.12.2008 Obsah Grafická karta ATI Xenox (Xbox 360)...3 ip grafické karty ATI Xenos (Xbox 360)...3 Pam grafické karty
Řešíme úlohu zpracování velkého množství dat. Data jsou symetrická, úloha je dobře paralelizovatelná. Propaganda výrobců grafických karet:
GPGPU Motivace Řešíme úlohu zpracování velkého množství dat Data jsou symetrická, úloha je dobře paralelizovatelná Propaganda výrobců grafických karet: Vezměte váš C-čkový kód, zkompilujte a pusťte jej
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
Název školy Číslo projektu Autor Název šablony Název DUMu Tematická oblast Předmět Druh učebního materiálu Anotace Vybavení, pomůcky Ověřeno ve výuce dne, třída Střední průmyslová škola strojnická Vsetí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
Jednoduché stránkování Operační systémy Přednáška 8: Správa paměti II Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné velikosti
Geekovo Minimum. Počítačové Grafiky. Nadpis 1 Nadpis 2 Nadpis 3. Božetěchova 2, Brno
Geekovo Minimum Nadpis 1 Nadpis 2 Nadpis 3 Počítačové Grafiky Jméno Adam Příjmení Herout Vysoké Vysoké učení technické učení technické v Brně, v Fakulta Brně, Fakulta informačních informačních technologií
Představení a srovnání grafických procesorů ATI RV770 a NVIDIA G(T)200
Představení a srovnání grafických procesorů ATI RV770 a NVIDIA G(T)200 Adam Količ, kol400 NVIDIA G(T)200 Technické info: 65nm (G200b - 55nm) 1,4 mld. tranzistorů 240 stream procesorů 32 ROP/RBE 80 texturovacích
Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2
Základy informatiky 2. Přednáška HW Lenka Carr Motyčková February 22, 2011 Základy informatiky 1 February 22, 2011 Základy informatiky 2 February 22, 2011 Základy informatiky 3 February 22, 2011 Základy
Jan Nekvapil ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická
Jan Nekvapil jan.nekvapil@tiscali.cz ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Motivace MMX, EMMX, MMX+ 3DNow!, 3DNow!+ SSE SSE2 SSE3 SSSE3 SSE4.2 Závěr 2 Efektivní práce s vektory
Martin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. October 17, 2016
ZPRO cvičení 2 Martin Flusser Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague October 17, 2016 Outline I 1 Outline 2 Proměnné 3 Proměnné - cvičení 4 Funkce 5 Funkce
Mezipaměti počítače. L2 cache. L3 cache
Mezipaměti počítače Cache paměť - mezipaměť Hlavní paměť procesoru je typu DRAM a je pomalá. Proto se mezi pomalou hlavní paměť a procesor vkládá menší, ale rychlá vyrovnávací (cache) paměť SRAM. Rychlost
Intel 80486 (2) Intel 80486 (1) Intel 80486 (3) Intel 80486 (4) Intel 80486 (6) Intel 80486 (5) Nezřetězené zpracování instrukcí:
Intel 80486 (1) Vyroben v roce 1989 Prodáván pod oficiálním názvem 80486DX Plně 32bitový procesor Na svém čipu má integrován: - zmodernizovaný procesor 80386 - numerický koprocesor 80387 - L1 (interní)
Pohled do nitra mikroprocesoru Josef Horálek
Pohled do nitra mikroprocesoru Josef Horálek Z čeho vycházíme = Vycházíme z Von Neumannovy architektury = Celý počítač se tak skládá z pěti koncepčních bloků: = Operační paměť = Programový řadič = Aritmeticko-logická
Masivně paralelní zpracování obrazu v prostředí systému VisionLab. 25. 9. 2013 Liberec Roman Cagaš, rc@mii.cz
Masivně paralelní zpracování obrazu v prostředí systému VisionLab 25. 9. 2013 Liberec Roman Cagaš, rc@mii.cz Moravské přístroje a.s. - oblasti vývoje a výroby Prostředí pro vývoj aplikací Software pro
PV109: Historie a vývojové trendy ve VT
PV109: Historie a vývojové trendy ve VT Vývojové trendy Luděk Matyska Fakulta informatiky Masarykovy univerzity podzim 2014 Luděk Matyska (FI MU) PV109: Historie a vývojové trendy ve VT podzim 2014 1 /
vlastnosti, praktické zkušenosti
Obecné výpočty na grafických kartách použitelnost, vlastnosti, praktické zkušenosti Martin Kruliš, Jakub Yaghob KSI MFF UK Malostranské nám. 25, Praha {krulis,yaghob}@ksi.mff.cuni.cz Abstrakt. Nedávný
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Ro R dina procesor pr ů Int In e t l Nehalem Šmída Mojmír, SMI108 PAP PA 2009
Rodina procesorů Intel Nehalem Šmída Mojmír, SMI108 PAP 2009 Obsah: Úvod Nejpodstatnější prvky Nehalemu (i7 900) Nehalem ve střední třídě (i7 800, i5 700) Výkon Závěr Úvod Nhl Nehalem staví na úspěšné
C2115 Praktický úvod do superpočítání
C2115 Praktický úvod do superpočítání IX. lekce Petr Kulhánek, Tomáš Bouchal kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Přírodovědecká fakulta, Masarykova univerzita, Kotlářská 2, CZ-61137
GPU jako levný výpočetní akcelerátor pro obrazovou JPEG2000 kompresi. ORS 2011 Karviná,
GPU jako levný výpočetní akcelerátor pro obrazovou JPEG2000 kompresi Jiří Matela ORS 2011 Karviná, 2011 10 21 PROPOJENÍ 3 UltraGrid nízkolatenční, nízkolatenční, vysoké rozlišení, nízkolatenční, vysoké
Cache paměť - mezipaměť
Cache paměť - mezipaměť 10.přednáška Urychlení přenosu mezi procesorem a hlavní pamětí Hlavní paměť procesoru je typu DRAM a je pomalá. Proto se mezi pomalou hlavní paměť a procesor vkládá menší, ale rychlá
Procesy a vlákna (Processes and Threads)
ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna (Processes and Threads) Správa procesů a vláken České vysoké učení technické Fakulta elektrotechnická 2012 Použitá literatura [1] Stallings, W.: Operating
Architektura Intel Atom
Architektura Intel Atom Štěpán Sojka 5. prosince 2008 1 Úvod Hlavní rysem Atomu je podpora platformy x86, která umožňuje spouštět a běžně používat řadu let vyvíjené aplikace, na které jsou uživatelé zvyklí
Paralelní architektury - úvod
Paralelní architektury - úvod Úvod do paralelních architektur Příklady paralelních architektur Processor arrays Multiprocesory Multiprocesory se sdílenou pamětí Multiprocesory s distribuovanou pamětí Multipočítače
Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC
Informatika 2 Technické prostředky počítačové techniky - 2 Přednáší: doc. Ing. Jan Skrbek, Dr. - KIN Přednášky: středa 14 20 15 55 Spojení: e-mail: jan.skrbek@tul.cz 16 10 17 45 tel.: 48 535 2442 Obsah:
Identifikátor materiálu: ICT-1-08
Identifikátor materiálu: ICT-1-08 Předmět Informační a komunikační technologie Téma materiálu Motherboard, CPU a RAM Autor Ing. Bohuslav Nepovím Anotace Student si procvičí / osvojí základní desku počítače.
Nová architektura od ATI (Radeon HD 4800) Datum: 26.11.2008 Vypracoval: Bc. Radek Stromský
Nová architektura od ATI (Radeon HD 4800) Datum: 26.11.2008 Vypracoval: Bc. Radek Stromský Použité zkratky GDDR5 - Graphics Double Data Rate, verze 5 GPU - Graphic Processing Unit ALU - Arithmetic Logic
G R A F I C K É K A R T Y
G R A F I C K É K A R T Y Grafická karta nebo také videoadaptér je součást počítače, která se stará o grafický výstup na monitor, TV obrazovku či jinou zobrazovací jednotku. Režimy grafických karet TEXTOVÝ
Technické prostředky počítačové techniky
Počítač - stroj, který podle předem připravených instrukcí zpracovává data Základní části: centrální procesorová jednotka (schopná řídit se posloupností instrukcí a ovládat další části počítače) zařízení
Paralelní architektury - úvod
Paralelní architektury - úvod Úvod do paralelních architektur Příklady paralelních architektur Processor arrays Multiprocesory Multiprocesory se sdílenou pamětí Multiprocesory s distribuovanou pamětí Multipočítače
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV AUTOMATIZACE A MĚŘÍCÍ TECHNIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION
Jiné výpočetní platformy J. Sloup, M. Skrbek, I. Šimeček
Jiné výpočetní platformy J. Sloup, M. Skrbek, I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 BI-EIA, ZS2011/12, Predn.12 Příprava
Operační systémy. Přednáška 1: Úvod
Operační systémy Přednáška 1: Úvod 1 Organizace předmětu Přednášky každé úterý 18:00-19:30 v K1 Přednášející Jan Trdlička email: trdlicka@fel.cvut.z kancelář: K324 Cvičení pondělí, úterý, středa Informace
Část 1 ZÁKLADNÍ RYSY VÝPOČETNÍ PROSTŘEDKŮ DOSTUPNÝCH NA IT4INNOVATIONS
Část 1 ZÁKLADNÍ RYSY VÝPOČETNÍ PROSTŘEDKŮ DOSTUPNÝCH NA IT4INNOVATIONS Maximální výkonnost CPU Maximální výkonnost CPU je dána výrazem P max =cores*k*f, kde: cores je počet jader v CPU, k je počet FP instrukcí,
Hardware - komponenty počítačů Von Neumannova koncepce počítače. Von Neumannova koncepce počítače
V roce 1945 vystoupil na přednášce v USA matematik John von Neumann a představil architekturu samočinného univerzálního počítače (von Neumannova koncepce/schéma/architektura). Základy této koncepce se
Paralelní architektury se sdílenou pamětí
Paralelní architektury se sdílenou pamětí Multiprocesory Multiprocesory se sdílenou pamětí SMP architektury Přístup do paměti OpenMP Multiprocesorové architektury I. Multiprocesor se skládá z několika
Paralelní programování
Paralelní programování přednáška 5 Michal Krupka 15. března 2011 Michal Krupka (KI UP) Paralelní programování 15. března 2011 1 / 13 Ještě ke kritickým sekcím Použití v praxi obvykle pomocí zámků (locks)
Knihovny pro CUDA J. Sloup a I. Šimeček
Knihovny pro CUDA J. Sloup a I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PRC, LS2010/11, Predn.10 Příprava studijního programu
AGP - Accelerated Graphics Port
AGP - Accelerated Graphics Port Grafiku 3D a video bylo možné v jisté vývojové etapě techniky pracovních stanic provozovat pouze na kvalitních pracovních stanicích (cena 20 000 USD a více) - AGP představuje
Grafické karty. Autor: Kulhánek Zdeněk
Grafické karty Autor: Kulhánek Zdeněk Škola: Hotelová škola, Obchodní akademie a Střední průmyslová škola Teplice, Benešovo náměstí 1, příspěvková organizace Kód: VY_32_INOVACE_ICT_826 1.11.2012 1 1. Grafická
Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto
Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto Registrační číslo projektu Šablona Autor CZ.1.07/1.5.00/34.0951 III/2 INOVACE A ZKVALITNĚNÍ VÝUKY PROSTŘEDNICTVÍM ICT Mgr. Jana Kubcová Název
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
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 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského
VYUŽITÍ GRAFICKÉHO ADAPTÉRU PRO OBECNÉ VÝPOČTY GENERAL-PURPOSE COMPUTATION USING GRAPHICS CARD
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÝCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER SYSTEMS VYUŽITÍ GRAFICKÉHO
Paralení programování pro vícejádrové stroje s použitím OpenMP. B4B36PDV Paralelní a distribuované výpočty
Paralení programování pro vícejádrové stroje s použitím OpenMP B4B36PDV Paralelní a distribuované výpočty Minulé cvičení: Vlákna a jejich synchronizace v C++ 11... 1 Minulé cvičení: Vlákna a jejich synchronizace
IUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
Funkční objekty v C++.
Funkční objekty v C++. Funkční objekt je instance třídy, která má jako svou veřejnou metodu operátor (), tedy operátor pro volání funkce. V dnešním článku si ukážeme jak zobecnit funkci, jak používat funkční
Paměťový podsystém počítače
Paměťový podsystém počítače typy pamětových systémů počítače virtuální paměť stránkování segmentace rychlá vyrovnávací paměť 30.1.2013 O. Novák: CIE6 1 Organizace paměťového systému počítače Paměťová hierarchie...
FAKULTA INFORMAČNÍCH TECHNOLOGIÍ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÝCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER SYSTEMS POUŽITÍ OPENCL V
ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14
ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 14 0:40 1.3. Vliv hardware počítače na programování Vliv
Povídání na téma SUPERPOČÍTAČE DNES A ZÍTRA
Povídání na téma SUPERPOČÍTAČE DNES A ZÍTRA (aneb krátký náhled na SC) 29. 10. 2015 Filip Staněk Osnova Co jsou to Superpočítače? Výkon SC Architektura Software Algoritmy IT4Innovations Odkazy na další
Hardware. Příklad převodu čísla: =1*32+0*16+0*8+1*4+0*2+1*1= Převod z dvojkové na desítkovou Sčítání ve dvojkové soustavě
1 Hardware Dvojková soustava Pro zápis čísel v počítači se používá dvojková soustava, kdy se jakékoliv číslo zapisuje jen pomocí nul (0 Voltů) a jedniček (5V). Např.: 9 10 =1001 2 nebo 75 10 =1001011 2
Operační systémy. Přednáška 8: Správa paměti II
Operační systémy Přednáška 8: Správa paměti II 1 Jednoduché stránkování Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné
INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE
Název školy: Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu: VY_32_INOVACE_15_HARDWARE_S1 Číslo projektu: CZ 1.07/1.5.00/34.1077
Cell broadband engine architecture
Cell broadband engine architecture Semestrální práce z předmětu 31SCS Martin Černý Abstrakt Specifikace procesoru ukazují při zachování nízké pořizovací ceny na velké výpočetní kapacity. Procesor kombinuje
CHARAKTERISTIKA MODERNÍCH PENTIÍ. Flynnova klasifikace paralelních systémů
Úvod: CHARAKTERISTIKA MODERNÍCH PENTIÍ Flynnova klasifikace paralelních systémů Paralelní systémy lze třídit z hlediska počtu toků instrukcí a počtu toků dat: SI systém s jedním tokem instrukcí (Single
České vysoké učení technické v Praze
České vysoké učení technické v Praze Fakulta stavební Katedra mechaniky BAKALÁŘSKÁ PRÁCE Efektivní algoritmy pro vyhodnocení statistických deskriptorů Vedoucí práce: Ing. Jan Sýkora, Ph.D. Praha 2012 Jan
Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje
Paměti Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje Paměti počítače lze rozdělit do tří základních skupin: registry paměťová místa na čipu procesoru jsou používány
Procesor. Procesor FPU ALU. Řadič mikrokód
Procesor Procesor Integrovaný obvod zajišťující funkce CPU Tvoří srdce a mozek celého počítače a do značné míry ovlivňuje výkon celého počítače (čím rychlejší procesor, tím rychlejší počítač) Provádí jednotlivé
1 Osobní počítač Obecně o počítačích Technické a programové vybavení... 4
1 Osobní počítač... 2 1.1 Architektura IBM PC... 2 2 Obecně o počítačích... 3 2.1 Co jsou počítače dnes... 3 3 Technické a programové vybavení... 4 3.1 Hardware... 4 3.1.1 Procesor... 4 3.1.2 Sběrnice...
Paralelní architektury se sdílenou pamětí
Paralelní architektury se sdílenou pamětí Multiprocesory Multiprocesory se sdílenou pamětí SMP architektury Přístup do paměti OpenMP Multiprocesorové architektury I. Multiprocesor se skládá z několika
Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP
Základy programování Úloha: Eratosthenovo síto Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Obsah 1 Zadání úkolu: 3 1.1 Zadání:............................... 3 1.2 Neformální zápis:.........................
Úvod do architektur personálních počítačů
Úvod do architektur personálních počítačů 1 Cíl přednášky Popsat principy proudového zpracování informace. Popsat principy zřetězeného zpracování instrukcí. Zabývat se způsoby uplatnění tohoto principu
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND
Metoda sledování paprsku na grafických akcelerátorech. Martin Zlatuška
České vysoké učení technické v Praze Fakulta elektrotechnická Diplomová práce Metoda sledování paprsku na grafických akcelerátorech Martin Zlatuška Vedoucí práce: Ing. Vlastimil Havran, Ph.D. Studijní
Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /
Správa paměti doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Motivace Úrovně správy paměti. Manuální