IPA - Lab.3 SSE instrukce, zarovnání dat

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

Download "IPA - Lab.3 SSE instrukce, zarovnání dat"

Transkript

1 IPA - Lab.3 SSE instrukce, zarovnání dat Ondřej Klubal Ondřej Klubal IPA - Lab.3 1 / 25

2 Osnova Data alignment Data alignment ve VS 2010 Příklad na data alignment Struktury a padding SSE úvod SSE a instrukce CPUID SSE komplexní čísla Ondřej Klubal IPA - Lab.3 2 / 25

3 Data alignment CPU nečte paměť po bytech, ale čte ji po 2, 4, 8, 16 nebo 32 bytových blocích (memory access granularity). Výkonnost a architektura pamětí. Ondřej Klubal IPA - Lab.3 3 / 25

4 Data alignment - ukázka - špatné zarovnání Pokud jsou data špatně zarovnána k 4-bytové hranici, CPU musí udělat mnoho zbytečných kroků. Ondřej Klubal IPA - Lab.3 4 / 25

5 Data alignment - důsledky Výrazné snížení výkonu při nezarovnaném přístupu (načítání i dat které nepotřebujeme) Některé architektury nezarovnané přístupy do paměti odmítají a vyvolají vyjímku. Alpha, IA-64, MIPS a SuperH architektury. 32bit x86 architektura původně nevyžaduje zarovnané přístupy do paměti. Nicméně od SSE existují instrukce,které vyžadují 16-bytové zarovnání dat. Paralelismus. Operace čtení/zápis do na nezarovnanou adresu není atomická a tak jiné zařízení může číst/zapisovat do stejného paměťového bloku, pokud obsahuje jinou proměnnou. Takové chyby se těžko odhalují. Ondřej Klubal IPA - Lab.3 5 / 25

6 Data alignment - jazyk C/C++ a x86 char (1 byte) bude 1-byte aligned. short (2 bytes) bude 2-byte aligned. int (4 bytes) bude 4-byte aligned. float (4 bytes) bude 4-byte aligned. double (8 bytes) bude 8-byte aligned (Windows) a 4-byte aligned (Linux). long double (12 bytes) bude 4-byte aligned (Linux) pointer (4 bytes) bude 4-byte aligned (Linux). (e.g.: char*, int*) Ondřej Klubal IPA - Lab.3 6 / 25

7 Data alignment - statická alokace C/C++ declspec( align( ) ) declarator declspec(align(32)) double a; hodnota musí být mocnina dvou < sizeof(object) - ignoruje se Nezarovná data na hromadě (pouze statická/lokální)! Struktury, cache line... typedef declspec(align(8)) struct { int a, b; } cachestruct; alignof(type) vrátí nastavené zarovnání např. pro dynamickou alokaci. Ondřej Klubal IPA - Lab.3 7 / 25

8 Data alignment - dynamická alokace zarovnané paměti 1/2 Více možností jak alokovat zarovnaná data na hromadě: Úpravou adresy /* Make new p a pointer to a 64-bit aligned array of NUM_ELEMENTS 64-bit elements. */ double *p, *newp; p = (double*)malloc (sizeof(double)*(num_elements+1)); newp = (p+7) & (~0x7); Ondřej Klubal IPA - Lab.3 8 / 25

9 Data alignment - dynamická alokace zarovnané paměti 2/2 Knihovna malloc.h void *_aligned_malloc(size_t size, size_t alignment) void *_aligned_offset_malloc(size_t size, size_t alignment, size_t offset) void _aligned_free(void *aligned_block) void *_aligned_realloc(void *aligned_block, size_t size, size_t alignment) void *_aligned_offset_realloc(void *aligned_block, size_t size, size_t alignment, size_t offset) Ondřej Klubal IPA - Lab.3 9 / 25

10 Data alignment - cache, stack Existence cache "problém" ještě více komplikuje. Můžeme mluvit o zarovnání na cache-line (32, 64 byte) Více úrovní cache (až tři), kde každá cache má jinou velikost (32 kb až 2 MB). Zarovnání na stacku se liší od platformy. U x86 záleží na kompileru - prakticky nelze vynutit požadované zarovnání, zpravidla však 4 byty (heuristika kompileru). U x64 je dáno, že každý stackframe zásobníku je zarovnán na 16 bytů (128 bitů). Ondřej Klubal IPA - Lab.3 10 / 25

11 Data alignment - řešení 8-bit data zarovnáme na libovolnou adresu 16-bit data - první zarovnáme na adresu dělitelnou 4, všechny další na adresu dělitelnou 2 32-bit data zarovnáme na adresu dělitelnou 4 64-bit data zarovnáme na adresu dělitelnou 8 80-bit data zarovnáme na adresu dělitelnou bit data zarovnáme na adresu dělitelnou bit data zarovnáme na adresu dělitelnou bit data zarovnáváme na adresu dělitelnou 64 Ondřej Klubal IPA - Lab.3 11 / 25

