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

Save this PDF as:
 WORD  PNG  TXT  JPG

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ú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

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

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

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

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

Ú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

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

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

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

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

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

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

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

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

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

Ú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

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

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

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

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

Procesy a vlákna - synchronizace

Procesy a vlákna - synchronizace ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna - synchronizace České vysoké učení technické Fakulta elektrotechnická 2010 Studijní materiály a informace o předmětu http://measure.feld.cvut.cz/vyuka/predmety/bakalarske/navody

Více

Program a životní cyklus programu

Program a životní cyklus programu Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy

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

Šifrování/Dešifrování s použitím hesla

Šifrování/Dešifrování s použitím hesla Fakulta elektrotechnická Katedra teoretické elektrotechniky Dokumentace k semestrální práci Šifrování/Dešifrování s použitím hesla 2012/13 Petr Zemek Vyučující: Ing. Petr Kropík, Ph.D Předmět: Základy

Více

Opakování programování

Opakování programování Opakování programování HW návaznost - procesor sběrnice, instrukční sada, optimalizace rychlosti, datové typy, operace (matematické, logické, podmínky, skoky, podprogram ) - paměti a periferie - adresování

Více

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

Další 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í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

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

Principy operačních systémů. Lekce 5: Multiprogramming a multitasking, vlákna

Principy operačních systémů. Lekce 5: Multiprogramming a multitasking, vlákna Principy operačních systémů Lekce 5: Multiprogramming a multitasking, vlákna Multiprogramování předchůdce multitaskingu Vzájemné volání: Implementován procesem (nikoliv OS) Procesu je přidělen procesor,

Více

Nvidia CUDA Paralelní programování na GPU

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

Více

Sada 1 - Základy programování

Sada 1 - Základy programování S třední škola stavební Jihlava Sada 1 - Základy programování 01. Základní pojmy a principy programování Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284

Více

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro

Více

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Procesor Procesorem je objekt, který vykonává algoritmem popisovanou

Více

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Trochu teorie Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Každá spuštěná aplikace má alespoň jeden proces

Více

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

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

Principy operačních systémů. Lekce 1: Úvod

Principy operačních systémů. Lekce 1: Úvod Principy operačních systémů Lekce 1: Úvod Sylabus Lekce 1: Úvod 2 Literatura Lekce 1: Úvod 3 Operační systém Základní programové vybavení počítače, které se zavádí do počítače při jeho startu a zůstává

Více

CUDA J. Sloup a I. Šimeček

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

Více

ÚVOD DO OPERAČNÍCH SYSTÉMŮ. Vývoj SW aplikací. Unix, POSIX, WinAPI, programování komunikace s periferními zařízeními, ovladače zařízení

ÚVOD DO OPERAČNÍCH SYSTÉMŮ. Vývoj SW aplikací. Unix, POSIX, WinAPI, programování komunikace s periferními zařízeními, ovladače zařízení ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Vývoj SW aplikací Unix, POSIX, WinAPI, programování komunikace s periferními zařízeními, ovladače zařízení České vysoké učení technické Fakulta elektrotechnická 2012

Více

Cloudy a gridy v národní einfrastruktuře

Cloudy a gridy v národní einfrastruktuře Cloudy a gridy v národní einfrastruktuře Tomáš Rebok MetaCentrum, CESNET z.s.p.o. CERIT-SC, Masarykova Univerzita (rebok@ics.muni.cz) Ostrava, 5. 4. 2012 PRACE a IT4Innovations Workshop Cestovní mapa národních

Více

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

Více

Knihovna QT4 a moºnosti jejího vyuºití

Knihovna QT4 a moºnosti jejího vyuºití Fakulta jaderná a fyzikáln inºenýrská ƒeské vysoké u ení technické v Praze 2.6.2010 Osnova 1 Úvod 2 Seznámení s Qt4 3 Prost edí QtCreator 4 Vyuºití v praxi Problém Aplikace pro ovládání realtime PCR za

Více

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

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

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

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

Více

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

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda Proces vývoje HRIS Vema Vlastnosti HRIS (Human Resources Information System) HRIS Vema Proces vývoje HRIS Vema Vema, a. s. Přední

Více

Základy programování (IZP)

Základy programování (IZP) Základy programování (IZP) Druhé laboratorní cvičení Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, 612 66 Brno inecasova@fit.vutbr.cz Důležité informace Můj profil:

Více

IAJCE Přednáška č. 8. double tprumer = (t1 + t2 + t3 + t4 + t5 + t6 + t7) / 7; Console.Write("\nPrumerna teplota je {0}", tprumer);

IAJCE Přednáška č. 8. double tprumer = (t1 + t2 + t3 + t4 + t5 + t6 + t7) / 7; Console.Write(\nPrumerna teplota je {0}, tprumer); Pole (array) Motivace Častá úloha práce s větším množstvím dat stejného typu o Př.: průměrná teplota za týden a odchylka od průměru v jednotlivých dnech Console.Write("Zadej T pro.den: "); double t = Double.Parse(Console.ReadLine());

Více

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

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

ČÁST 1. Základy 32bitového programování ve Windows

ČÁST 1. Základy 32bitového programování ve Windows Obsah Úvod 13 ČÁST 1 Základy 32bitového programování ve Windows Kapitola 1 Nástroje pro programování ve Windows 19 První program v Assembleru a jeho kompilace 19 Objektové soubory 23 Direktiva INVOKE 25

Více

1. Programování proti rozhraní

1. Programování proti rozhraní 1. Programování proti rozhraní Cíl látky Cílem tohoto bloku je seznámení se s jednou z nejdůležitější programátorskou technikou v objektově orientovaném programování. Tou technikou je využívaní rozhraní

Více

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

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

Více

Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr

Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr Preprocesor a koncepce (větších) programů Úvod do programování 2 Tomáš Kühr Práce s preprocesorem Preprocesor Zpracovává zdrojový kód ještě před překladačem Provádí pouze záměny textů (např. identifikátor

Více

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

METACentrum zastřešení českých gridových aktivit METACentrum Český národní gridovýprojekt METACentrum zastřešení českých gridových aktivit Jan Kmuníček, Miroslav Ruda Masarykova univerzita & CESNET meta.cesnet.cz Motivace Gridu METACentrum technické

Více

IPA - Lab.1 Úvod do programování v ASM

IPA - Lab.1 Úvod do programování v ASM IPA - Lab.1 Úvod do programování v ASM Ondřej Klubal http://www.fit.vutbr.cz/~iklubal/ipa/ 2014 Ondřej Klubal IPA - Lab.1 1 / 16 Osnova Nástroje Konvence volání Použití DLL Windows API Makra NASM + VS

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

Vlákna Co je to vlákno?

Vlákna Co je to vlákno? Vlákna Co je to vlákno? Hierarchie z pohledu operačního systému: Proces o největší výpočetní entita plánovače o vlastní prostředky, paměť a další zdroje o v závislosti na OS možnost preemptivního multitaskingu

Více

Základy programování (IZP)

Základy programování (IZP) Základy programování (IZP) Druhé laboratorní cvičení Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, 612 66 Brno Cvičící: Petr Veigend (iveigend@fit.vutbr.cz) Důležité

Více

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Datové typy Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 5 Číslo: V/5 Programování v jazyce

Více

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií 1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední

Více