Paralelní výpočetní jádro matematického modelu elektrostatického zvlákňování

Rozměr: px
Začít zobrazení ze stránky:

Download "Paralelní výpočetní jádro matematického modelu elektrostatického zvlákňování"

Transkript

1 Paralelní výpočetní jádro matematického modelu elektrostatického zvlákňování Milan Šimko Technická univerzita v Liberci Interní odborný seminář KO MIX 19. prosince 2011

2 Obsah prezentace 1 MOTIVACE 2 VLÁKNOVÝ PARALELISMUS 3 IMPLEMENTACE 4 ZÁVĚR Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 2/ 20

3 Obsah prezentace MOTIVACE 1 MOTIVACE 2 VLÁKNOVÝ PARALELISMUS 3 IMPLEMENTACE 4 ZÁVĚR Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 3/ 20

4 MOTIVACE Motivace Paralelizace výpočetního jádra vyvíjeného počítačového programu byla motivována dvěma hlavními důvody: požadavek na maximální využití výkonu vícejádrových procesorů výpočetní stanice, optimalizace výpočetního času. S ohledem na hardware výpočetní stanice jsem zvolil cestu paralelizace pomocí OpenMP. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 4/ 20

5 MOTIVACE Motivace Paralelizace výpočetního jádra vyvíjeného počítačového programu byla motivována dvěma hlavními důvody: požadavek na maximální využití výkonu vícejádrových procesorů výpočetní stanice, optimalizace výpočetního času. S ohledem na hardware výpočetní stanice jsem zvolil cestu paralelizace pomocí OpenMP. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 4/ 20

6 MOTIVACE Motivace Paralelizace výpočetního jádra vyvíjeného počítačového programu byla motivována dvěma hlavními důvody: požadavek na maximální využití výkonu vícejádrových procesorů výpočetní stanice, optimalizace výpočetního času. S ohledem na hardware výpočetní stanice jsem zvolil cestu paralelizace pomocí OpenMP. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 4/ 20

7 MOTIVACE Motivace Paralelizace výpočetního jádra vyvíjeného počítačového programu byla motivována dvěma hlavními důvody: požadavek na maximální využití výkonu vícejádrových procesorů výpočetní stanice, optimalizace výpočetního času. S ohledem na hardware výpočetní stanice jsem zvolil cestu paralelizace pomocí OpenMP. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 4/ 20

8 Obsah prezentace VLÁKNOVÝ PARALELISMUS 1 MOTIVACE 2 VLÁKNOVÝ PARALELISMUS 3 IMPLEMENTACE 4 ZÁVĚR Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 5/ 20

9 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

10 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

11 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

12 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

13 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

14 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

15 VLÁKNOVÝ PARALELISMUS Open Multi Processing Co je OpenMP? Standardizované rozhraní pro paralelní programování aplikací běžících na počítačových systémech se sdílenou pamětí. Sestává se ze sady direktiv pro kompilátor, knihovních metod a proměnných prostředí. Dostupné pro programovací jazyky C, C++ a Fortran. Vícevláknový paralelismus fork/join. Na vývoji se podílí hlavní výrobci hardwaru a softwaru(amd, IBM, Intel, Oracle, atd.). Aktuální verze projektu 3.1(9. červenec 2011, GNU/gcc v4.7). Domovská stránka projektu Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 6/ 20

16 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

17 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

18 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

19 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

20 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

21 VLÁKNOVÝ PARALELISMUS Open Multi Processing OpenMP vs. MPI Jednoduchost a přenositelnost. Možnost paralelizace jen nejkritičtějších částí programu. Omezeno pouze na systémy se sdíleným paměťovým prostorem. Vyžaduje překladač s podporou OpenMP. Poznámka(Podpora OpenMP v sadě kompilátorů GNU/gcc) $ gcc -fopenmp -o hello hello.c $ g++ -fopenmp -o hello hello.cpp $ gfortran -fopenmp -o hello hello.f95 Projekt v QtCreatoru: následující řádky vložit do souboru hello.pro 1 QMAKE_CXXFLAGS += -fopenmp 2 QMAKE_LFLAGS += -fopenmp Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 7/ 20