12 Data alignment - struktury a padding v C/C++ Struktura je rozšířena tak, aby velikost struktury byla nejmenším násobkem velikosti největšího prvku struktury. Ondřej Klubal IPA - Lab.3 12 / 25

13 Data alignment a SSE Speciální datový typ m128 (automaticky zarovnáno na 16 bytů, mapuje se na XMM registr). include <xmmintrin.h> Lze nahradit typedef _declspec(align(16)) struct double a, b; xmm_reg; Nelze předávat hodnotou ( m128 ano)! SSE má instrukce i pro manipulaci s nezarovnanou paměti, avšak dojde ke snížení výkonu. Ondřej Klubal IPA - Lab.3 13 / 25

14 Data alignment a SSE - příklad s m128 // Pole m128 dat. typu m128 xmma[50]; xmma[0] = _mm_setzero_ps(); 012F1690 xorps xmm0,xmm0 012F1693 movaps xmmword ptr [ebp-460h],xmm0 // Volání funkce s parametrem m128 f(xmma[0]); // void cdecl f( m128 a) 012F16A8 movaps xmm0,xmmword ptr [ebp-370h] 012F16AF call f (12F1253h) Ondřej Klubal IPA - Lab.3 14 / 25

15 Data alignment a SSE - předávání parametrů Ondřej Klubal IPA - Lab.3 15 / 25

16 Data alignment a NASM ; ALIGN a ALIGNB makra align 4 ; zarovnání na 4-bytovou hranici align 4, resb 1 ; zarovnání na 4-bytovou hranici v bss alignb 4 ; stejné jako předchozí... ; (viz NASM manuál) První argument musí být mocninnou dvou. ALIGN - default NOP, ALIGNB - default RESB 1 ALIGN pro.text a.data sekci, ALIGNB pro.bss POZOR! Zarovnává pouze relativně vůči sekci, nikoliv vůči finální adrese! ALIGNB nebo ALIGN s RESB 1 může být použit pro zarovnání ve strukturách - dorovnává se vůči bázové adrese. struc mytype2 mt_byte: resb 1 alignb 2 mt_word: resw 1 alignb 4 mt_long: resd 1 mt_str: resb 32 endstruc Ondřej Klubal IPA - Lab.3 16 / 25

17 Úvod SSE Pentium III - odpověd na instrukční sadu 3DNow! od AMD (1998). Původně známo pod názvem Katmai New Instruction (KNI). 70 nových instrukcí, 8 x 128 bitových registrů XMM (4x single precision) nové registry - nutná podpora OS (>=Win98,Linux kernel 2.4) AMD implementuje v procesoru AthlonXP. Kontrolní registr MXCSR - 32 bitový. Rozšíření instrukce CPUID. Ondřej Klubal IPA - Lab.3 17 / 25

18 SSE - instrukce 1 Skalární i vektorové S plovoucí desetinnou čárkou (pracující s xmm registry) přesuny (z paměti do registru, z registru do paměti, mezi registry) skalární - MOVSS vektorové - MOVAPS, MOVUPS, MOVLPS, MOVHPS, MOVLHPS, MOVHLPS aritmetické (sčítání, odečítání, násobení, dělení, převrácená hodnota, určení maxima a minima, 2. mocnina a odmocnina) skalární - ADDSS, SUBSS, MULSS, DIVSS, RCPSS, MAXSS, MINSS, SQRTSS vektorové - ADDPS, SUBPS, MULPS, DIVPS, RCPPS, MAXPS, MINPS, SQRTPS, RSQRTPS bitové operace vektorové - ANDPS, ORPS, XORPS, ANDNPS porovnávání skalární - CMPSS, COMISS, UCOMISS vektorové - CMPPS Ondřej Klubal IPA - Lab.3 18 / 25

19 SSE - instrukce 2 "zamíchání" a "rozbalení" dat (shuffle and unpack - manipulace s jednotlivými bitovými částmi 128bitového registru) vektorové - SHUFPS, UNPCKHPS, UNPCKLPS datový převod (MMX XMM) skalární - CVTSI2SS, CVTSS2SI, CVTTSS2SI vektorové - CVTPI2PS, CVTPS2PI, CVTTPS2PI celočíselné (mmx registry (_m64) - rozšíření instrukcí MMX) aritmetické PMULHUW, PSADBW, PAVGB, PAVGW, PMAXUB, PMINUB, PMAXSW, PMINSW přenos dat PEXTRW, PINSRW ostatní správa MXCSR LDMXCSR, STMXCSR správa cache a paměti MOVNTQ, MOVNTPS, MASKMOVQ, PREFETCH0, PREFETCH1, PREFETCH2, PREFETCHNTA, SFENCE Ondřej Klubal IPA - Lab.3 19 / 25

