Računalniške delavnice FMF: Delavnica MPI
|
|
- Šimon Blažek
- před 5 lety
- Počet zobrazení:
Transkript
1 Računalniške delavnice FMF: Delavnica MPI Matevž Jekovec Laboratorij za vseprisotne sisteme UL FRI lusy.fri.uni-lj.si 18. april maj 2014
2 Motivacija Moorov zakon: število tranzistorjev v integriranih vezjih se podvoji vsaki dve leti.
3 Motivacija Kaj pa zmogljivost?
4 Motivacija Kaj pa zmogljivost? Frekvenca se poveča za faktor 1,4 vsako leto: neposredna pohitritev.
5 Motivacija Kaj pa zmogljivost? Frekvenca se poveča za faktor 1,4 vsako leto: neposredna pohitritev. Frekvenca Pentiuma 4 doseže 4 GHz leta 2000 (v laboratoriju tudi 10 GHz).
6 Motivacija Kaj pa zmogljivost? Frekvenca se poveča za faktor 1,4 vsako leto: neposredna pohitritev. Frekvenca Pentiuma 4 doseže 4 GHz leta 2000 (v laboratoriju tudi 10 GHz). Po tem frekvenca stagnira. Zmogljivost se povečuje z drugimi optimizacijami in vzporednostjo.
7 Družine vzporednih arhitektur Način komunikacije: z deljenim pomnilnikom, z izmenjavo sporočil.
8 Družine vzporednih arhitektur Način komunikacije: z deljenim pomnilnikom, z izmenjavo sporočil. Družine vzporednih arhitektur: Večjedrne arhitekture s skupnim pomnilnikom Mnogojedrne arhitekture s skupnim pomnilnikom Porazdeljene arhitekture z izmenjavo sporočil
9 Večjedrne arhitekture z deljenim pomnilnikom Nekaj 10 jeder na enem čipu.
10 Večjedrne arhitekture z deljenim pomnilnikom Nekaj 10 jeder na enem čipu. Vsa jedra imajo dostop do celotnega pomnilnika.
11 Večjedrne arhitekture z deljenim pomnilnikom Nekaj 10 jeder na enem čipu. Vsa jedra imajo dostop do celotnega pomnilnika. Primer: Osebni računalniki Intel/AMD.
12 Mnogojedrne arhitekture s skupnim pomnilnikom Več 1000 jeder na enem čipu. Jedra so enostavnejša. Nimajo vsi dostopa do vsega pomnilnika.
13 Mnogojedrne arhitekture s skupnim pomnilnikom Več 1000 jeder na enem čipu. Jedra so enostavnejša. Nimajo vsi dostopa do vsega pomnilnika. Predpostavka: Single-Instruction Multiple-Data
14 Mnogojedrne arhitekture s skupnim pomnilnikom Več 1000 jeder na enem čipu. Jedra so enostavnejša. Nimajo vsi dostopa do vsega pomnilnika. Predpostavka: Single-Instruction Multiple-Data Primer: NVidia CUDA Fermi s 16 SM are positioned around a common L2 cache. Each SM is a vertical rectangular strip that contain an orange portion (scheduler and dispatch), a green portion (execution units), and light blue portions (register file and L1 cache).
15 Mnogojedrne arhitekture s skupnim pomnilnikom Instruction Cache Warp Scheduler Dispatch Unit Warp Scheduler Dispatch Unit Register File (4096 x 32-bit) LD/ST LD/ST LD/ST LD/ST SFU CUDA Dispatch Port Operand Collector FP Unit INT Unit LD/ST LD/ST LD/ST LD/ST SFU Result Queue LD/ST LD/ST LD/ST LD/ST SFU LD/ST LD/ST LD/ST LD/ST SFU Interconnect Network 64 KB Shared Memory / L1 Cache Uniform Cache Fermi Streaming Multiprocessor (SM)
16 Porazdeljene arhitekture z izmenjavo sporočil Več 1000 vozlišč, povezanih v mrežo.
17 Porazdeljene arhitekture z izmenjavo sporočil Več 1000 vozlišč, povezanih v mrežo. Vsako vozlišče ima neposreden dostop do lokalnega pomnilnika.
18 Porazdeljene arhitekture z izmenjavo sporočil Več 1000 vozlišč, povezanih v mrežo. Vsako vozlišče ima neposreden dostop do lokalnega pomnilnika. Dostop do bolj oddaljenega pomnilnika z izmenjavo sporočil.
19 Porazdeljene arhitekture z izmenjavo sporočil Več 1000 vozlišč, povezanih v mrežo. Vsako vozlišče ima neposreden dostop do lokalnega pomnilnika. Dostop do bolj oddaljenega pomnilnika z izmenjavo sporočil. Primer: IBM Bluegene/L
20 Kako programiramo vzporedne aplikacije? Kako izgledajo vzporedne aplikacije?
21 Kako programiramo vzporedne aplikacije? Kako izgledajo vzporedne aplikacije? Odvisno od arhitekture!
22 Kako programiramo vzporedne aplikacije? Kako izgledajo vzporedne aplikacije? Odvisno od arhitekture! Deljen pomnilnik: en proces, več niti ali več procesov, izmenjava sporočil.
23 Kako programiramo vzporedne aplikacije? Kako izgledajo vzporedne aplikacije? Odvisno od arhitekture! Deljen pomnilnik: en proces, več niti ali več procesov, izmenjava sporočil. Porazdeljene arhitekture: več procesov, izmenjava sporočil.
24 Pohitritev aplikacije POZOR: Premisliti moramo, kaj bomo sploh povzporejali!
25 Pohitritev aplikacije POZOR: Premisliti moramo, kaj bomo sploh povzporejali! Če so vsak naslednji korak algoritma odvisen od prejšnjega, je aplikacija inherentno zaporedna (inherently sequential) in ni mogoče povzporejanje. Primer: iskanje po drevesu v globino.
26 Pohitritev aplikacije POZOR: Premisliti moramo, kaj bomo sploh povzporejali! Če so vsak naslednji korak algoritma odvisen od prejšnjega, je aplikacija inherentno zaporedna (inherently sequential) in ni mogoče povzporejanje. Primer: iskanje po drevesu v globino. Če so koraki popolnoma neodvisni med seboj, je aplikacija sramotno povzporedljiva (embarrassingly parallel). Primer: iskanje števila po neurejenem polju števil.
27 Pohitritev aplikacije POZOR: Premisliti moramo, kaj bomo sploh povzporejali! Če so vsak naslednji korak algoritma odvisen od prejšnjega, je aplikacija inherentno zaporedna (inherently sequential) in ni mogoče povzporejanje. Primer: iskanje po drevesu v globino. Če so koraki popolnoma neodvisni med seboj, je aplikacija sramotno povzporedljiva (embarrassingly parallel). Primer: iskanje števila po neurejenem polju števil. Amdahlov zakon: Največja možna pohitritev algoritma je S(P) = 1 s + 1 s, P kjer je s delež inherentno zaporedne kode in P število procesorjev.
28 MPI MPI ali Message Passing Interface je programski standard, ki vsebuje funkcionalnosti, potrebne za razvoj aplikacij za porazdeljen sisteme. Zasnovan je bil leta 1991.
29 MPI MPI ali Message Passing Interface je programski standard, ki vsebuje funkcionalnosti, potrebne za razvoj aplikacij za porazdeljen sisteme. Zasnovan je bil leta Podpira navidezno topologijo mreže (naslavljanje), sinhronizacijo procesorjev in učinkovito medsebojno komunikacijo.
30 MPI MPI ali Message Passing Interface je programski standard, ki vsebuje funkcionalnosti, potrebne za razvoj aplikacij za porazdeljen sisteme. Zasnovan je bil leta Podpira navidezno topologijo mreže (naslavljanje), sinhronizacijo procesorjev in učinkovito medsebojno komunikacijo. Je namenjen porazdeljenim arhitekturam, vendar deluje tudi na večjedrnih.
31 MPI MPI ali Message Passing Interface je programski standard, ki vsebuje funkcionalnosti, potrebne za razvoj aplikacij za porazdeljen sisteme. Zasnovan je bil leta Podpira navidezno topologijo mreže (naslavljanje), sinhronizacijo procesorjev in učinkovito medsebojno komunikacijo. Je namenjen porazdeljenim arhitekturam, vendar deluje tudi na večjedrnih. Je prirejen za številne programske jezike: poleg C, C++ in Fortran tudi za Python, Ocaml, Javo, Matlab, R itd.
32 MPI MPI ali Message Passing Interface je programski standard, ki vsebuje funkcionalnosti, potrebne za razvoj aplikacij za porazdeljen sisteme. Zasnovan je bil leta Podpira navidezno topologijo mreže (naslavljanje), sinhronizacijo procesorjev in učinkovito medsebojno komunikacijo. Je namenjen porazdeljenim arhitekturam, vendar deluje tudi na večjedrnih. Je prirejen za številne programske jezike: poleg C, C++ in Fortran tudi za Python, Ocaml, Javo, Matlab, R itd. Open MPI je ena izmed knjižnic, ki se podrejajo standardu MPI-2.
33 Uporaba MPI v C Začnimo s Hello world v programskem jeziku C: 1 # include <stdio.h> 2 3 int main ( int argc, char * argv []) { 4 printf (" Pozdravljen, svet!\n"); 5 6 return 0; 7 }
34 Uporaba MPI v C Dodamo inicializacijo MPI in izpis procesa: 1 # include <stdio.h> 2 # include <mpi.h> 3 4 int main ( int argc, char * argv []) { 5 int rank, size ; 6 7 MPI_Init (& argc, & argv ); 8 MPI_Comm_rank ( MPI_COMM_WORLD, & rank ); 9 MPI_Comm_size ( MPI_COMM_WORLD, & size ); printf ("Svet, jaz sem proces %d od %d!\n", rank, size ); MPI_ Finalize (); return 0; 16 }
35 Uporaba MPI v C Aplikacijo prevedemo z ukazom mpicc helloworld-mpi.c -o helloworld-mpi Aplikacijo zaženemo z ukazom mpirun -n <število procesov>./helloworld-mpi mpirun -n 5./helloworld-mpi Svet, jaz sem proces 1 od 5! Svet, jaz sem proces 0 od 5! Svet, jaz sem proces 4 od 5! Svet, jaz sem proces 3 od 5! Svet, jaz sem proces 2 od 5!
36 Uporaba MPI v C Aplikacijo prevedemo z ukazom mpicc helloworld-mpi.c -o helloworld-mpi Aplikacijo zaženemo z ukazom mpirun -n <število procesov>./helloworld-mpi mpirun -n 5./helloworld-mpi Svet, jaz sem proces 1 od 5! Svet, jaz sem proces 0 od 5! Svet, jaz sem proces 4 od 5! Svet, jaz sem proces 3 od 5! Svet, jaz sem proces 2 od 5! Opomba: Vrstni red izvajanja ni determinističen!
37 Komunikacija Komunikacija lahko poteka na dva načina:
38 Komunikacija Komunikacija lahko poteka na dva načina: prek mrežnega diska,
39 Komunikacija Komunikacija lahko poteka na dva načina: prek mrežnega diska, prek MPI.
40 Komunikacija Komunikacija lahko poteka na dva načina: prek mrežnega diska, prek MPI. Funkciji MPI za komunikacijo: int MPI_Send(const void *buf, int count, MPI_Datatype, int dest, int tag, MPI_Comm comm) int MPI_Recv(void *buf, int count, MPI_Datatype, int source, int tag, MPI_Comm comm, MPI_Status *status)
41 Komunikacija Komunikacija lahko poteka na dva načina: prek mrežnega diska, prek MPI. Funkciji MPI za komunikacijo: int MPI_Send(const void *buf, int count, MPI_Datatype, int dest, int tag, MPI_Comm comm) int MPI_Recv(void *buf, int count, MPI_Datatype, int source, int tag, MPI_Comm comm, MPI_Status *status) Opomba: Funkciji sta sinhroni in čakata, dokler se prenos ne konča.
42 Naloge Današnje naloge: Napišite program, ki s standardnega vhoda prebere 1 vrednosti polja in vzporedno sešteje njegove elemente. 2 vrednosti dveh matrik in jih vzporedno sešteje. 3 vrednosti dveh matrik in jih vzporedno zmnoži. Algoritme najprej preizkusite lokalno, nato pa na gruči Raspberry π.
43 Naloge Današnje naloge: Napišite program, ki s standardnega vhoda prebere 1 vrednosti polja in vzporedno sešteje njegove elemente. 2 vrednosti dveh matrik in jih vzporedno sešteje. 3 vrednosti dveh matrik in jih vzporedno zmnoži. Algoritme najprej preizkusite lokalno, nato pa na gruči Raspberry π. Za pridne: 1 Izmerite razliko v hitrosti izvajanja, če preberete matriko z mrežnega diska ali prek MPI. 2 Poglejte Cannonov algoritem za množenje matrik.
44 Uvod Vzporedne arhitekture Dodatno: Zagon MPI v gruc i Ustvarimo datoteko z naslovi rac unalnikov: pi@ pi@ pi@ pi@ pi@ pi@ Povzporejanje aplikacij MPI
45 Uvod Vzporedne arhitekture Povzporejanje aplikacij Dodatno: Zagon MPI v gruc i Ustvarimo datoteko z naslovi rac unalnikov: pi@ pi@ pi@ pi@ pi@ pi@ Aplikacijo zaz enemo z ukazom: mpirun --hostfile my hostfile helloworld-mpi MPI
Programování založené na posílání zpráv
Programování založené na posílání zpráv Standard MPI Standard pro posílání zpráv - MPI = Message Passing Interface Dostupné implementace OpenMPI - http://www.open-mpi.org/ LAM-MPI - http://www.lam-mpi.org/
VíceVaja 2 Iskanje z razvijanjem v širino
Vaja 2 Iskanje z razvijanjem v širino 1. Splošna predstavitev problema Preden se lotimo samega algoritma moramo definirati nov pojem graf. Graf G je v teoriji grafov definiran kot dvojica G={V, P}. V je
VíceÚvod do MPI. Úvod do MPI Operace send a recieve Blokující a neblokující posílání zpráv Blokující posílání zpráv Neblokující posílání zpráv
Úvod do MPI Úvod do MPI Operace send a recieve Blokující a neblokující posílání zpráv Blokující posílání zpráv Neblokující posílání zpráv Komunikační operace All-to-all broadcast/all-to-all reduction All-reduce
VíceÚstav technické matematiky FS ( Ústav technické matematiky FS ) / 35
Úvod do paralelního programování 2 MPI Jakub Šístek Ústav technické matematiky FS 9.1.2007 ( Ústav technické matematiky FS ) 9.1.2007 1 / 35 Osnova 1 Opakování 2 Představení Message Passing Interface (MPI)
VíceRačunalništvo in informatika Računalniška omrežja. Računalniška omrežja. Osnovni pojmi. prof. Andrej Krajnc univ. dipl.inž.
Konec 1 Računalništvo in informatika Računalniška omrežja prof. univ. dipl.inž. Računalniška omrežja Konec 2 Osnovni pojmi Konec 3 komuniciranje pomeni prenos sporočila iz izvora v ponor preko prenosnega
VíceGPU 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
VíceMatija Lokar: PODATKOVNE STRUKTURE VRSTA. List za mlade matematike, fizike, astronome in računalnikarje
List za mlade matematike, fizike, astronome in računalnikarje ISSN 0351-6652 Letnik 15 (1987/1988) Številka 5 Strani 275 279 Matija Lokar: PODATKOVNE STRUKTURE VRSTA Ključne besede: matematika, računalništvo,
VíceMPI Message Passing Interface. Charakteristika
MPI Message Passing Interface Charakteristika Původně pro C a Fortran, dnes třeba i mpijava Komunikační rozhraní pro paralelní programy Knihovna s definovaným API o Nezávislé implementace, možnost přenositelnosti
VícePROGRAMOVÁNÍ V C++ CVIČENÍ
PROGRAMOVÁNÍ V C++ CVIČENÍ INFORMACE Michal Brabec http://www.ksi.mff.cuni.cz/ http://www.ksi.mff.cuni.cz/~brabec/ brabec@ksi.mff.cuni.cz gmichal.brabec@gmail.com PODMÍNKY ZÁPOČTU Základní podmínky společné
VícePokročilé architektury počítačů
Pokročilé architektury počítačů 03 Programování paralelních systémů Část II. OpenMP a MPI České vysoké učení technické, fakulta elektrotechnická A4M36PAP Pokročilé architektury počítačů Ver.1.00 1 Přehled:
VíceIT Arhitektura Globalno Belma Ohranović IT Auditor
IT Arhitektura Globalno Belma Ohranović IT Auditor System Landscape Landscape view Šta možemo revidirati? Pitanja? Šta možemo provjeriti za system landscape? Koje zahtjeve možemo pokriti? Šta možemo revidirati?
VíceMotivace. Software. Literatura a odkazy
Využití paralelních výpočtů ve stavební mechanice Motivace Paralelní počítače Software Možnosti využití ve stavební mechanice Příklady Literatura a odkazy 1 Motivace Časová náročnost výpočtů Rozsáhlé úlohy
VíceIB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. RNDr. Jiří Barnat, Ph.D.
IB109 Návrh a implementace paralelních systémů Organizace kurzu a úvod RNDr. Jiří Barnat, Ph.D. Sekce B109 Návrh a implementace paralelních systémů: Organizace kurzu a úvod str. 2/25 Organizace kurzu Organizace
VíceParalelní 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
Vícex86 assembler and inline assembler in GCC
x86 assembler and inline assembler in GCC Michal Sojka sojkam1@fel.cvut.cz ČVUT, FEL License: CC-BY-SA 4.0 Useful instructions mov moves data between registers and memory mov $1,%eax # move 1 to register
VíceProč potřebujeme komunikátory? - pokrač. Týden 4 Programování zasíláním zpráv (MP) - programování v MPI - počítání na svazcích stanic
Proč potřebujeme komunikátory? - pokrač. Týden 4 Programování zasíláním zpráv (MP) - programování v MPI - počítání na svazcích stanic Nelze zajistit různost příznaků: - neznáme příznaky v knihovních podprogramech,
VíceIUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí
Velké projekty v C velký = 100ky a více řádek udržovatelnost, bezpečnost, přehlednost kódu rozdělení programu do více souborů další prvky globální proměnné, řízení viditelnosti proměnných, funkcí Globální
VíceGPU 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
Více1 Rozdělení paralelních úloh z hlediska jejich
Martin Lísal říjen 2003 1 Rozdělení paralelních úloh z hlediska jejich spolupráce během výpočtu Podle spolupráce během výpočtu můžeme rozdělit paralelní úlohy na MPMD (Multiple Program Multiple Data) úlohy
VíceDržavni izpitni center *M * SPOMLADANSKI IZPITNI ROK RAČUNALNIŠTVO NAVODILA ZA OCENJEVANJE. Petek, 10. junij 2011 SPLOŠNA MATURA
ržavni izpitni center *M783* RČUNLNIŠTVO SPOMLNSKI IZPITNI ROK NVOIL Z ONJVNJ Petek,. junij 2 SPLOŠN MTUR RI 2 2 M-78--3 IZPITN POL Obkrožite pravilno trditev.. Kolikšna binarna vrednost je v akumulatorju
VíceNavodila za uporabo Garmin Nüvi 1200
Navodila za uporabo Garmin Nüvi 1200 Kratek povzetek navodil in uporabniški priročnik ste dobili zraven aparata. Tukaj bomo še enkrat omenili pomembnejše postopke uporabe. 1. Predpriprava Prižgite aparat
VíceGPU 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
VícePŘ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
VíceParalelní 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
VíceJava Cvičení 05. CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics
Java Cvičení 05 http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Test 1 Co program vypíše? Hello world Nic Něco jiného package cz.cuni.mff.java.example05.tests; public
VíceZákladní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard
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 (mikroprocesor) patici pro numerický koprocesor (resp. osazený
VíceKnihovny 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
VíceIntel 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í)
VícePokroč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
Více2 Základní funkce a operátory V této kapitole se seznámíme s použitím funkce printf, probereme základní operátory a uvedeme nejdůležitější funkce.
Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv copyright To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby
VíceModel je umělý objekt, který reflektuje a reprodukuje základní vlastnosti, vztahy (strukturu) a funkce konkrétního objektu nebo
Modelování Model je umělý objekt, který reflektuje a reprodukuje základní vlastnosti, vztahy (strukturu) a funkce konkrétního objektu nebo jevu (skutečnosti) jednodušším způsobem a může tedy být využit
VíceProgramski jeziki. Od problema do programa. Od problema do programa
Programski jeziki Od problema do programa Od problema do programa Problem Algoritem (postopek reševanja problema) Zapis v programskem jeziku uporaba ukazov, ki jih znamo izvesti Prevajanje v obliko, ki
VíceOperační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
Vícedostat zdroják Petr Zemek Fakulta informačních technologií VUT v Brně izemek
Zpětný překlad aneb jak z binárky dostat zdroják Petr Zemek Fakulta informačních technologií VUT v Brně Božetěchova 2, 612 66 Brno, ČR http://www.fit.vutbr.cz/ izemek Brněnské Pyvo, 24.4.2014 Něco málo
VíceCharakteristika dalších verzí procesorů v PC
Charakteristika dalších verzí procesorů v PC 1 Cíl přednášky Poukázat na principy tvorby architektur nových verzí personálních počítačů. Prezentovat aktuální pojmy. 2 Úvod Zvyšování výkonu cestou paralelizace
VícePř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í
VíceIUJCE 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
VíceÚvod do mobilní robotiky NAIL028
md at robotika.cz http://robotika.cz/guide/umor08/cs 6. října 2008 1 2 Kdo s kým Seriový port (UART) I2C CAN BUS Podpora jednočipu Jednočip... prostě jenom dráty, čti byte/bit, piš byte/bit moduly : podpora
VíceObecné 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
VíceOperační systémy. Cvičení 3: Programování v C pod Unixem
Operační systémy Cvičení 3: Programování v C pod Unixem 1 Obsah cvičení Editace zdrojového kódu Překlad zdrojového kódu Základní datové typy, struktura, ukazatel, pole Načtení vstupních dat Poznámka: uvedené
VíceVyužití paralelních výpočtů v geodézii
České vysoké učení technické v Praze Fakulta stavební Katedra mapování a kartografie Využití paralelních výpočtů v geodézii DOKTORSKÁ DISERTAČNÍ PRÁCE Ing. Martin Jeřábek Praha, září 2001 Doktorský studijní
VíceVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY TECHNIKY PARALELNÍHO ZPRACOVÁNÍ VÝPOČTŮ
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
VíceÚvod do OpenMP. Jiří Fürst
Úvod do OpenMP Jiří Fürst Osnova: Úvod do paralelního programování Počítače se sdílenou pamětí Základy OpenMP Sdílené a soukromé proměnné Paralelizace cyklů Příklady Úvod do paralelního programování Počítač
VíceVláknové programování část V
Vláknové programování část V Lukáš Hejmánek, Petr Holub {xhejtman,hopet}@ics.muni.cz Laboratoř pokročilých síťových technologií PV192 2012 04 17 1/46 Přehled přednášky Open MP 2/46 Open MP Standard pro
VíceCHARAKTERISTIKA 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
VíceČíslicové měřicí systémy. Téma 4
Téma 4 Programování GPIB Komunikace v systému IEEE 488 je založena na přenosu zpráv mezi řídící jednotkou a měřicími přístroji. Jedné se o zařízení založenými na zprávách - Message Based Device. Programování
VícePokročilé architektury počítačů
Pokročilé architektury počítačů Architektura paměťového a periferního podsystému České vysoké učení technické, Fakulta elektrotechnická A4M36PAP Pokročílé architektury počítačů Ver.1.00 2010 1 Motivace
VíceSazba zdrojových kód. Jakub Kadl ík 20. 03. 2014
Sazba zdrojových kód Jakub Kadl ík 20. 03. 2014 1 Obsah 1 Základní prost edí verbatim 3 2 Balí ek listings 3 3 Sazba kódu z externího souboru 5 4 Téma Solarized 5 4.1 Solarized light.............................
VíceDalší aspekty architektur CISC a RISC Aktuálnost obsahu registru
Cíl přednášky: Vysvětlit principy práce s registry v architekturách RISC a CISC, upozornit na rozdíly. Vysvětlit možnosti využívání sad registrů. Zabývat se principy využívanými v procesorech Intel. Zabývat
VíceAplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a
Aplikace Embedded systémů v Mechatronice Aplikace Embedded systémů v Mechatronice Obsah přednášky: Opakovaní Funkce v C Tvorba knihoven Konfigurační bity #pragma Makra v C #define Debugging v MPLAB Hardware
VíceProjekt. Projektna naloga Naprava za sušenje gela za nohte FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO
FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Projekt Projektna naloga Naprava za sušenje gela za nohte Študenta: Klavdijo Repolusk Indeks št.: E5000713 Smer študija: Telekomunikacije MAG Letnik
VíceParalelní systémy. SIMD jeden tok instrukcí + více toků dat jedním programem je zpracováváno více různých souborů dat
Paralelní systémy Paralelním systémem rozumíme takový systém, který paralelně zpracovává více samostatných úloh nebo zpracování určité úlohy automaticky rozdělí do menších částí a paralelně je zpracovává.
VíceIntervalna ocena parametra
Psihologija UL,. st., Statistično 5.. Ocenjevanje araetrov Univerza v Ljubljani, ilozofska fakulteta, Oddelek za sihologijo Študij rve stonje Psihologija. seester, redet Statistično Izr. rof. dr. Anja
VíceArchitektury CISC a RISC, uplatnění v personálních počítačích
Architektury CISC a RISC, uplatnění v personálních počítačích 1 Cíl přednášky Vysvětlit, jak pracují architektury CISC a RISC, upozornit na rozdíly. Zdůraznit, jak se typické rysy obou typů architektur
VíceDatotečni (zbirčni) sistem - File Management System
1 Datotečni (zbirčni) sistem - File Management System OS upravlja tudi z datotekami (file management) - datotečni sistem omogoča, da uporabnik oz. program dela z datotekami kot z logičnimi bloki, namesto
VíceDržavni izpitni center. Osnovna raven MATEMATIKA. Izpitna pola 1. Torek, 26. avgust 2008 / 120 minut
Š i f r a k a n d i d a t a : Državni izpitni center *M0840* JESENSKI IZPITNI ROK Osnovna raven MATEMATIKA Izpitna pola Torek, 6. avgust 008 / 0 minut Dovoljeno gradivo in pripomočki: Kandidat prinese
VícePB071 Programování v jazyce C Jaro 2015
Programování v jazyce C Jaro 2015 Argumenty main(), Typový systém, Dynamická alokace Organizační Polosemestrální test Úterý 7. dubna v 10:00 a 11:00 v D1 20 bodů rozdíl mezi E a C Zdroj: http://www.bugemos.com/?node=342
VíceNikola Tesla ( ) Pripravil : Samo Podlesek,
Nikola Tesla (1856 1943) Pripravil : Samo Podlesek, 1. Kdo je bil nikola tesla? Nikola Tesla je bil srbsko ameriški znanstvenik, izumitelj, fizik, elektroinženir in matematik. Rodil se je 10. julija 1856
VíceCUDA 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
VíceStruktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
VíceProcesor. 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é
VíceMatematika v programovacích
Matematika v programovacích jazycích Pavla Kabelíková am.vsb.cz/kabelikova pavla.kabelikova@vsb.cz Úvodní diskuze Otázky: Jaké programovací jazyky znáte? S jakými programovacími jazyky jste již pracovali?
Vícezlatarna E.LECLERC Po ok Od 1O. januarja do 31. decembra 2O18
zlatarna E.LECLERC Po ok Od 1O. januarja do 31. decembra 2O18 KREATORJI Alice Varini 2 1 3 4 5 7 KREATORJI 9 6 8 10 Renato Bertuzzo NAŠ NAKIT IMA DVELETNO GARANCIJO ZA VSE OKVARE IN PRIKRITE NAPAKE 11
VíceSprávné vytvoření a otevření textového souboru pro čtení a zápis představuje
f1(&pole[4]); funkci f1 předáváme hodnotu 4. prvku adresu 4. prvku adresu 5. prvku hodnotu 5. prvku symbolická konstanta pro konec souboru je eof EOF FEOF feof Správné vytvoření a otevření textového souboru
VícePROCESOR. 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ě
VíceÚvod do mobilní robotiky AIL028
md at robotika.cz http://robotika.cz/guide/umor07/cs 11. října 2007 1 Definice Historie Charakteristiky 2 MCU (microcontroller unit) ATmega8 Programování Blikání LEDkou 3 Kdo s kým Seriový port (UART)
VíceÚ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
VíceOsnove programiranja 2 Naloge laboratorijskih vaj
Osnove programiranja 2 Naloge laboratorijskih vaj za študijsko leto 2006/2007 Navodila o opravljanju laboratorijskih vaj so objavljena na spletnih straneh predmeta. Naloge iz C morate zagovoriti v prvi
VíceZáklady digitální techniky
Základy digitální techniky Binarna aritmetika. Tabulky Karno. Operace logické a aritmetické; Binarna aritmetika. č. soust zákl. Abeceda zápis čísla binarní B=2 a={0,1} 1100 oktalová B=8 a={0,1,2,3,4,5,6,7}
VícePokroč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í
VícePROGRAMOVACÍ JAZYKY A PŘEKLADAČE STRUKTURA PŘEKLADAČE
PROGRAMOVACÍ JAZYKY A PŘEKLADAČE STRUKTURA PŘEKLADAČE 2011 Jan Janoušek BI-PJP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Základní informace Přednášky: doc. Ing. Jan Janoušek, Ph.D.
VícePRAVILA IGRE NA SREČO LOTO (prečiščeno besedilo)
Loterija Slovenije, d. d. Ljubljana, Gerbičeva ulica 99 PRAVILA IGRE NA SREČO LOTO (prečiščeno besedilo) Prečiščeno besedilo pravil igre na srečo loto vsebuje pravila igre na srečo loto številka 133/02
Vícea co je operační systém?
a co je operační systém? Funkce vylepšení HW sjednocení různosti zařízení ulehčení programování (např. časové závislosti) přiblížení k potřebám aplikací o soubory namísto diskových bloků o více procesorů
VíceJiné 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
VíceSPALNICE.
SPALNICE www.iles.si SPALNICE LUNA. MIREN SPANEC POD ZVEZDAMI. ZAKAJ IZBRATI ILES? SLOVENSKA KAKOVOST TRADICIJA ODLIČEN SERVIS SODOBNOST FUNKCIONALNOST PRILAGODLJIVOST 01/ LARIX Že 60 let ustvarjamo z
Více2 Datové typy v jazyce C
1 Procedurální programování a strukturované programování Charakteristické pro procedurální programování je organizace programu, který řeší daný problém, do bloků (procedur, funkcí, subrutin). Původně jednolitý,
VíceREALIZACE 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
VíceOPS 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
VíceObsah přednášky. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace UML. Co je diagram tříd. Ing. Ondřej Guth
Evropský sociální fond. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace Ing. Ondřej Guth Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze
VíceOSNOVNE KOMPONENTE BU OSNOVNE KOMPONENTE BARVNEGA UPRAVLJANJA. Tadeja Muck govorilne ure: ponedeljek 12:00 13:00
STANDARDIZACIJA GRAFIČNIH PROCESOV OSNOVNE KOMPONENTE BARVNEGA UPRAVLJANJA Tadeja Muck e-mail: tadeja.muck@ntf.uni-lj.si govorilne ure: ponedeljek 12:00 13:00 OSNOVNE KOMPONENTE BU q q PCS upodobitveni
VíceTechnické 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í
VíceJava Cvičení 01. CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics
Java Cvičení 01 http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Příklady - Porovnání Co kód vypíše? package cz.cuni.mff.java.example01.tests; public class Test01
VíceDelo z datotekami v C#
Delo z datotekami v C# Srečo Uranič 2 KAZALO Datoteke... 3 Kaj je datoteka... 3 Branje in pisanje na tekstovne datoteke... 4 Ustvarimo datoteko... 4 Pisanje na datoteko... 8 Branje tekstovnih datotek...
VíceSbě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:
VíceProcesor 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
VíceKVIZ Osnove elektrotehnike II magnetostatika
KVIZ Osnove elektrotehnike II magnetostatika 1. KVIZ : Sila med tokovodniki 1. Določite silo med dvema ravnima, tankima, vzporednima vodnikoma s tokoma 50 A na dolžini 10 m. Vodnika sta razmaknjena za
VíceUniverzita Jana Evangelisty Purkyně v Ústí nad Labem. Přírodovědecká fakulta
Univerzita Jana Evangelisty Purkyně v Ústí nad Labem Přírodovědecká fakulta PARALELNÍ PROGRAMOVÁNÍ S APLIKACEMI Martin Lísal 2007 Studijní opora je určena studentům, kteří jsou zběhlí v programování v
VíceMultiplatformní GUI toolkity
Multiplatformní GUI toolkity GTK+ a Qt Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI GUI toolkit (widget toolkit) (1) = programová knihovna (nebo kolekce knihoven) implementující prvky
VíceNvidia 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
VícePo vrsti z leve proti desni so obrazi Blaž, Erik, Dane, Andrej, Andraž, Bor.
Rešitve 8. in 9. razred 1. naloga Po vrsti z leve proti desni so obrazi Blaž, Erik, Dane, Andrej, Andraž, Bor. Zadnja izjava nam pove, da sta plešasta Dane in Erik. Predzadnja pa, da imata Dane in Bor
VíceÚ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
VíceUporabniški priročnik. Kosovni management. Hermes d.o.o. Prušnikova Ljubljana-Šentvid.
Uporabniški priročnik Hermes d.o.o. Prušnikova 2 1210 LjubljanaŠentvid www.hermes2.net info@hermes2.net 1. Opis 3 1.1 Kosovni Management... 3 1.2 Odklepanje... 3 2. Razširitveni moduli 3 3. Nastavitve
VíceORGANIZAČNÍ A VÝPOČETNÍ TECHNIKA
Střední škola, Havířov Šumbark, Sýkorova 1/613, příspěvková organizace ORGANIZAČNÍ A VÝPOČETNÍ TECHNIKA PROCESORY Ing. Bouchala Petr 2010 Vytištěno pro vnitřní potřebu školy PROCESORY 1.Úvod základní pojmy
VícePř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
VíceMartin Lísal. Úvod do MPI
Martin Lísal září 2003 PARALELNÍ POČÍTÁNÍ Úvod do MPI 1 1 Co je to paralelní počítání? Paralelní počítání je počítání na paralelních počítačích či jinak řečeno využití více než jednoho procesoru při výpočtu
VíceKubatova 19.4.2007 Y36SAP - 13. procesor - control unit obvodový a mikroprogramový řadič RISC. 19.4.2007 Y36SAP-control unit 1
Y36SAP - 13 procesor - control unit obvodový a mikroprogramový řadič RISC 19.4.2007 Y36SAP-control unit 1 Von Neumannova architektura (UPS1) Instrukce a data jsou uloženy v téže paměti. Paměť je organizována
VíceKomunikacije v avtomatiki
Univerza v Ljubljani Fakulteta za elektrotehniko Komunikacije v avtomatiki Podatkovno linijski sloj Stanislav Kovačič http://vision.fe.uni-lj.si 2013/14 Podatkovno linijski sloj Podatkovno linijski sloj
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VíceZákladní datové struktury
Základní datové struktury Martin Trnečka Katedra informatiky, Přírodovědecká fakulta Univerzita Palackého v Olomouci 4. listopadu 2013 Martin Trnečka (UPOL) Algoritmická matematika 1 4. listopadu 2013
Více