22 Obsah prezentace IMPLEMENTACE 1 MOTIVACE 2 VLÁKNOVÝ PARALELISMUS 3 IMPLEMENTACE 4 ZÁVĚR Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 8/ 20

23 IMPLEMENTACE QApplication MainWindow: QMainWindow QApplication::exec() GLWidget: QGLWidget ToolBar: QToolBar hlavní vlákno aplikace paralelní výpočetní jadro Kernel:QThread:Model QThread::exec() CircleCollector ICollector WireCollector Obr. 1: Hierarchický diagram tříd. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 9/ 20

24 IMPLEMENTACE QThread::exec() QThread tok instrukcí Obr. 2: Schema vláknového paralelismu uvnitř výpočetního vlákna. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 10/ 20

25 IMPLEMENTACE vlákno 0 vlákno 1 QThread::exec() QThread FORK vlákno 2. vlákno n tok instrukcí Obr. 2: Schema vláknového paralelismu uvnitř výpočetního vlákna. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 10/ 20

26 IMPLEMENTACE vlákno 0 vlákno 1 QThread::exec() QThread FORK vlákno 2. vlákno n JOIN tok instrukcí Obr. 2: Schema vláknového paralelismu uvnitř výpočetního vlákna. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 10/ 20

27 IMPLEMENTACE vlákno 0 vlákno 1 QThread::exec() vlákno 0 vlákno 1 QThread FORK vlákno 2. JOIN FORK vlákno 2. JOIN vlákno n tok instrukcí vlákno n Obr. 2: Schema vláknového paralelismu uvnitř výpočetního vlákna. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 10/ 20

28 IMPLEMENTACE Obr. 3: Vývojový diagram. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 11/ 20