20 SSE2, SSE3,... x64 - navíc registry xmm8 - xmm15 SSE2 - (2001) podpora typu double celočíselné MMX instrukce rozšířeny na 128 bit registry XMM 144 nových instrukcí SSE3 - (2004) "horizontální" přístup k registru, 13 nových instrukcí SSSE3 (Supplemental Streaming SIMD Extensions 3) - (2006) SSE4.1 - (2006) - 54 nových instrukcí SSE4.2-7 nových instrukcí AES-NI - (2008) - 7 specializovaných instrukcí pro akcelereaci AES Ondřej Klubal IPA - Lab.3 20 / 25

21 AVX, AVX2, AVX512F AVX - Sandy Bridge (2011) rozšíření XMM registrů na 256 bitů - registry YMM nutná podpora OS: (>= Win 7 SP1, >= Linux kernel ) instrukce se třemi operandy celočíselné operace pouze 128 bitů (SSE ve VEX) AVX2 - Haswell (2013) rozšíření celočíselných instrukcí na 256 bitů FMA3 (fused multiply acumulate 3op a + b * c), Gather operace AVX512 - Knights Landing (2016 Q3) 512 bit registry ZMM x64 - navíc registry zmm16 - zmm31 opět nutná podpora OS AVX512F (Foundation - povinný základ), AVX512VL (vector extensions), AVX512BW (byte/word), AVX512DQ (doubleword/quadword), AVX152PFI (prefetch), AVX512CRI (conflict detection), AVX512ERI (exponencial) Ondřej Klubal IPA - Lab.3 21 / 25

22 SIMD - Hlavičkové soubory pro C/C++ x86intrin.h: x86 instructions mmintrin.h: MMX (Pentium MMX!) xmmintrin.h: SSE + MMX (Pentium 3, Athlon XP) emmintrin.h: SSE2 + SSE + MMX (Pentium 4, Ahtlon 64) pmmintrin.h: SSE3 + SSE2 + SSE + MMX (Pentium 4 Prescott, Ahtlon 64 San Diego) tmmintrin.h: SSSE3 + SSE3 + SSE2 + SSE + MMX (Core 2, Bulldozer) smmintrin.h: SSE4.1 + SSSE3 + SSE3 + SSE2 + SSE + MMX (Core i7, Bulldozer) nmmintrin.h: SSE4.2 + SSE4.1 + SSSE3 + SSE3 + SSE2 + SSE + MMX (Core i7, Bulldozer) wmmintrin.h: AES (Core i7 Westmere, Bulldozer) immintrin.h: AVX2, AVX, SSE4.2 + SSE4.1 + SSSE3 + SSE3 + SSE2 + SSE + MMX (Core i7 Sandy Bridge, Bulldozer) Ondřej Klubal IPA - Lab.3 22 / 25

23 Úloha 1) SSE podpora v CPU Doplňte v inline assembleru tělíčka funkcí v projektu sse_support tak, aby vracely true v případě podpory dané instrukční sady, jinak false. Otevřte si projekt sse_support Doplňte tělíčka funkcí Ověřte správnost implementace Ondřej Klubal IPA - Lab.3 23 / 25

24 Úloha 2) SSE počítání s kompexními čísly Doplňte v inline assembleru tělíčka funkcí v projektu sse_complex_numbers (a + ib) + (c + id) = (a + c) + i(b + d) (a + ib) (c + id) = (a c) + i(b d) (a + ib) (c + id) = (ac bd) + i(ad + bc) (a+ib)/(c +id) = [(ac +bd)/(c 2 +d 2 )]+i[(bc ad)/(c 2 +d 2 )] a + ib = sqrt(a 2 + b 2 ) Ondřej Klubal IPA - Lab.3 24 / 25

25 Děkuji za Vaši pozornost (příště SSE aplikace) Ondřej Klubal IPA - Lab.3 25 / 25

Jan Nekvapil ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická

Jan Nekvapil ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Jan Nekvapil jan.nekvapil@tiscali.cz ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Motivace MMX, EMMX, MMX+ 3DNow!, 3DNow!+ SSE SSE2 SSE3 SSSE3 SSE4.2 Závěr 2 Efektivní práce s vektory

Více

Technologie Intel SSE I. Šimeček, J. Trdlička

Technologie Intel SSE I. Šimeček, J. Trdlička Technologie Intel SSE I. Šimeček, 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, Predn.2 Příprava studijního

Více

- načte z paměti int, zkonvertuje ho na double-extended a pushne na stack FIST(P) mem

- načte z paměti int, zkonvertuje ho na double-extended a pushne na stack FIST(P) mem FPU instrukce Načítání, ukládání a manipulace se zásobníkem FPU FLD mem/st(i) - uloží číslo z paměti nebo ST(i) na vrchol zásobníku (pushne stack) FST(P) mem/st(i) - uloží vrchol zásobníku do paměti nebo

Více

Vektorizace. Paralelní architektury

Vektorizace. Paralelní architektury Vektorizace Paralelní architektury Vektorové počítače Paralelní architektury Definice: Paralelní architektura je taková, která obsahuje více jednotek pro zpracování dat (PU). RAM RAM RAM PU PU PU Timer

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

Procesor Intel Pentium (1) Procesor Intel Pentium (3) Procesor Intel Pentium Pro (1) Procesor Intel Pentium (2)