29 IMPLEMENTACE 1 void Model::computeFFE(const int &n0, 2 const int &n, 3 const double &t, 4 const unsigned short &kold, 5 BEAD *pb) 6{ 7 double *pe = new double [3]; 8#pragma omp parallel for shared(pb) 9 for (int i = n0; i < n; ++i) { 10 pe = pic->computefield(kold, pb[i].rr); 11 pb[i].ffe[x] = KE/pB[i].m*pE[X]*pB[i].q; 12 pb[i].ffe[y] = KE/pB[i].m*pE[Y]*pB[i].q; 13 pb[i].ffe[z] = KE/pB[i].m*pE[Z]*pB[i].q; 14 } // end of parallel loop 15 delete [] pe; pe = 0; 16} Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 12/ 20

30 IMPLEMENTACE 1 void Kernel::eulerCromer(const int &n0, 2 const int &n, 3 const double &t, 4 const double &dt, 5 const unsigned short &kold, 6 const unsigned short &knew, 7 BEAD *pb, DUMBBELL *pd) 8{ 9#pragma omp parallel sections 10 { 11#pragma omp section 12 { 13 computeffc(n0, n, t, kold, pb); 14 } 15 [...]; 16 } // end of parallel sections Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 13/ 20

31 IMPLEMENTACE 11#pragma omp barrier 12#pragma omp parallel for shared(pb,pd) 13 for (int i = n0; i < n-1; ++i) { 14 // ODE(1): Constitutive equation 15 pd[i].s[knew] = [...]; 16 // ODE(2): Motion equation 17 pb[i].vv[x][knew] = [...]; 18 pb[i].vv[y][knew] = [...]; 19 pb[i].vv[z][knew] = [...]; 20 // ODE(3): Kinematics equation 21 pb[i].rr[x][knew] = [...]; 22 pb[i].rr[y][knew] = [...]; 23 pb[i].rr[z][knew] = [...]; 24 } // end of parallel loop 25} Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 14/ 20

32 IMPLEMENTACE 1 void Kernel::computeErr(const double &rb, 2 const double &_rb, 3 double &err_max) 4{ 5 double err = 2.0*fabs(_rB-rB); 6#pragma omp critical 7 if (err > err_max) 8 err_max = err; 9#ifdef DEBUG 10 qdebug("error %12.7f Error max: %12.7f", 11 err, err_max); 12#endif 13} Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 15/ 20

33 Obsah prezentace ZÁVĚR 1 MOTIVACE 2 VLÁKNOVÝ PARALELISMUS 3 IMPLEMENTACE 4 ZÁVĚR Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 16/ 20

34 ZÁVĚR Tab. 1: Porovnání výpočetních časů sériového a paralelního zdrojového kódu v závislosti na velikosti řešené úlohy. N Čas a (s) Čas b (s) a Sekvenčníaplikace. b Paralelníaplikace. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 17/ 20

35 ZÁVĚR N= 100 N= 200 N= 400 N= 800 N=1600 výpočetní čas(s) počet vláken v paralelním týmu Obr. 4: Grafické znázornění výsledků porovnání výpočetních časů sériového a paralelního zdrojového kódu v závislosti na velikosti řešené úlohy. Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 18/ 20

36 ZÁVĚR Použité zdroje [1] OpenMP Application Program Interface v3.0, May Dostupné z: [2] OpenMP Application Program Interface v3.1, July Dostupné z: [3]QUINN,M.J. ParallelProgramminginCwithMPIandOpenMP. 1stedition.NewYork:McGraw Hill, s. ISBN [4] STALLMAN, R. M. the gcc Developer Community. Using the GNU Compiler Collection v4.6.2, October Dostupné z: Milan Šimko (TUL) Modelování bičující nestability Odborný seminář KO MIX 19/ 20

37 Děkuji za pozornost. PODĚKOVÁNÍ: Vytvořeno za podpory projektu ESF č. CZ.1.07/2.3.00/ Vytvoření a rozvoj týmu pro náročné technické výpočty na paralelních počítačíchnatuvliberci. Milan Šimko Technická univerzita v Liberci Studentská 2, Liberec Česká republika Sazba systémem LATEX

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 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

Více

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

Obsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21 Stručný obsah 1. Hardware, procesory a vlákna... 19 2. Programování s ohledemna výkon... 45 3. Identifikování příležitostí pro paralelizmus... 93 4. Synchronizace a sdílení dat... 123 5. Vlákna v rozhraní

Více

Programování v C++ 1, 1. cvičení

Programování v C++ 1, 1. cvičení Programování v C++ 1, 1. cvičení opakování látky ze základů programování 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 2 Shrnutí procvičených

Více

Úvod do OpenMP. Jiří Fürst

Ú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íce

Matematika v programovacích

Matematika 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íce

Martin Lísal. Úvod do MPI

Martin 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íce

Vláknové programování část V

Vlá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íce

Vláknové programování část I

Vláknové programování část I Vláknové programování část I Lukáš Hejmánek, Petr Holub {xhejtman,hopet}@ics.muni.cz Laboratoř pokročilých síťových technologií PV192 2015 04 07 1/27 Vláknové programování v C/C++ 1. Procesy, vlákna, přepínání

Více

Ústav technické matematiky FS ( Ústav technické matematiky FS ) / 35

Ú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íce

Vlákna a přístup ke sdílené paměti. B4B36PDV Paralelní a distribuované výpočty

Vlákna a přístup ke sdílené paměti. B4B36PDV Paralelní a distribuované výpočty Vlákna a přístup ke sdílené paměti B4B36PDV Paralelní a distribuované výpočty Minulé cvičení: Paralelizace nám může pomoct... 1 Minulé cvičení: Paralelizace nám může pomoct... B4B36PDV: Ale ne všechny

Více

Motivace. Software. Literatura a odkazy

Motivace. 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íce

Vícevláknové programování na CPU: POSIX vlákna a OpenMP I. Šimeček

Vícevláknové programování na CPU: POSIX vlákna a OpenMP I. Šimeček Vícevláknové programování na CPU: POSIX vlákna a OpenMP 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.2

Více

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

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

Více

Optimalizace pomocí icc/gcc - vektorizace

Optimalizace pomocí icc/gcc - vektorizace Optimalizace pomocí icc/gcc - vektorizace ICC/ICPC ICC/ICPC - překladače pro jazyky C/C++ od firmy Intel ke stažení po registraci na http://www.intel.com/cd/software/products/asmona/eng/compilers/clin/219856.htm

Více

Programování bez vláken. OpenMP

Programování bez vláken. OpenMP Programování bez vláken Tradiční přístup je vytvoření vícevláknového programu, kde se řekne, co má které vlákno dělat Ale jde to i jinak, lze vytvořit program tak, že se řekne, co se má udělat paralelně

Více

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

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

Více

Paralelní programování

Paralelní programování Paralelní programování přednášky Jan Outrata únor květen 2011 Jan Outrata (KI UP) Paralelní programování únor květen 2011 1 / 15 Simulátor konkurence abstrakce = libovolné proložení atom. akcí sekvenčních

Více

Paralelní architektury se sdílenou pamětí

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

Více

Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016

Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016 Preprocesor Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016 Programování v C++, A7B36PJC 4/2016, Lekce 9b https://cw.fel.cvut.cz/wiki/courses/a7b36pjc/start

Více

Paralelní architektury se sdílenou pamětí

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

Více

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

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

Více

Pokročilé architektury počítačů

Pokroč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íce

C2115 Praktický úvod do superpočítá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

Více

Úvod do B4B36PDV. Organizace předmětu a seznámení se s paralelizací. B4B36PDV Paralelní a distribuované výpočty

Úvod do B4B36PDV. Organizace předmětu a seznámení se s paralelizací. B4B36PDV Paralelní a distribuované výpočty Úvod do B4B36PDV Organizace předmětu a seznámení se s paralelizací B4B36PDV Paralelní a distribuované výpočty Osnova Čím se budeme zabývat? Hodnocení předmětu Úvod do paralelního hardwaru a softwaru 1

Více

Cvičení MI-PAP I. Šimeček, M. Skrbek, J. Trdlička

Cvičení MI-PAP I. Šimeček, M. Skrbek, J. Trdlička Cvičení MI-PAP I. Šimeček, M. Skrbek, J. Trdlička 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, Cvičení 1-6 Příprava studijního

Více

Jakub Čermák jakub@jcermak.cz, http://www.jcermak.cz Microsoft Student Partner

Jakub Čermák jakub@jcermak.cz, http://www.jcermak.cz Microsoft Student Partner Jakub Čermák jakub@jcermak.cz, http://www.jcermak.cz Microsoft Student Partner Co paralelizace přinese? Jak paralelizovat? Jak si ušetřit práci? Jak nedělat běžné paralelizační chyby? Race condition, deadlocky

Více

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013 Předměty Algoritmizace a programování Seminář z programování Verze pro akademický rok 2012/2013 Verze pro akademický rok 2012/2013 1 Přednášky Jiřina Královcová MTI, přízemí budovy A Tel: 48 53 53 521

Více

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

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

Více

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

SUPERPOČÍTAČE DANIEL LANGR ČVUT FIT / VZLÚ SUPERPOČÍTAČE DANIEL LANGR ČVUT FIT / VZLÚ TITAN / HOPPER / NOTEBOOK TITAN HOPPER NOTEBOOK Počet CPU jader 299 008 153 216 2 Operační paměť [GB] 598 016 217 000 8 Počet GPU (CUDA) jader 50 233 344 0 8

Více

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

Real Time programování v LabView. Ing. Martin Bušek, Ph.D. Real Time programování v LabView Ing. Martin Bušek, Ph.D. Úvod - související komponenty LabVIEW development Konkrétní RT hardware - cíl Použití LabVIEW RT module - Pharlap ETS, RTX, VxWorks Možnost užití

Více

IUJCE 07/08 Přednáška č. 1

IUJCE 07/08 Přednáška č. 1 Úvod do předmětu Literatura Záznamy přednášek a vaše poznámky Harbison, S. P., Steele, G. L.: Referenční příručka jazyka C Herout, P.: Učebnice jazyka C Kernighan, B. W., Ritchie, D. M.: The C Programming

Více

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

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í

Více

IB109 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. 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íce

Novinky ve Visual Studio 2010. Tomáš Kroupa Tomas.Kroupa@hotmail.com

Novinky ve Visual Studio 2010. Tomáš Kroupa Tomas.Kroupa@hotmail.com Novinky ve Visual Studio 2010 Tomáš Kroupa Tomas.Kroupa@hotmail.com O čem si dnes řekneme Visual studio 2010 (beta 2) Jazyk C# 4.0 ASP.NET 4.0.NET 4.0 Visual Studio 2010 Beta 2 Jak získat Testovací verze

Více

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

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_13_HARDWARE_S1 Číslo projektu: CZ 1.07/1.5.00/34.1077

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Strukturované proměnné Struktura, union Jazyk C České vysoké učení technické Fakulta elektrotechnická A8B14ADP Jazyk C - Strukturované proměnné Ver.1.10 J. Zděnek 20151 Struktura

Více

Úvod do GPGPU J. Sloup, I. Šimeček

Ú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íce

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

1. Zpracování událostí na pozadí aplikace

1. Zpracování událostí na pozadí aplikace 1. Zpracování událostí na pozadí aplikace Ing. Michal Bližňák, Ph.D. Ústav informatiky a umělé inteligence Fakulta aplikované informatiky UTB Zĺın Paralelní procesy a programování, Zĺın, 3. února 2014

Více

Úvod. Programovací paradigmata

Úvod. Programovací paradigmata .. Úvod. Programovací paradigmata Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Cíl: programování efektivně a bezpečně Programovací techniky

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Energetický ústav Odbor termomechaniky a techniky prostředí. Možnosti implementace vlastního kódu pro použití v simulačním software TRNSYS

Energetický ústav Odbor termomechaniky a techniky prostředí. Možnosti implementace vlastního kódu pro použití v simulačním software TRNSYS Možnosti implementace vlastního kódu pro použití v simulačním software TRNSYS Lubomír KLIMEŠ Energetický ústav Odbor termomechaniky a techniky prostředí Fakulta strojního inženýrství Vysoké učení technické

Více

Procesy a vlákna (Processes and Threads)

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

Více

Multiplatformní GUI knihovna

Multiplatformní GUI knihovna Úvod ke knihovnì Qt Multiplatformní GUI knihovna Qt = jedna ze dvou nejpopulárnìjších multiplatformních knihoven na tvorbu programù s grafickým uživatelským rozhraním. Pomocí Qt jsou naprogramovány napø.

Více

Vláknové programování část V

Vlá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 2010 04 08 1/60 Přehled přednášky Open MP 2/60 Open MP Standard pro

Více

4. Úvod do paralelismu, metody paralelizace

4. Úvod do paralelismu, metody paralelizace 4. Úvod do paralelismu, metody paralelizace algoritmů Ing. Michal Bližňák, Ph.D. Ústav informatiky a umělé inteligence Fakulta aplikované informatiky UTB Zĺın Paralelní procesy a programování, Zĺın, 26.

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:

int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li: 13.4.2010 Typová konverze - změna jednoho datového typu na jiný - známe dva základní implicitní ("sama od sebe") a explicitní (výslovně vyžádána programátorem) - C je málo přísné na typové kontroly = dokáže

Více

Paralelní programování

Paralelní programování Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 11 Literatura Ben-Ari M.: Principles of concurrent and distributed programming.

Více

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

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

Více

VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE

VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE Přednáška na semináři CAHP v Praze 4.9.2013 Prof. Ing. Petr Noskievič, CSc. Ing. Miroslav Mahdal, Ph.D. Katedra automatizační

Více

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

Architektury paralelních počítačů I. Architektury paralelních počítačů I. Úvod, Koherence a konzistence u SMP Ing. Miloš Bečvář s použitím slajdů Prof. Ing. Pavla Tvrdíka, CSc. Osnova přednášky Typy paralelismu a jejich využití v arch. poč.

Více

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

IB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. Jiří Barnat IB109 Návrh a implementace paralelních systémů Organizace kurzu a úvod Jiří Barnat Sekce IB109 Návrh a implementace paralelních systémů: Organizace kurzu a úvod str. 2/32 Organizace kurzu Organizace kurzu

Více

Implementace numerických metod v jazyce C a Python

Implementace numerických metod v jazyce C a Python Fakulta elektrotechnická Katedra matematiky Dokumentace k semestrální práci Implementace numerických metod v jazyce C a Python 2013/14 Michal Horáček a Petr Zemek Vyučující: Mgr. Zbyněk Vastl Předmět:

Více

MetaCentrum Aplikace a jejich další podpora

MetaCentrum Aplikace a jejich další podpora MetaCentrum Aplikace a jejich další podpora Jan Kmuníček CESNET & ÚVT MU meta.cesnet.cz Obsah Obecná charakteristika Dostupné programy Licence Aplikační podpora Nové služby 2 Charakteristika Aplikace v

Více

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí) Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog

Více

Operač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 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íce

Paralelizace výpočtů v systému Mathematica

Paralelizace výpočtů v systému Mathematica Paralelizace výpočtů v systému Mathematica Zdeněk Buk bukz1@fel.cvut.cz České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů 2010 2 paralelizace-2010-buk-eval.nb Úvod Obsah prezentace

Více

Tvorba počítačových clusterů pomocí Linuxu. Vedoucí práce: Mgr. Jiří Pech, Ph.D. Katedra informatiky

Tvorba počítačových clusterů pomocí Linuxu. Vedoucí práce: Mgr. Jiří Pech, Ph.D. Katedra informatiky Tvorba počítačových clusterů pomocí Linuxu Řešitel: Petr Ciml Vedoucí práce: Mgr. Jiří Pech, Ph.D. Katedra informatiky ik Zásady pro vypracování Pod pojmem počítačový cluster zde rozumíme skupinu více

Více

Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch

Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch Cvičení předmětu MI-PAR P Tvrdík, I Šimeček, M Šoch paveltvrdik,xsimecek,soch@fitcvutcz Katedra počítačových systémů FIT České vysoké učení technické v Praze 2011 MI-PAR, ZS2011/12, Cv1-6 Příprava studijního

Více

Seznámení s prostředím dot.net Framework

Seznámení s prostředím dot.net Framework Základy programování v jazyce C# Seznámení s prostředím dot.net Framework PL-Prostředí dot.net - NET Framework Je základním stavebním prvkem, na kterém lze vytvářet software. Jeho součásti a jádro je založené

Více

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí) Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog

Více

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

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čů

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Využijte plný výkon procesorů s více jádry v LabVIEW 8.5

Využijte plný výkon procesorů s více jádry v LabVIEW 8.5 Využijte plný výkon procesorů s více jádry v LabVIEW 8.5 Rychlosti procesorů narazily během posledních let na strop. Mooreův zákon, který říká, že počet tranzistorů na čipu se zdvojnásobí každých 18 až

Více

Paralelní výpočty na clusteru KMD

Paralelní výpočty na clusteru KMD Paralelní výpočty na clusteru KMD Jiří Hozman jiri.hozman@tul.cz Technická univerzita v Liberci Fakulta přírodovědně-humanitní a pedagogická Katedra matematiky a didaktiky matematiky Vytvoření a rozvoj

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 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íce

Úvod z historie. Kompilátory. Kompilace / Kompilátor Compile / Compiler. Pojem kompilátoru. Úvod z historie

Úvod z historie. Kompilátory. Kompilace / Kompilátor Compile / Compiler. Pojem kompilátoru. Úvod z historie Úvod z historie RNDr. Miroslav Benedikovič John Louis von Neumann r. 1946 nová koncepce počítače (společná paměť pro kód programu a zpracovávaná data) vytvořila podmínky pro vznik softvéru na přípravu

Více

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 12 0:40 UML unifikovaný modelovací jazyk Zkratka tohoto

Více

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

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

Více

Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a

Aplikace 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íce

CERIT SCIENTIFIC CLOUD. Centrum CERIT-SC. Luděk Matyska. Praha, Seminář MetaCentra, 15. 10. 2010

CERIT SCIENTIFIC CLOUD. Centrum CERIT-SC. Luděk Matyska. Praha, Seminář MetaCentra, 15. 10. 2010 Centrum CERIT-SC Luděk Matyska Praha, Seminář MetaCentra, 15. 10. 2010 Poslání Centrum CERIT-SC (CERIT Scientific Cloud 1 je národním centrem poskytujícím flexibilní úložné a výpočetní kapacity a související

Více

Úvod do programování v jazyce Java

Úvod do programování v jazyce Java Úvod do programování v jazyce Java Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci 5. říjen, 2011 Petr Krajča (UP) KMI/UP3J: Seminář I. 5.10.2011 1 / 17 Organizační informace email: petr.krajca@upol.cz

Více

Programování inženýrských aplikací

Programování inženýrských aplikací Výchova studentů pro aplikace řešené na výkonných počítačích České vysoké učení technické v Praze Fakulta strojní Programování inženýrských aplikací Jiří Fürst TENTO PROJEKT JE SPOLUFINANCOVÁN EVROPSKÝM

Více

NĚKTERÉ ASPEKTY TVORBY KNIHOVEN V JAZYCE R

NĚKTERÉ ASPEKTY TVORBY KNIHOVEN V JAZYCE R NĚKTERÉ ASPEKTY TVORBY KNIHOVEN V JAZYCE R Ladislav Beránek Katedra informatiky, PF, JCU Jihočeská Universita, České Budějovice, Jeronýmova 10, 371 15 České Budějovice beranek@pf.jcu.cz ABSTRAKT: Jazyk

Více

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

METACentrum Český národní gridovýprojekt. Projekt METACentrum. Jan Kmuníček ÚVT MU & CESNET. meta.cesnet.cz METACentrum Český národní gridovýprojekt Projekt METACentrum Jan Kmuníček ÚVT MU & CESNET meta.cesnet.cz Motivace Gridu METACentrum organizace technické zázemí aplikační vybavení poskytované služby podpora

Více

První kroky s METEL IEC IDE

První kroky s METEL IEC IDE První kroky s poskytuje programování v IEC 61131-3 jazycích, podporuje jak grafickou tak textovou podobu. Umožňuje vytvářet, upravovat a ladit IEC 61131-3 (ST, LD, IL, FBD) programy pro řídicí jednotky

Více

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

Paralelní výpočty ve finančnictví Paralelní výpočty ve finančnictví Jan Houška HUMUSOFT s.r.o. houska@humusoft.cz Výpočetně náročné úlohy distribuované úlohy mnoho relativně nezávislých úloh snížení zatížení klientské pracovní stanice

Více

Název diplomové práce: Srovnávač životního pojištění. Určení: Bakalářská práce. Vedoucí: Doc. Ing. Petr Sosík, Dr.

Název diplomové práce: Srovnávač životního pojištění. Určení: Bakalářská práce. Vedoucí: Doc. Ing. Petr Sosík, Dr. Název diplomové práce: Srovnávač životního pojištění Určení: Bakalářská práce Konzultant: Ing. Mgr. Barbora Volná, Ph.D. Cíl práce: Naprogramovat srovnávač životního pojištění, který spadá pod obor automatizace

Více

IUJCE 07/08 Přednáška č. 6

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

Více

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 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

Více

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

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

Více

Pokročilé architektury počítačů

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

Více

Pavel Procházka. 3. prosince 2014

Pavel Procházka. 3. prosince 2014 Jazyk C# (seminář 11) Pavel Procházka KMI 3. prosince 2014 Motivace Dnes už se prakticky nedělají jednojádrové procesory pokud potřebujeme výkon, musíme zapojit všechna jádra Často potřebujeme dělat více

Více

MetaCentrum. Tomáš Rebok MetaCentrum NGI, CESNET z.s.p.o. CERIT-SC, Masarykova Univerzita Olomouc,

MetaCentrum. Tomáš Rebok MetaCentrum NGI, CESNET z.s.p.o. CERIT-SC, Masarykova Univerzita Olomouc, MetaCentrum Tomáš Rebok MetaCentrum NGI, CESNET z.s.p.o. CERIT-SC, Masarykova Univerzita (rebok@ics.muni.cz) Olomouc, 2. 4. 2012 Ústav experimentální botaniky AV ČR, Olomouc MetaCentrum @ CESNET výzkumná

Více

Úvod do operačního systému Linux Mgr. Josef Horálek

Úvod do operačního systému Linux Mgr. Josef Horálek Úvod do operačního systému Linux Mgr. Josef Horálek 2011 20.let Linuxu Historie GNU/Linux = 1970 - Ken Thompson a Dennis Ritchie vyvinuli a implementovali systém UNIX, který se stal základem mnoha moderních

Více

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

C2115 Praktický úvod do superpočítání C2115 Praktický úvod do superpočítání VI. 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

Více

Pohled do nitra mikroprocesoru Josef Horálek

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á

Více

CASE. Jaroslav Žáček

CASE. Jaroslav Žáček CASE Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Co znamená CASE? Definice dle SEI A CASE tool is a computer-based product aimed at supporting one or more software engineering activities

Více

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost Programování Algoritmus návod na vykonání činnosti, který nás od (měnitelných) vstupních dat přivede v konečném čase k výsledku přesně definovaná konečná posloupnost činností vedoucích k výsledku (postup,

Více

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25 Programování v C# Úvodní slovo 1 / 25 Obsah přednášky Seznámení s předmětem Co je.net Vlastnosti.NET 2 / 25 Kdo je kdo Petr Vaněček vanecek@pf.jcu.cz J 502 Václav Novák vacnovak@pf.jcu.cz?? Při komunikaci

Více

MIKROPROCESOROVÁ TECHNIKA

MIKROPROCESOROVÁ TECHNIKA MODERNIZACE VÝUKOVÝCH MATERIÁLŮ A DIDAKTICKÝCH METOD - CZ.1.07/2.2.00/15.0463 MIKROPROCESOROVÁ TECHNIKA LEKCE 1 Ing. Daniel Zuth, Ph.D. 2012 ÚVODNÍ HODINA DO PŘEDMĚTU MIKROPROCESOROVÁ TECHNIKA OBSAH Úvod

Více

PROGRAMOVÁNÍ V C++ CVIČENÍ

PROGRAMOVÁ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íce

GPGPU Aplikace GPGPU. Obecné výpočty na grafických procesorech. Jan Vacata

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

Více

DTP Základy programování Úvod do předmětu

DTP Základy programování Úvod do předmětu DTP Základy programování 01 - Úvod do předmětu Úvod Co již umíte? Plán předmětu Studijní materiály Způsob ukončení předmětu Základní pojmy I. Řešený problém: Řešeným nebo zpracovávaným problémem je konkrétní

Více

14. Složitější konstrukce

14. Složitější konstrukce Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Praktika návrhu číslicových obvodů Dr.-Ing. Martin Novotný Katedra číslicového návrhu Fakulta informačních technologií ČVUT v Praze Miloš

Více

C2110 Operační systém UNIX a základy programování

C2110 Operační systém UNIX a základy programování C2110 Operační systém UNIX a základy programování 6. lekce Petr Kulhánek, Jakub Štěpán kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Přírodovědecká fakulta Masarykova univerzita, Kotlářská

Více

Martin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. October 17, 2016

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

Více

CASE nástroje. Jaroslav Žáček

CASE nástroje. Jaroslav Žáček CASE nástroje Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Co znamená CASE? A CASE tool is a computer-based product aimed at supporting one or more software engineering activities within

Více