Procesor Intel Pentium (1) Procesor Intel Pentium (3) Procesor Intel Pentium Pro (1) Procesor Intel Pentium (2) Procesor Intel Pentium (1) 32-bitová vnitřní architektura s 64-bitovou datovou sběrnicí Superskalární procesor: obsahuje více než jednu (dvě) frontu pro zřetězené zpracování instrukcí (značeny u, v) poskytuje

Více

Intel 80486 (2) Intel 80486 (1) Intel 80486 (3) Intel 80486 (4) Intel 80486 (6) Intel 80486 (5) Nezřetězené zpracování instrukcí:

Intel 80486 (2) Intel 80486 (1) Intel 80486 (3) Intel 80486 (4) Intel 80486 (6) Intel 80486 (5) Nezřetězené zpracování instrukcí: Intel 80486 (1) Vyroben v roce 1989 Prodáván pod oficiálním názvem 80486DX Plně 32bitový procesor Na svém čipu má integrován: - zmodernizovaný procesor 80386 - numerický koprocesor 80387 - L1 (interní)

Více

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů). Strojový kód k d a asembler procesoru MIPS Použit ití simulátoru SPIM K.D. - cvičení ÚPA 1 MIPS - prostředí 32 ks 32bitových registrů ( adresa registru = 5 bitů). Registr $0 je zero čte se jako 0x0, zápis

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

Reprezentace dat v informačních systémech. Jaroslav Šmarda

Reprezentace dat v informačních systémech. Jaroslav Šmarda Reprezentace dat v informačních systémech Jaroslav Šmarda Reprezentace dat v informačních systémech Reprezentace dat v počítači Datové typy Proměnná Uživatelské datové typy Datové struktury: pole, zásobník,

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

Adresní mody procesoru

Adresní mody procesoru Adresní mody procesoru K.D. - přednášky 1 Obecně o adresování Různé typy procesorů mohou mít v instrukci 1, 2 nebo více adres. Operandy mohou ležet v registrech nebo v paměti. Adresní mechanismus procesoru

Více

Procesor z pohledu programátora

Procesor z pohledu programátora Procesor z pohledu programátora Terminologie Procesor (CPU) = řadič + ALU. Mikroprocesor = procesor vyrobený monolitickou technologií na čipu. Mikropočítač = počítač postavený na bázi mikroprocesoru. Mikrokontrolér

Více

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Jak v Javě primitivní datové typy a jejich reprezentace BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Obsah Celočíselný datový typ Reálný datový typ Logický datový typ, typ Boolean

Více

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/ Střední odborná škola elektrotechnická, Centrum odborné přípravy Zvolenovská 537, Hluboká nad Vltavou Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/34.0448 CZ.1.07/1.5.00/34.0448 1 Číslo projektu

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

Charakteristika dalších verzí procesorů v PC

Charakteristika dalších verzí procesorů v PC Charakteristika dalších verzí procesorů v PC 1 Cíl přednášky Poukázat na principy tvorby architektur nových verzí personálních počítačů. Prezentovat aktuální pojmy. 2 Úvod Zvyšování výkonu cestou paralelizace

Více

Předmluva 13 Použité konvence 14. KAPITOLA 1 Základní číselné soustavy a pojmy Číselné soustavy a převody 15 1.

Předmluva 13 Použité konvence 14. KAPITOLA 1 Základní číselné soustavy a pojmy Číselné soustavy a převody 15 1. 7 Předmluva 13 Použité konvence 14 KAPITOLA 1 Základní číselné soustavy a pojmy 15 1.1 Číselné soustavy a převody 15 1.2 Datové typy 18 KAPITOLA 2 Seznámení s mikroprocesory řady x86 21 2.1 Počítač obecně

Více

Vektorové instrukční sady a použití assembleru v gcc

Vektorové instrukční sady a použití assembleru v gcc Vektorové instrukční sady a použití assembleru v gcc Martin Bruchanov BruXy bruxy@regnet.cz http://bruxy.regnet.cz 23. března 2009 1 Instrukční sady SIMD procesorů x86........................................

Více

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC Informační systémy 2 Obsah: Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC ROM RAM Paměti typu CACHE IS2-4 1 Dnešní info: Informační systémy 2 03 Informační systémy

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

Petr Krajča. 26. říjen, 2012

Petr Krajča. 26. říjen, 2012 Operační systémy Řízení výpočtu Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci 26. říjen, 2012 Petr Krajča (UP) KMI/YOS: Přednáška II. 26. říjen, 2012 1 / 18 Reprezentace hodnot záporná

Více

CHARAKTERISTIKA MODERNÍCH PENTIÍ. Flynnova klasifikace paralelních systémů

CHARAKTERISTIKA MODERNÍCH PENTIÍ. Flynnova klasifikace paralelních systémů Úvod: CHARAKTERISTIKA MODERNÍCH PENTIÍ Flynnova klasifikace paralelních systémů Paralelní systémy lze třídit z hlediska počtu toků instrukcí a počtu toků dat: SI systém s jedním tokem instrukcí (Single

Více

Architektura Intel Atom

Architektura Intel Atom Architektura Intel Atom Štěpán Sojka 5. prosince 2008 1 Úvod Hlavní rysem Atomu je podpora platformy x86, která umožňuje spouštět a běžně používat řadu let vyvíjené aplikace, na které jsou uživatelé zvyklí

Více

09. Memory management. ZOS 2006, L.Pešička

09. Memory management. ZOS 2006, L.Pešička 09. Memory management ZOS 2006, L.Pešička Správa paměti paměťová pyramida absolutní adresa relativní adresa počet bytů od absolutní adresy fyzický prostor adres fyzicky k dispozici výpočetnímu systému

Více

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

Představení a vývoj architektur vektorových procesorů Představení a vývoj architektur vektorových procesorů Drong Lukáš Dro098 1 Obsah Úvod 3 Historie, současnost 3 Architektura 4 - pipelining 4 - Operace scatter a gather 4 - vektorové registry 4 - Řetězení

Více

Linux a 64 bitů. SUSE Labs. Michal Ludvig Vojtěch Pavlík

Linux a 64 bitů. SUSE Labs. Michal Ludvig Vojtěch Pavlík 1 Linux a 64 bitů Michal Ludvig Vojtěch Pavlík SUSE Labs 02.04.04 Linux a 64 bitů, Michal Ludvig+Vojtěch Pavlík, SUSE Labs, 02.04.04, Strana 1 64 čeho? 2 bitovost procesoru

Více

ARCHITEKTURA PROCESORŮ

ARCHITEKTURA PROCESORŮ ARCHITEKTURA PROCESORŮ Základními jednotkami, které tvoří vnitřní strukturu procesorů, jsou: řadič, který má za úkol číst operandy (data, čísla) a instrukce z operační paměti, dekódovat je a na základě

Více

ADT/ADS = abstraktní datové typy / struktury

ADT/ADS = abstraktní datové typy / struktury DT = datové typy obor hodnot, které může proměnná nabývat, s operacemi na tomto oboru určen: obor hodnot + výpočetní operace např. INT = { 2 147 483 648 až +2 147 483 647} + {+,,*,/,} ADT/ADS = abstraktní

Více

Sekvenční architektury II. Zpracování instrukcí

Sekvenční architektury II. Zpracování instrukcí Sekvenční architektury II Zpracování instrukcí Jak zvýšit výkon CPU zkrátit čas nutný ke zpracování 1 instrukce urychlit časovač (Timer) = zvýšení taktu to je technicky velmi náročné, poslední dobou se

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

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

Cache paměť - mezipaměť

Cache paměť - mezipaměť Cache paměť - mezipaměť 10.přednáška Urychlení přenosu mezi procesorem a hlavní pamětí Hlavní paměť procesoru je typu DRAM a je pomalá. Proto se mezi pomalou hlavní paměť a procesor vkládá menší, ale rychlá

Více

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YOS: Přednáška II. 14. říjen, / 26

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YOS: Přednáška II. 14. říjen, / 26 Operační systémy Řízení výpočtu Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/YOS: Přednáška II. 14. říjen, 2016 1 / 26 Reprezentace hodnot záporná čísla jsou v doplňkovém

Více

Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry.

Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry. Systémov mová sběrnice 1 Sběrnicová architektura Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry. Single master jeden procesor na sběrnici, Multi master více

Více

MIKROPROCESOR. (c) Ing. Josef Varačka. Title: XI 28 11:40 (1 of 8)

MIKROPROCESOR. (c) Ing. Josef Varačka. Title: XI 28 11:40 (1 of 8) MIKROPROCESOR 1/ Účel: Vzhledem k pokračující digitalizaci (používání zpracování dvojkového signálu) je žádoucí provozovat univerzální zařízení, které podle programu instrukcí informace zpracuje. Mikroprocesor

Více

Programování v jazyce C a C++

Programování v jazyce C a C++ Programování v jazyce C a C++ Příklad na tvorbu třídy Richter 1 4. prosince 2017 1 Ing. Richter Miloslav, Ph.D., UAMT FEKT VUT Brno Dvourozměrné pole pomocí tříd Zadání Navrhněte a napište třídu pro realizace

Více

Paměť počítače. alg2 1

Paměť počítače. alg2 1 Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových

Více

HelenOS ARM port. Pavel Jančík Michal Kebrt Petr Štěpán

HelenOS ARM port. Pavel Jančík Michal Kebrt Petr Štěpán HelenOS ARM port Pavel Jančík Michal Kebrt Petr Štěpán HelenOS experimentální operační systém (MFF) multiplatformní microkernel amd64, ia32, ia32xen, ia64, mips32, ppc32, ppc64, sparc64 plánování správa

Více

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

Programování v C++ 2, 4. cvičení Programování v C++ 2, 4. cvičení statické atributy a metody, konstruktory 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled Přístupová práva

Více

Architektura počítače

Architektura počítače Architektura počítače Výpočetní systém HIERARCHICKÁ STRUKTURA Úroveň aplikačních programů Úroveň obecných funkčních programů Úroveň vyšších programovacích jazyků a prostředí Úroveň základních programovacích

Více

Paralelní systémy. SIMD jeden tok instrukcí + více toků dat jedním programem je zpracováváno více různých souborů dat

Paralelní systémy. SIMD jeden tok instrukcí + více toků dat jedním programem je zpracováváno více různých souborů dat Paralelní systémy Paralelním systémem rozumíme takový systém, který paralelně zpracovává více samostatných úloh nebo zpracování určité úlohy automaticky rozdělí do menších částí a paralelně je zpracovává.

Více

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC Informatika 2 Technické prostředky počítačové techniky - 2 Přednáší: doc. Ing. Jan Skrbek, Dr. - KIN Přednášky: středa 14 20 15 55 Spojení: e-mail: jan.skrbek@tul.cz 16 10 17 45 tel.: 48 535 2442 Obsah:

Více

PROCESOR. Typy procesorů

PROCESOR. Typy procesorů PROCESOR Procesor je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program. Primárním úkolem procesoru je řídit činnost ostatních částí počítače včetně

Více

Intel 80286. Procesor a jeho konstrukce. Vývojové typy, činnost procesoru

Intel 80286. Procesor a jeho konstrukce. Vývojové typy, činnost procesoru Procesor a jeho konstrukce. Vývojové typy, činnost procesoru První obvod nazvaný mikroprocesor uvedla na trh firma Intel v roce 1970. Šlo o 4bitový procesor Intel 4004. V roce 1972 byl MCS8 prvním 8bitovým

Více

Operační systémy 2. Přednáška číslo 2. Přidělování paměti

Operační systémy 2. Přednáška číslo 2. Přidělování paměti Operační systémy 2 Přednáška číslo 2 Přidělování paměti Základní pojmy Paměť = operační paměť paměť, kterou přímo využívají procesory při zpracování instrukcí a dat Funkce modulu přidělování paměti: Sledování

Více

Úvod. Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace POT POT

Úvod. Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace POT POT Úvod Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace K.D. - přednášky 2 Pevná a proměnná délka instrukce (1) Pevná délka instrukce

Více

Domácí úkoly 2013/14

Domácí úkoly 2013/14 Domácí úkoly 2013/14 SIMD kontejner kontejner odpovídající poli s podporou SIMD operací Single Instruction Multiple Data simd_vector< T, S> T = logický prvek kontejneru pouze jednoduchý datový typ (bez

Více

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/ Střední odborná škola elektrotechnická, Centrum odborné přípravy Zvolenovská 537, Hluboká nad Vltavou Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/34.0448 CZ.1.07/1.5.00/34.0448 1 Číslo projektu

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

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

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu } 5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu

Více

Technické prostředky počítačové techniky

Technické prostředky počítačové techniky Počítač - stroj, který podle předem připravených instrukcí zpracovává data Základní části: centrální procesorová jednotka (schopná řídit se posloupností instrukcí a ovládat další části počítače) zařízení

Více

ARCHITEKTURA PROCESORŮ

ARCHITEKTURA PROCESORŮ ARCHITEKTURA PROCESORŮ Základními jednotkami, které tvoří vnitřní strukturu procesorů, jsou: řadič, který má za úkol číst operandy (data, čísla) a instrukce z operační paměti, dekódovat je a na základě

Více

Roman Výtisk, VYT027

Roman Výtisk, VYT027 Roman Výtisk, VYT027 Ohlédnutí za architekturou AMD K8 Představení architektury procesoru AMD K10 Přínos Struktura cache IMC, HyperTransport sběrnice Použitá literatura Ohlášení x86-64 architektury 5.

Více

GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA

GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA HISTORIE GPU GPU = graphics processing unit jde o akcelerátory pro algoritmy v 3D grafice a vizualizaci mnoho z nich původně vzniklo pro účely počítačových

Více

Základy programování (IZP)

Základy programování (IZP) Základy programování (IZP) Jedenácté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Gabriela Nečasová, inecasova@fit.vutbr.cz

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech

Více

Sekvenční architektury II. Zpracování instrukcí

Sekvenční architektury II. Zpracování instrukcí Sekvenční architektury II Zpracování instrukcí Jak zvýšit výkon CPU zkrátit čas nutný ke zpracování 1 instrukce urychlit časovač (Timer) = zvýšení taktu to je technicky velmi náročné, poslední dobou se

Více

MS WINDOWS II. Jádro. Správa objektů. Správa procesů. Zabezpečení. Správa paměti

MS WINDOWS II. Jádro. Správa objektů. Správa procesů. Zabezpečení. Správa paměti MS WINDOWS II Jádro Správa objektů Správa procesů Zabezpečení Správa paměti JÁDRO I ntoskrnl.exe napsán v C (příp. assembler) základní mechanismy poskytované executivám trap dispečink synchronizace přístupů

Více

Struktura programu v době běhu

Struktura programu v době běhu Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů

Více

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -

Více

Intel Pentium D (1) Intel Pentium D (4) Intel Pentium Extreme Edition (1) Intel Pentium D (5)

Intel Pentium D (1) Intel Pentium D (4) Intel Pentium Extreme Edition (1) Intel Pentium D (5) Intel Pentium D () Založen na mikroarchitektuře NetBurst Vyráběn s frekvencemi, GHz, GHz Systémová sběrnice pracuje s taktem MHz (vyjma procesoru s frekvencí, GHz, u něhož je frekvence systémové sběrnice

Více

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / Správa paměti doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Motivace Úrovně správy paměti. Manuální

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

Optimalizace pro GPU hardware

Optimalizace pro GPU hardware Optimalizace pro GPU hardware Jiří Filipovič jaro 2015 Jiří Filipovič Optimalizace pro GPU hardware 1 / 52 Paralelismus GPU Paralelní algoritmy je nutno navrhovat vzhledem k paralelismu, který poskytuje

Více

Vícejádrový procesor. Dvě nebo více nezávislých jader Pro plné využití. podporovat multihreading

Vícejádrový procesor. Dvě nebo více nezávislých jader Pro plné využití. podporovat multihreading Vývoj Jan Smuda, Petr Zajíc Procesor ALU (aritmeticko logická jednotka) Registry Řadič Jednotky pro práci s plovoucí čárkou Cache Vývoj procesorů Predikce skoku Plánování instrukcí Naráží na fyzická omezení

Více

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus Činnost CPU Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus Hodinový cyklus CPU je synchronní obvod nutné hodiny (f CLK ) Instrukční cyklus IF = doba potřebná

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

MSP 430F1611. Jiří Kašpar. Charakteristika

MSP 430F1611. Jiří Kašpar. Charakteristika MSP 430F1611 Charakteristika Mikroprocesor MSP430F1611 je 16 bitový, RISC struktura s von-neumannovou architekturou. Na mikroprocesor má neuvěřitelně velkou RAM paměť 10KB, 48KB + 256B FLASH paměť. Takže

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury, standardní metody Problematika načítání pomocí Scanner Některé poznámky k příkazům Psaní kódu programu Metody třídy Math Obalové třídy primitivních datových

Více

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

Operační systémy. Přednáška 1: Úvod Operační systémy Přednáška 1: Úvod 1 Organizace předmětu Přednášky každé úterý 18:00-19:30 v K1 Přednášející Jan Trdlička email: trdlicka@fel.cvut.z kancelář: K324 Cvičení pondělí, úterý, středa Informace

Více

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo Operátory, výrazy Tomáš Pitner, upravil Marek Šabo Operátor "Znaménko operace", pokyn pro vykonání operace při vyhodnocení výrazu. V Javě mají operátory napevno daný význam, nelze je přetěžovat jako v

Více

PV109: Historie a vývojové trendy ve VT

PV109: Historie a vývojové trendy ve VT PV109: Historie a vývojové trendy ve VT Vývojové trendy Luděk Matyska Fakulta informatiky Masarykovy univerzity podzim 2014 Luděk Matyska (FI MU) PV109: Historie a vývojové trendy ve VT podzim 2014 1 /

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

Intel Pentium D (1) Intel Pentium D (4) Intel Pentium Extreme Edition (1) Intel Pentium D (5)

Intel Pentium D (1) Intel Pentium D (4) Intel Pentium Extreme Edition (1) Intel Pentium D (5) Intel Pentium D () Založen na mikroarchitektuře NetBurst Vyráběn s frekvencemi, GHz, GHz Systémová sběrnice pracuje s taktem MHz (vyjma procesoru s frekvencí, GHz, u něhož je frekvence systémové sběrnice

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

Elementární datové typy

Elementární datové typy Elementární datové typy Celočíselné typy (integers) Mohou nabývat množiny hodnot, která je podmnožinou celých čísel (někdy existuje implementační konstanta maxint). Operace: aritmetické, relační, bitové,

Více

Assembler RISC RISC MIPS. T.Mainzer, kiv.zcu.cz

Assembler RISC RISC MIPS. T.Mainzer, kiv.zcu.cz Assembler RISC T.Mainzer, kiv.zcu.cz RISC RISC, neboli Reduced Instruction Set Computer - koncepce procesorů s redukovaným souborem instrukcí (vs. CISC, neboli Complex Instruction Set Computer, "bohatý"

Více

ZÁPOČTOVÝ TEST. Zpracoval Vilém Závodný, http://narrow.ic.cz. #include "stdafx.h" #include "stdio.h"

ZÁPOČTOVÝ TEST. Zpracoval Vilém Závodný, http://narrow.ic.cz. #include stdafx.h #include stdio.h BPC2 ZÁPOČTOVÝ TEST PROSÍM ČTĚTE!!!! Příklady jsou zpracovány tak aby bylo možné je odzkoušet v programu Microsoft Visual C++ jako konzolovou aplikaci. Všechny příklady jsou 100% funkční. V červeném rámečku

Více

Čísla, reprezentace, zjednodušené výpočty

Čísla, reprezentace, zjednodušené výpočty Čísla, reprezentace, zjednodušené výpočty Přednáška 5 A3B38MMP kat. měření, ČVUT - FEL, Praha J. Fischer A3B38MMP, 2015, J.Fischer, ČVUT - FEL, kat. měření 1 Čísla 4 bitová dec bin. hex. 0 0000 0 1 0001

Více

Operační systémy. Přednáška 7: Správa paměti I

Operační systémy. Přednáška 7: Správa paměti I Operační systémy Přednáška 7: Správa paměti I 1 Správa paměti (SP) Memory Management Unit (MMU) hardware umístěný na CPU čipu např. překládá logické adresy na fyzické adresy, Memory Manager software, který

Více

PB071 Programování v jazyce C Jaro 2015

PB071 Programování v jazyce C Jaro 2015 Programování v jazyce C Jaro 2015 Argumenty main(), Typový systém, Dynamická alokace Organizační Polosemestrální test Úterý 7. dubna v 10:00 a 11:00 v D1 20 bodů rozdíl mezi E a C Zdroj: http://www.bugemos.com/?node=342

Více

Základy programování (IZP)

Základy programování (IZP) Základy programování (IZP) Deváté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 27.11.2017,

Více

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové

Více

požadovan adované velikosti a vlastností Interpretace adresy POT POT

požadovan adované velikosti a vlastností Interpretace adresy POT POT požadovan adované velikosti a vlastností K.D. - přednášky 1 Interpretace adresy Ve kterémkoliv místě lze adresu rozdělit na číslo bloku a offset uvnitř bloku. Velikost bloku je dána délkou příslušné části

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

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC Informatika 2 Technické prostředky počítačové techniky - 2 Přednáší: doc. Ing. Jan Skrbek, Dr. - KIN Přednášky: středa 14 20 15 55 Spojení: e-mail: jan.skrbek@tul.cz 16 10 17 45 tel.: 48 535 2442 Obsah:

Více

Intel Itanium. Referát. Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky

Intel Itanium. Referát. Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Pokročilé architektury počítačů Intel Itanium Referát Tomáš Vojtas (voj209) 2.12.2009 Úvod Itanium

Více

Emulátory. Autor: Martin Fiala. Spouštění programů a her z jiných OS nebo jiných platforem. InstallFest 2004. www.installfest.cz

Emulátory. Autor: Martin Fiala. Spouštění programů a her z jiných OS nebo jiných platforem. InstallFest 2004. www.installfest.cz Emulátory Autor: Martin Fiala Spouštění programů a her z jiných OS nebo jiných platforem. InstallFest 2004 Úvod Proč chceme emulovat? nemáme přístup k dané platformě nebo je problematický a nepohodlný

Více

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard Základní deska (1) Označována také jako mainboard, motherboard Deska plošného spoje tvořící základ celého počítače Zpravidla obsahuje: procesor (mikroprocesor) patici pro numerický koprocesor (resp. osazený

Více

Charakteristika dalších verzí procesorů Pentium

Charakteristika dalších verzí procesorů Pentium Charakteristika dalších verzí procesorů Pentium 1 Cíl přednášky Poukázat na principy architektur nových verzí typů Pentií. Prezentovat aktuální pojmy. 2 Úvod Paralelní systémy lze třídit z hlediska počtu

Více

5 Přehled operátorů, příkazy, přetypování

5 Přehled operátorů, příkazy, přetypování 5 Přehled operátorů, příkazy, přetypování Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně budou uvedeny detaily týkající se operátorů. Doba nutná k nastudování

Více

Pokročilé architektury počítačů

Pokročilé architektury počítačů Pokročilé architektury počítačů Přednáška 5 GPU - CUDA Martin Milata Obsah Obecné výpočty a GPU Grafické procesory NVIDIA Tesla Výpočetní model Paměťový model GT200 Zpracování instrukcí Vydávání instrukcí

Více

Zápis programu v jazyce C#

Zápis programu v jazyce C# Zápis programu v jazyce C# Základní syntaktická pravidla C# = case sensitive jazyk rozlišuje velikost písmen Tzv. bílé znaky (Enter, mezera, tab ) ve ZK překladač ignoruje každý příkaz končí ; oddělovač

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

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

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4 Uložení dat v počítači Data = užitečné, zpracovávané informace Kódování (formát) dat = způsob uložení v počítači (nutno vše převést na čísla ve dvojkové soustavě) Příklady kódování dat Text každému znaku

Více

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Tomáš Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Zjednodušené schéma systému z základ hardware pro mainframe tvoří: operační pamět - MAIN / REAL STORAGE jeden

Více

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy Ústav radioelektroniky Vysoké učení technické v Brně Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy Přednáška 8 doc. Ing. Tomáš Frýza, Ph.D. listopad 2012 Obsah

Více