Matematický ústav Univerzity Karlovy v Praze Sokolovská 83, Praha 8. M. Mádĺık (MFF UK) Numerické knihovny 18.
|
|
- Bohumila Sedláková
- před 5 lety
- Počet zobrazení:
Transkript
1 Základní numerické knihovny Martin Mádĺık Matematický ústav Univerzity Karlovy v Praze Sokolovská 83, Praha října 2010 M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
2 Obsah 1 BLAS 2 3 BLACS 4 PBLAS 5 Sca M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
3 Část I sdílená pamět 1 BLAS Level 1 Level 2 Level 3 BLAS další informace 2 Konvence Drivery Příklad M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
4 BLAS - Basic Linear Algebra Subprograms Historie Lawson et al. - základní sada podprogramů pro lineární algebru velmi úspěšný projekt: čitelný, portovatelný, modulární Stal se de facto standartem pro vektorové operace. Základní frekventované operace v lineární algebře Jednotný přístupový interface Značně optimalizovaný kód Další výhody použití Robustnost Přenositelnost při zachování výkonu Čitelnost celkového kódu M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
5 Level 1 Level 1 BLAS Vektor - Vektor Originální BLAS implementoval low-level operace jako skalární součin, sčítání vektorů apod. Dnes se označují jako Level 1 BLAS. Standartizovaný interface k vektorovým operacím s mnemotechnickými pomůckami pojmenování funkcí. Příklad pojemnování SUBROUTINE AXPY (N, ALPHA, X, INCX, Y, INCY) Prefixy: S, D, C, Z y α x + y Význam prefixů S - REAL D - DOUBLE PRECISION C - COMPLEX Z - COMPLEX*16 M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
6 Level 1 Level 1 BLAS - přehled funkcí rotace ROTG, ROTMG, ROT, ROTM SWAP x y SCAL x α x COPY y x AXPY y α x + y DOT dot x T y DOT dot α + x T y NRM2 nrm2 x 2 ASUM asum re( x) 1 + im( x) 1 M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
7 Level 1 Level 1 BLAS - složitost, výkon Složitost Operace typicky vyžadují O(n) operací v řádové čárce a O(n) přesunů datových položek (nahraj/ulož) n je délka vektoru. Výkon Level 1 BLAS výkonný na skalárních počítačích. Poměr mezi počty operací v řádové čárce a datovými přesuny je příliš malý, aby byl rozumně využit efektivně na vektorových procesorech. I na skalárním stroji může být problém s operacemi pro příliš malé vektory (cena za časté volání funkcí). Na druhou stranu čitelnost kódu bude nezměrně vyšší (např. Násobení matice x vektor pomocí SAXPY). Násobení matice-vektor Lze rozepsat jako sérii volání SAXPY. ALE pomíjí možnost uložení výsledného vektoru y do vektorového registru. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
8 Level 1 Level 1 Blas příklad program copy_main real x(10), y(10) integer n, incx, incy, i n = 3 incx = 3 incy = 1 do i = 1, 10 x(i) = i end do call scopy (n, x, incx, y, incy) print*, Y =, (y(i), i = 1, n) end Výsledek: Y = M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
9 Level 2 Level 2 BLAS Matice - Vektor S příchodem vektorových procesorů se ukázalo, že Level 1 BLAS nemá dostatečnou granularitu pro využití nových optimalizací: data reuse. Level 1 BLAS zastiňuje kompilátoru pohled na globální data (Matice-vektor jako n x vektor-vektor). Bylo přidáno několik málo dalších funkcí Level 2 BLAS - designováno pro matice-vektor operace, které se často vyskytují v algoritmech lineární algebry. Složitost Operace typicky vyžadují O(mn) skalárních operací, m a n jsou dimenze matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
10 Level 2 Level 2 BLAS - funkce 3 typy základních operací Násobení matice-vektor Rank-1 a rank-2 update Řešení trojúhelníkové soustavy M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
11 Level 2 Level 2 BLAS - funkce 3 typy základních operací Násobení matice-vektor A = αa x + β y A = αa T x + β y A = αāt x + β y α, β skaláry, x, y vektory, A matice x = T x x = T T x x = T T x x je vektor a T je horní nebo dolní trojúhelníková matice. Rank-1 a rank-2 update Řešení trojúhelníkové soustavy M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
12 Level 2 Level 2 BLAS - funkce 3 typy základních operací Násobení matice-vektor Rank-1 a rank-2 update A = α x y T + A A = α x y T + A H = α x x T + H H = α x y T + ᾱ y x T + H H je hermitovská matice. Řešení trojúhelníkové soustavy M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
13 Level 2 Level 2 BLAS - funkce 3 typy základních operací Násobení matice-vektor Rank-1 a rank-2 update Řešení trojúhelníkové soustavy x = T 1 x x = T T x x = T H x T je regulární horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
14 Level 2 Level 2 BLAS - jmenná konvence XXYY - známe S,D,C,Z XX - Typ matice GE, GB - general, general banded HE, HB, HP - Hermitovská, H. pásová, H. Packed SY, SB, SP - Symetrická, S. pásová, S. pakovaná TR, TB, TP - Trojúhelníková, T. pásová, T. pakovaná YY - operace S - Solve M - Matice V - Vektor R - rank-1 R2 - rank-2 RK - rank-k R2K - rank-2k M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
15 Level 2 Level 2 BLAS - přehled funkcí GEMV y αa x + β y GBMV, HEMV, HBMV, HPMV, SYMV, SBMV, SPMV TRMV x αa xy TBMV, TPMV, TRSV, TBSV, TPSV GER A α x y T + A, A m n GERU, GERC HER, HPR A α x x H + A, A m n HER2, HPR2 A α x y H + y(αx) H + A, A m n SYR, SPR A α x x T + A, A m n SYR2, SPR2 A α x y T + α( y x T + A, A m n M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
16 Level 2 Level 2 BLAS - výkon Výkon Velkou část běžně používaných algoritmů lineární algebry je možné napsat pomocí Level 2 BLAS volání. Efektivitu lze dosáhnout použitím implementací šitých na míru používanému hw. Na vektorových procesorech tato implementace používá co nejdelší vektory a všechny výsledné operace počítají s celým vektorem (řádek nebo sloupec) naráz. Při použití vektorových registerů lze zvýšit efektivitu znovupoužítím vektorů (bez ukládání do paměti). Nevhodnost Tento přístup není vhodný na strojích s hierarchickou pamětí (globální pamět, cache, nebo lokální pamět a vektorové registry) nebo na čistě paralelních strojích. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
17 Level 2 Blas příklad program ger_main real a(5,3), x(10), y(10), alpha integer m, n, incx, incy, i, j, lda m = 2 n = 3 lda = 5 incx = 2 incy = 1 alpha = 0.5 do i = 1, 10 x(i) = 1.0 y(i) = 1.0 end do
18 Level 2 Blas příklad do i = 1, m do j = 1, n a(i,j) = j end do end do call sger (m, n, alpha, x, incx, y, incy, a, lda) print*, Matrix A: do i = 1, m print*, (a(i,j), j = 1, n) end do end Matrix A:
19 Level 3 Level 3 BLAS Matice - Matice Nové HW platformy se sdílenou pamětí nebo RISC procesory (Cray, SGI) ukázaly nedostatky Level 2 BLAS: stále malý poměr mezi početními operacemi a datovými přesuny - nebylo možné dostatečně využít nových velkých cache nabo lokálních pamětí. Nutně vedlo na restrukturalizaci na BLOKY a operovat co nejdelší dobu s celými bloky operacemi Matice-Matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
20 Level 3 Level 3 BLAS Složitost a efektivita Plné využití lokálnách cache vede typicky na O(n 3 ) skalárních operací, ale pouze O(n 2 ) datových přesunů. Tento jev je nazýván surface-to-volume efekt. Navíc lze vhodně paralelizovat: Operace na různých blocích mohou být prováděny současně Operace na každém bloku (skalární i vektorové) mohou být prováděny paralelně M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
21 Level 3 Level 3 BLAS - funkce Přechod z Level 2 na Level 3 Nahrazením vektorů x, y maticemi B, C. Základní operace Násobení matice-matice Rank-k update pro symetrickou matici Násobení matice trojúhelníkovou maticí Řešení trojúhelníkové soustavy s více pravými stranami α, β jsou skaláry, A, B, C jsou čtvercové matice a T je horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
22 Level 3 Level 3 BLAS - funkce Základní operace Násobení matice-matice C = αab + βc C = αa T B + βcy C = αa T B T + βcy Rank-k update pro symetrickou matici Násobení matice trojúhelníkovou maticí Řešení trojúhelníkové soustavy s více pravými stranami α, β jsou skaláry, A, B, C jsou čtvercové matice a T je horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
23 Level 3 Level 3 BLAS - funkce Základní operace Násobení matice-matice Rank-k update pro symetrickou matici C = αaa T + βc C = αa T A + βc C = αa T B + αb T A + βc C = αab T + αba T + βc Násobení matice trojúhelníkovou maticí Řešení trojúhelníkové soustavy s více pravými stranami α, β jsou skaláry, A, B, C jsou čtvercové matice a T je horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
24 Level 3 Level 3 BLAS - funkce Základní operace Násobení matice-matice Rank-k update pro symetrickou matici Násobení matice trojúhelníkovou maticí B = αtb B = αt T B B = αbt B = αbt T Řešení trojúhelníkové soustavy s více pravými stranami α, β jsou skaláry, A, B, C jsou čtvercové matice a T je horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
25 Level 3 Level 3 BLAS - funkce Základní operace Násobení matice-matice Rank-k update pro symetrickou matici Násobení matice trojúhelníkovou maticí Řešení trojúhelníkové soustavy s více pravými stranami B = αt 1 B B = αt T1 B B = αbt 1 B B = αbt T B T je regulární horní nebo dolní trojúhelníková matice. α, β jsou skaláry, A, B, C jsou čtvercové matice a T je horní nebo dolní trojúhelníková matice. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
26 Level 3 Level 3 BLAS - přehled funkcí GEMM C αop(a)op(b) + βc, op(x) = X, X T, X H, C m n SYMM, HEMM SYRK C αaa H + βc, C n n HERK C αaa T + βc, C n n SYR2K C αab H + αba H + βc, C n n HER2K C ᾱab H + αba H + βc, C n n TRMM B αop(a)b, op(a) = A, A T, A H, C m n TRSM B αop(a 1 )B, op(a) = A, A T, A H, C m n M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
27 Level 3 Level 3 BLAS - výkon na CRAY Počet procesorů Level2: y αax + βy Level3: C αab + βc Level2: x αux Level3: B αub Level2: x αu 1 x Level3: B αu 1 B Tabulka: Rychlost v MFlops/s Level 2 a Level 3 BLAS na CRAY C90, U - horní trojúhelníková, n = 1000 M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
28 Level 3 Blas příklad program symm_main real a(3,3), b(3,2), c(3,3), alpha, beta integer m, n, lda, ldb, ldc, i, j character uplo, side uplo = u side = l m = 3 n = 2 lda = 3 ldb = 3 ldc = 3 alpha = 0.5 beta = 2.0 do i = 1, m do j = 1, m a(i,j) = 1.0 end do end do
29 Level 3 Blas příklad do i = 1, m do j = 1, n c(i,j) = 1.0 b(i,j) = 2.0 end do end do call ssymm (side, uplo, m, n, alpha, a, lda, b, ldb, beta, c, ldc) print*, Matrix C: do i = 1, m print*, (c(i,j), j = 1, n) end do end Matrix C:
30 BLAS další informace Další BLAS informace Implementace Referenční implementace ke stažení na Existuje řada BLAS implementací (Fortran, asembler, C) ATLAS Automated Tuned Linear Algebra Source Po několik hodin zkouší Váš systém a vybírá optimální implementaci L1 cache reuse FP unit Memory fetch Register reuse Loop overhead M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
31 BLAS další informace BLAS rozšíření, literatura BLAS Technical Forum Fórum pro udržování a rozšiřování BLASu, udržování ve světle moderního softwaru, programovacích jazyků a výrobců hardwaru. Dense, Sparse, low-level výpočetní jádra a pod. Literatura C. Lawson, R. Hanson, D. Kincaid, and F. Krogh. Basic Linear Algebra Subprograms for Fortran usage. ACM Trans. Math. Softw., 5: , 1979 D. Dodson and J.lewis. Issues relating to extension of Basic Linear Algebra Subprograms. ACM SIGNUM Newsletter, 20(1):2-18, M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
32 - Linear Algebra Package Numerická knihovna napsaná ve Fortran 77. Základní nástroje pro řešení problémů lineární algebry efektivně na široké škále výpočetních strojů. lineární soustavy metoda nejmenších čtverců pro systémy rovnic problémy vlastních čísel faktorizace matice (LU, Cholesky, QR, SVD, Schur) odhady podmíněnosti, reorderings husté a pásové matice ne pro řídké reálné i komplexní M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
33 - vznik Historie Vznikla integrací LINPACK a EISENPACK do jednoho unifikovaného kódu. (Starší knihovny vesměs ignorovaly cenu datových přesunů v paměti). přestrukturoval pečlivě kód tak, aby se dalo využít data reusing. Přínos Vývojáři přepsali předešlé knihovny do séríı volání BLAS funkcí (ty lze optimalizovat pro danou architekturu). Přidali množství rozděl a panuj algoritmů pro problémy vlastních čísel. Nahrazují absolutní chybové odhady relativními umožňující lepší škálovatelnost. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
34 - použití Kde použít 1 i víceprocesorové stroje (méně než 100) vektorové procesory RISC procesory Všechny výkonné stroje CRAY T90, CRAY J90, Fujitsu VPP, Hitaschi, HP-Convex, IBM Power 2, SGI Poer Callenge, NEC SX-4 M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
35 Konvence - jmenné konvence, některé funkce?posv Výpočet řešení lineární soustavy (symetrická nebo Hermitovská, positivně definitní) s vícenásobnou pravou stranou. AX = B kde A je sym.pos.def, B pravé strany ve sloupcích, X řešení po sloupcích Matice B je přepsána řešením X. Podle parametru uplo se voĺı U horní trojúhelníková nebo L dolní trojúhelníková matice při Choleskyho rozkladu A = U T U nebo A = LL T M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
36 Konvence - jmenné konvence, některé funkce Konvence?yyzz,?yyzzz,? - typ dat s - float d - double c - complex (float, float) z - complex (double, double) Volání Fortran: call sposv(uplo, n, nrhs, a, lda, b, ldb, info) call dposv(uplo, n, nrhs, a, lda, b, ldb, info) call cposv(uplo, n, nrhs, a, lda, b, ldb, info) call zposv(uplo, n, nrhs, a, lda, b, ldb, info) Volání C:?posv(uplo, n, nrhs, a, lda, b, ldb, info); M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
37 Konvence - řešení lineárních soustav Konvence?yyzz,?yyzzz, yy - typ matice ge - general po - symetrická nebo Hermitovská positivně definitní sy - symetrická indefinitní he - Hermitovská indefinitní tr - triangular... Podle typu soustavy?gesv - čtvercová matice?posv - symetrická nebo Hermitovská pos. def. matice?sysv - reálná/komplexní symetrická matice?hesv - Hermitovská matice M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
38 Konvence - Konvence Konvence?yyzz,?yyzzz, zzz - požadovaná operace trf - trojúhelníková faktorizace trs - řešení soustavy s faktorizovanou maticí con - spočti odhad podmíněnosti matice rfs - zjemni řešení a spočti chybu rfsx - zjemni řešení a spočti chybu - extra-precise tri - spočti inverzi matice z faktorizace equ - equilibrate matrix Co dělá? sgetrf - Trojúhelníková faktorizace obecné matice v jednoduché přesnosti M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
39 Drivery - driver rutiny Driver kombinuje obvyklá volání dohromady. Konvence zzz -sv - simple (jednoduchý driver) -svx - expert -svxx - extra přesný iterativní expert Jeden driver nebo více volání?gesv - faktorizace a řešení?getrf - LU rozklad?getrs - Výpočet řešení?getrfs - zjemnění řešení, odhad chyby nebo zavolat?gesvx, který obhospodaří vše naráz. M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
40 Příklad Lapack příklad #include <stdlib.h> #include <stdio.h> /* prototyp DPOSV */ extern void dposv( char* uplo, int* n, int* nrhs, double* a, int* lda, double* b, int* ldb, int* info); /* Parametry, rozměry */ #define N 5 #define NRHS 3 #define LDA N #define LDB N M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
41 Příklad Lapack příklad /* Výpis matice (jen pro kontrolu) */ void print_matrix( char* desc, int m, int n, double* a, int lda ) { int i, j; printf( "\n %s\n", desc ); for( i = 0; i < m; i++ ) { for( j = 0; j < n; j++ ) printf( " %6.2f", a[i+j*lda] ); printf( "\n" ); } } M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
42 Příklad Lapack příklad /* Hlavní program */ int main() { /* Lokální proměnné */ int n = N, nrhs = NRHS, lda = LDA, ldb = LDB, info; /* Lokální pole - matice a */ double a[lda*n] = { 3.14, 0.00, 0.00, 0.00, 0.00, 0.17, 0.79, 0.00, 0.00, 0.00, -0.90, 0.83, 4.53, 0.00, 0.00, 1.65,-0.65, -3.70, 5.32, 0.00, -0.72, 0.28, 1.60,-1.37, 1.98 }; M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
43 Příklad Lapack příklad double b[ldb*nrhs] = { -7.29, 9.25, 5.99,-1.94, -8.30, 6.11, 2.90,-5.05, -3.80, 9.66, 0.59, 8.88, 7.57, 5.57,-1.67 }; /* Řešení soustavy A*X = B */ dposv( "Upper", &n, &nrhs, a, &lda, b, &ldb, &info ); /* Konstrola návratové hodnoty: positvní definitnost */ if( info > 0 ) { printf( "Hlavní minor řádu %i není positivně definitní.\n", info ); printf( "Řešení nelze spočítat.\n" ); exit(1); } M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
44 Příklad Lapack příklad /* Print solution */ print_matrix( "Řešení", n, nrhs, b, ldb ); /* Vypiš detail Choleskyho faktoriazce */ print_matrix( "Detail Choleskyho faktorizace", n, n, a, lda ); exit(0); } M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
45 BLACS PBLAS Sca Část II distribuovaná pamět 3 BLACS 4 PBLAS 5 Sca M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
46 BLACS PBLAS Sca BLACS - Basic Linear Algebra Communication Subroutines Komunikační platforma Standartizovaný interface (přes nejrůznější komunikátory MPI, PVM, CMMD,...) procesní sít (2D grid) Kontextové operace Komunikace 2D poĺı Komunikace bez ID Hlavní účel Komunikace submatic vhodné pro husté matice v algoritmech lineární algebry (např. Sca) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
47 BLACS PBLAS Sca BLACS - 2d grid, oblasti, kontexty Procesy jsou uspořádány do 2D gridu Každý proces je člen některého ze tří oblatí (Scope): All - Všechny procesy v gridu Row - Všechny procesy na stejné řádce Column - Všechny procesy na stejném sloupci BLACS komunikace je vázána na kontext - integer (srovnej s MPI komunikátorem) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
48 BLACS PBLAS Sca BLACS - komunikace submatice Jednotka BLACS komunikace je submatice specifikované velikosti a tvaru Submatice Obecná GE Lichoběžníková TR (zobecněná trojúhelníková) Komprimování, paketace je zcela schována před uživatelem Podporavané typy I - Integer S - Single precision D - Double precision C - Complex single precision Z - Complex double precision M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
49 BLACS PBLAS Sca BLACS - bod-bod komunikace Vysílání xgesd2d(ctxt, M, N, A, LDA, RDST, CDST) xtrsd2d(ctxt, UPLO, DIAG, M, N, A, LDA, RDST, CDST) Příjem xgerv2d(ctxt, M, N, A, LDA, RDST, CDST) xtrrv2d(ctxt, UPLO, DIAG, M, N, A, LDA, RDST, CDST) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
50 BLACS PBLAS Sca BLACS - souhrnná komunikace Broadcast - Vysílání xgebs2d(ctxt, SCOPE, TOP, M, N, A, LDA, RDST, CDST) xtrbs2d(ctxt, SCOPE, TOP, UPLO, DIAG, M, N, A, LDA, RDST, CDST) Broadcast - Příjem xgebr2d(ctxt, SCOPE, TOP, M, N, A, LDA, RDST, CDST) xtrbr2d(ctxt, SCOPE, TOP, UPLO, DIAG, M, N, A, LDA, RDST, CDST) Souhrnné operace (SUM, MAX, MIN) xgsum2d(ctxt, SCOPE, TOP, M, N, A, LDA, RDST, CDST) xgamx2d(ctxt, SCOPE, TOP, M, N, A, LDA, RA, CA, RCGLAG, RDST, CDST) xgamn2d(ctxt, SCOPE, TOP, M, N, A, LDA, RA, CA, RCGLAG, RDST, CDST) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
51 BLACS PBLAS Sca BLACS - souhrnná komunikace - topologie Topologie TOP specifikuje komunikační vzor I - Increasing ring D - Decreasing ring S - Split ring M - Multi ring 1-1-tree B - Bidirectional exchange - výchozí (třeba MPI BCAST) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
52 BLACS PBLAS Sca BLACS - start ve Frotranu Inicializace CALL BLACS PINFO(ME, NP) Inicializace kontextu CALL BLACS GET(0, 0, CTXT) CALL BLACS GRIDINIT(CTXT, Row, P, Q) CALL BLACS GRIDINFO(CTXT, P, Q, MYROW, MYCOL) Získej něčí rank ze souřadnic RANK = CALL BLACS PNUM(CTXT, ROW, COL) Získej něčí souřadnice z ranku CALL BLACS PCOORD(CTXT, RANK, ROW, COL) Ukončení CALL BLACS EXIT(0) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
53 BLACS PBLAS Sca PBLAS - Parallel BLAS Úvod Tak podobný BLAS jak jen je možné Přidána pouze jediná funkce Očekává se, že se stane podobným standartem jako BLAS Operuje nad 2D blokovým cyklickým uspořádáním Vyžaduje mnoho popisných parametrů Zavádí se array descriptor M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
54 BLACS PBLAS Sca PBLAS - Parallel BLAS Úvod Tak podobný BLAS jak jen je možné Přidána pouze jediná funkce (transpozice matice) Očekává se, že se stane podobným standartem jako BLAS Operuje nad 2D blokovým cyklickým uspořádáním Vyžaduje mnoho popisných parametrů Zavádí se array descriptor M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
55 BLACS PBLAS Sca PBLAS - array descriptor Popisovač obsahuje 1 DT A Typ deskriptoru 2 CTXT A BLACS kontext 3 M A Počet řádků v distribuované matici 4 N A Počet sloupců v distribuované matici 5 MB A Počet řádků v bloku 6 MB A Počet sloupců v bloku 7 RSRC A Řádek procesu kde je uložena první řádka matice 8 CSRC A Sloupec procesu kde je uložen první sloupec matice 9 LLD A Hlavní dimenze lokálního pole ukládající lokální bloky M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
56 BLACS PBLAS Sca PBLAS - 2D bloková cyklická distribuce Tabulka: Matice 5x5, bloky 2x Tabulka: pohled procesů 2x2 grid M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
57 BLACS PBLAS Sca PBLAS - volání Srovnání BLAS x PBLAS C = βc + αop(a)op(b), kde A zaleží na TRANSA, B na TRANSB, op(a) je M x K, op(b) je K x N. CALL DGEMM ( TRANSA, TRANSB, M, N, K, ALPHA, A( IA, JA ), LDA, B( IB, JB ), LDB, BETA, C( IC, JC ), LDC ) CALL PDGEMM ( TRANSA, TRANSB, M, N, K, ALPHA, A, IA, JA, DESC_A, B, IB, JB, DESC_B, BETA, C, IC, JC, DESC_C ) M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
58 BLACS PBLAS Sca Sca - Scalable Linear Algebra Package pro MIMD počítače - distribuovaná pamět Vetšina funkcí z u Bez podpory banded apacked formátů matic Bez pokročilých algoritmů SVD, QR vlastní čísla pro nesymetrický problém... M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
59 BLACS PBLAS Sca Sca - Konvence Podobnost Tak jako vychází z BLAS tak Scal vychází z PBLAS převzato z u (stačí předsadit p) Submatice musí být předávány explicitně x Sca A(I, J), LDA - přístup A, I, J, DESCA - Sca přístup M. Mádĺık (MFF UK) Numerické knihovny 18. října / 52
60 Paralelní LU rozklad DO 10 J = JA, JA+MIN(M, N)-1, DESCA(5) JB = MIN( MIN (M,N)-J+JA, DESCA(5)) I = IA + J - JA Faktorizuj diagonalni a poddiagonalni bloky Testuj singularitu CALL PDGETF2( M-J+JA, JB, A, I,J, DESCA, IPIV, IINFO) Oprav INFO a pivot IF ( INFO.EQ.0.AND. IIFNO.GT.0 ) INFO = IINFO + J - JA Aplikuj zmeny na sloupce JA:J-JA CALL PDLASWP( Forward, Rows, J-JA,, IA, JA, DESCA, J, $ J+JB-1, IPIV)
61 IF (J-JA+1JB+1.LE.N ) THEN Aplikuj zmeny na sloupce J+JB:JA+N-1. CALL PDTRSM( Left, Lower, No transpose, Unit, $ JB, N-J-JB+JA, ONE, A, I, J, DESCA, A, I, J+B, DESCA) IF (J-JA+JB+1.LE.M) THEN Udate zbyvajici submatice CALL PDGEMM( No transpose, No transpose, $ M-J-JB+JA, N-J-JB_JA, JB, -ONE, A, $ I+JB,J, DESCA, A, I, J+JB, DESCA, $ ONE, A, I+JB, J+JB, DESCA) END IF END IF 10 CONTINUE
Základní rutiny pro numerickou lineární algebru. I. Šimeček, M. Šoch
Základní rutiny pro numerickou lineární algebru I. Šimeček, M. Šoch xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 BI-EIA, ZS2011/12, Predn.10
VíceOd lineárních rovnic k extrémním superpočítačovým úlohám. Vít Vondrák
Od lineárních rovnic k extrémním superpočítačovým úlohám Vít Vondrák Od lineárních rovnic k extrémním superpočítačovým úlohám Vít Vondrák + David Horák a jeho Permoník Osnova přednášky Zobrazování čísel
VíceNumerické metody a programování
Projekt: Inovace výuky optiky se zaměřením na získání experimentálních dovedností Registrační číslo: CZ.1.7/2.2./28.157 Numerické metody a programování Lekce 4 Tento projekt je spolufinancován Evropským
VíceNumerické metody a programování. Lekce 4
Numerické metody a programování Lekce 4 Linarní algebra soustava lineárních algebraických rovnic a 11 a 12 x 2 a 1, N x N = b 1 a 21 a 22 x 2 a 2, N x N = b 2 a M,1 a M,2 x 2 a M,N x N = b M zkráceně A
VíceC2115 Praktický úvod do superpočítání
C2115 Praktický úvod do superpočítání X. lekce Petr Kulhánek, Tomáš Bouchal kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Přírodovědecká fakulta, Masarykova univerzita, Kotlářská 2, CZ-61137
VíceČetba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).
Předmět: MA 4 Dnešní látka Vektorový (lineární) prostor (připomenutí) Normovaný lineární prostor Normy matic a vektorů Symetrické matice, pozitivně definitní matice Gaussova eliminační metoda, podmíněnost
VíceFP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci
FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY Dana Černá http://www.fp.tul.cz/kmd/ Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci OBSAH A CÍLE SEMINÁŘE: Opakování a procvičení vybraných
VíceÚvod do lineární algebry
Úvod do lineární algebry 1 Aritmetické vektory Definice 11 Mějme n N a utvořme kartézský součin R n R R R Každou uspořádanou n tici x 1 x 2 x, x n budeme nazývat n rozměrným aritmetickým vektorem Prvky
VíceČetba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).
Předmět: MA 4 Dnešní látka Lineární (vektorový) prostor Normovaný lineární prostor Normy matic a vektorů Symetrické matice, pozitivně definitní matice Gaussova eliminační metoda, podmíněnost matic Četba:
VíceParalelní a distribuované výpočty (B4B36PDV)
Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech
VíceZáklady maticového počtu Matice, determinant, definitnost
Základy maticového počtu Matice, determinant, definitnost Petr Liška Masarykova univerzita 18.9.2014 Matice a vektory Matice Matice typu m n je pravoúhlé (nebo obdélníkové) schéma, které má m řádků a n
VíceVšechno, co jste kdy chtěli vědět o maticích, ale báli jste se zeptat
Všechno, co jste kdy chtěli vědět o maticích, ale báli jste se zeptat Čtvercová matice n n, např. může reprezentovat: A = A A 2 A 3 A 2 A 22 A 23 A 3 A 32 A 33 matici koeficientů soustavy n lineárních
VíceAplikovaná numerická matematika - ANM
Aplikovaná numerická matematika - ANM 3 Řešení soustav lineárních rovnic iterační metody doc Ing Róbert Lórencz, CSc České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových
VíceOperace s maticemi
Operace s maticemi Seminář druhý 17.10. 2018 Obsah 1 Operace s maticemi 2 Hodnost matice 3 Regulární matice 4 Inverzní matice Matice Definice (Matice). Reálná matice typu m n je obdélníkové schema A =
Více8 Matice a determinanty
M Rokyta, MFF UK: Aplikovaná matematika II kap 8: Matice a determinanty 1 8 Matice a determinanty 81 Matice - definice a základní vlastnosti Definice Reálnou resp komplexní maticí A typu m n nazveme obdélníkovou
VíceÚstav technické matematiky FS ( Ústav technické matematiky FS ) / 35
Úvod do paralelního programování 2 MPI Jakub Šístek Ústav technické matematiky FS 9.1.2007 ( Ústav technické matematiky FS ) 9.1.2007 1 / 35 Osnova 1 Opakování 2 Představení Message Passing Interface (MPI)
VíceČetba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).
Předmět: MA 4 Dnešní látka Vlastní čísla a vektory Google Normovaný lineární prostor Normy matic a vektorů Symetrické matice, pozitivně definitní matice Gaussova eliminační metoda, podmíněnost matic Četba:
VíceMATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]
MATICE Matice typu m/n nad tělesem T je soubor m n prvků z tělesa T uspořádaných do m řádků a n sloupců: a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij] a m1 a m2 a mn Prvek a i,j je prvek matice A na místě
Více1 0 0 u 22 u 23 l 31. l u11
LU dekompozice Jedná se o rozklad matice A na dvě trojúhelníkové matice L a U, A=LU. Matice L je dolní trojúhelníková s jedničkami na diagonále a matice U je horní trojúhelníková. a a2 a3 a 2 a 22 a 23
VíceKnihovny pro CUDA J. Sloup a I. Šimeček
Knihovny pro CUDA J. Sloup a I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PRC, LS2010/11, Predn.10 Příprava studijního programu
VíceZáklady matematiky pro FEK
Základy matematiky pro FEK 2. přednáška Blanka Šedivá KMA zimní semestr 2016/2017 Blanka Šedivá (KMA) Základy matematiky pro FEK zimní semestr 2016/2017 1 / 20 Co nás dneska čeká... Závislé a nezávislé
VíceSlajdy k přednášce Lineární algebra I
Slajdy k přednášce Lineární algebra I Milan Hladík Katedra Aplikované Matematiky, Matematicko-fyzikální fakulta, Univerzita Karlova v Praze, http://kammffcunicz/~hladik 22 října 203 Intro Nejstarší zaznamenaná
VíceArnoldiho a Lanczosova metoda
Arnoldiho a Lanczosova metoda 1 Částečný problém vlastních čísel Ne vždy je potřeba (a někdy to není ani technicky možné) nalézt celé spektrum dané matice (velké řídké matice). Úloze, ve které chceme aproximovat
VíceAplikace metody BDDC
Aplikace metody BDDC v problémech pružnosti P. Burda, M. Čertíková, E. Neumanová, J. Šístek A. Damašek, J. Novotný FS ČVUT, ÚT AVČR 14.9.2006 / SAMO 06 (FS ČVUT, ÚT AVČR) 14.9.2006 / SAMO 06 1 / 46 Osnova
VíceObecné výpočty na GPU v jazyce CUDA. Jiří Filipovič
Obecné výpočty na GPU v jazyce CUDA Jiří Filipovič Obsah přednášky motivace architektura GPU CUDA programovací model jaké algoritmy urychlovat na GPU? optimalizace Motivace Moorův zákon stále platí pro
VíceMatematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic
Přednáška třetí (a pravděpodobně i čtvrtá) aneb Úvod do lineární algebry Matice a soustavy rovnic Lineární rovnice o 2 neznámých Lineární rovnice o 2 neznámých Lineární rovnice o dvou neznámých x, y je
Více0.1 Úvod do lineární algebry
Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Lineární rovnice o 2 neznámých Definice 011 Lineární rovnice o dvou neznámých x, y je rovnice, která může být vyjádřena ve tvaru ax + by = c, kde
VíceČást 2 POROVNÁNÍ VÝKONNOSTI A POUŽITELNOSTI ARCHITEKTUR V TYPICKÝCH APLIKACÍCH
Část 2 POROVNÁNÍ VÝKONNOSTI A POUŽITELNOSTI ARCHITEKTUR V TYPICKÝCH APLIKACÍCH Paralelizace kódu Rozdíl v přístupu k paralelizaci kódu si ukážeme na operaci násobení matice maticí: Mějme tři čtvercové
Víceaneb jiný úhel pohledu na prvák
Účelná matematika aneb jiný úhel pohledu na prvák Jan Hejtmánek FEL, ČVUT v Praze 24. června 2015 Jan Hejtmánek (FEL, ČVUT v Praze) Technokrati 2015 24. června 2015 1 / 18 Outline 1 Motivace 2 Proč tolik
Více0.1 Úvod do lineární algebry
Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Vektory Definice 011 Vektorem aritmetického prostorur n budeme rozumět uspořádanou n-tici reálných čísel x 1, x 2,, x n Definice 012 Definice sčítání
VíceMatice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n
[1] Základní pojmy [2] Matice mezi sebou sčítáme a násobíme konstantou (lineární prostor) měníme je na jiné matice eliminační metodou násobíme je mezi sebou... Matice je tabulka čísel s konečným počtem
VíceZáklady algoritmizace a programování
Základy algoritmizace a programování Příklady v MATLABu Přednáška 10 30. listopadu 2009 Řídící instrukce if else C Matlab if ( podmínka ) { } else { } Podmíněný příkaz if podmínka elseif podmínka2... else
VíceLineární algebra - I. část (vektory, matice a jejich využití)
Lineární algebra - I. část (vektory, matice a jejich využití) Michal Fusek Ústav matematiky FEKT VUT, fusekmi@feec.vutbr.cz 2. přednáška z ESMAT Michal Fusek (fusekmi@feec.vutbr.cz) 1 / 40 Obsah 1 Vektory
VíceSlovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy
1 Lineární algebra Slovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy islámského matematika Hisab al-džebr val-muqabala ( Věda o redukci a vzájemném
VíceUčební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008
Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty študenti MFF 15. augusta 2008 1 14 Vlastní čísla a vlastní hodnoty Požadavky Vlastní čísla a vlastní hodnoty lineárního
VíceOPS Paralelní systémy, seznam pojmů, klasifikace
Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus
VíceTransformace obrazu Josef Pelikán KSVI MFF UK Praha
Transformace obrazu 99725 Josef Pelikán KSVI MFF UK Praha email: Josef.Pelikan@mff.cuni.cz WWW: http://cgg.ms.mff.cuni.cz/~pepca/ Transformace 2D obrazu dekorelace dat potlačení závislosti jednotlivých
VíceImplementace 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ícePROSTORY SE SKALÁRNÍM SOUČINEM. Definice Nechť L je lineární vektorový prostor nad R. Zobrazení L L R splňující vlastnosti
PROSTORY SE SKALÁRNÍM SOUČINEM Definice Nechť L je lineární vektorový prostor nad R. Zobrazení L L R splňující vlastnosti 1. (x, x) 0 x L, (x, x) = 0 x = 0, 2. (x, y) = (y, x) x, y L, 3. (λx, y) = λ(x,
VíceMatematika v programovacích
Matematika v programovacích jazycích Pavla Kabelíková am.vsb.cz/kabelikova pavla.kabelikova@vsb.cz Úvodní diskuze Otázky: Jaké programovací jazyky znáte? S jakými programovacími jazyky jste již pracovali?
VíceMaticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:
3 Maticový počet 3.1 Zavedení pojmu matice Maticí typu (m, n, kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru: a 11 a 12... a 1k... a 1n a 21 a 22...
VícePř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íce4. LU rozklad a jeho numerická analýza
4 LU rozklad a jeho numerická analýza Petr Tichý 24 října 2012 1 Úvod Nechť A je regulární matice Řešíme Ax = b LU rozklad (Gaussova eliminace) je jeden z nejdůležitějších nástrojů pro problém řešení soustav
VíceAVDAT Vektory a matice
AVDAT Vektory a matice Josef Tvrdík Katedra informatiky Přírodovědecká fakulta Ostravská univerzita Vektory x = x 1 x 2. x p y = y 1 y 2. y p Řádkový vektor dostaneme transpozicí sloupcového vektoru x
VíceDnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda
Předmět: MA 4 Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Četba: Text o lineární algebře v Příručce přežití na webových
VíceUčební texty k státní bakalářské zkoušce Matematika Skalární součin. študenti MFF 15. augusta 2008
Učební texty k státní bakalářské zkoušce Matematika Skalární součin študenti MFF 15. augusta 2008 1 10 Skalární součin Požadavky Vlastnosti v reálném i komplexním případě Norma Cauchy-Schwarzova nerovnost
VíceParalelní a distribuované výpočty (B4B36PDV)
Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech
VíceFaculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague
Tomáš Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague 1 / 63 1 2 3 4 5 6 7 8 9 10 11 2 / 63 Aritmetický vektor Definition 1 Aritmetický vektor x je uspořádaná
VíceČtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:
Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury
VíceCo je obsahem numerických metod?
Numerické metody Úvod Úvod Co je obsahem numerických metod? Numerické metody slouží k přibližnému výpočtu věcí, které se přesně vypočítat bud nedají vůbec, nebo by byl výpočet neúměrně pracný. Obsahem
VíceOperace s maticemi. 19. února 2018
Operace s maticemi Přednáška druhá 19. února 2018 Obsah 1 Operace s maticemi 2 Hodnost matice (opakování) 3 Regulární matice 4 Inverzní matice 5 Determinant matice Matice Definice (Matice). Reálná matice
VíceKapitola 11: Vektory a matice 1/19
Kapitola 11: Vektory a matice 1/19 2/19 Prostor R n R n = {(x 1,..., x n ) x i R, i = 1,..., n}, n N x = (x 1,..., x n ) R n se nazývá vektor x i je i-tá souřadnice vektoru x rovnost vektorů: x = y i =
VíceJan 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ícePřipomenutí co je to soustava lineárních rovnic
Připomenutí co je to soustava lineárních rovnic Příklad 2x 3y + z = 5 3x + 5y + 2z = 4 x + 2y z = 1 Soustava lineárních rovnic obecně Maticový tvar: a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a
VíceLineární algebra s Matlabem. Přednáška 1
Lineární algebra s Matlabem Přednáška 1 Základní informace Kontakt Michal Merta michal.merta@vsb.cz Kancelář IT447 homel.vsb.cz/~mer126 Čt 16:00 (předn.), 17:45 (cv.), PorEB413 Konzultace po předchozí
VíceHisab al-džebr val-muqabala ( Věda o redukci a vzájemném rušení ) Muhammada ibn Músá al-chvárizmího (790? - 850?, Chiva, Bagdád),
1 LINEÁRNÍ ALGEBRA 1 Lineární algebra Slovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy islámského matematika Hisab al-džebr val-muqabala ( Věda o redukci
VíceIvan Šimeček, Pavel Tvrdík
Optimalizace a hodnocení efektivity lineárních kódů Ivan Šimeček, Pavel Tvrdík Department of Computer Science and Engineering Faculty of Electrical Engineering Czech Technical University Karlovo nám. 13
VíceVlastní číslo, vektor
[1] Vlastní číslo, vektor motivace: směr přímky, kterou lin. transformace nezmění invariantní podprostory charakteristický polynom báze, vzhledem ke které je matice transformace nejjednodušší podobnost
Více2. Schurova věta. Petr Tichý. 3. října 2012
2. Schurova věta Petr Tichý 3. října 2012 1 Podobnostní transformace a výpočet vlastních čísel Obecný princip: Úloha: Řešíme-li matematickou úlohu, je často velmi vhodné hledat její ekvivalentní formulaci
VíceGlobální matice konstrukce
Globální matice konstrukce Z matic tuhosti a hmotnosti jednotlivých prvků lze sestavit globální matici tuhosti a globální matici hmotnosti konstrukce, které se využijí v řešení základní rovnice MKP: [m]{
VíceÚlohy nejmenších čtverců
Úlohy nejmenších čtverců Petr Tichý 7. listopadu 2012 1 Problémy nejmenších čtverců Ax b Řešení Ax = b nemusí existovat, a pokud existuje, nemusí být jednoznačné. Často má smysl hledat x tak, že Ax b.
VíceParalelní algoritmy v lineární algebře. Násobení matic
Paralelní algoritmy v lineární algebře Násobení matic Násobení matic mějme matice A, B, C R n,n počítáme součin C = AB mějme p procesu a necht p je mocnina dvou matice rozdělíme blokově na p p bloků pak
VíceNěkolik poznámek na téma lineární algebry pro studenty fyzikální chemie
Několik poznámek na téma lineární algebry pro studenty fyzikální chemie Jiří Kolafa Vektory. Vektorový prostor Vektor je často zaveden jako n-tice čísel, (v,..., v n ), v i R (pro reálný vektorový prostor);
VíceLinearní algebra příklady
Linearní algebra příklady 6. listopadu 008 9:56 Značení: E jednotková matice, E ij matice mající v pozici (i, j jedničku a jinak nuly. [...]... lineární obal dané soustavy vektorů. Popište pomocí maticového
VíceKTE / PPEL Počítačová podpora v elektrotechnice
KTE / PPEL Počítačová podpora v elektrotechnice Ing. Lenka Šroubová, Ph.D. email: lsroubov@kte.zcu.cz http://home.zcu.cz/~lsroubov 3. 10. 2012 Základy práce s výpočetními systémy opakování a pokračování
Vícestránkách přednášejícího.
Předmět: MA 4 Dnešní látka Iterační metoda Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Superrelaxační metoda (metoda SOR) Metoda sdružených gradientů Četba: Text o lineární algebře v Příručce
VíceKIV/ZI Základy informatiky MS EXCEL MATICOVÉ FUNKCE A SOUHRNY
KIV/ZI Základy informatiky MS EXCEL MATICOVÉ FUNKCE A SOUHRNY cvičící: Tomáš Ptáček zimní semestr 2012 MS EXCEL MATICE (ÚVOD) Vektor: (1D) v = [1, 2, 3, 5, 8, 13] Např.: matice sousednosti Matice: (2D)
VíceVold-Kalmanova řádová filtrace. JiříTůma
Vold-Kalmanova řádová filtrace JiříTůma Obsah Základy Kalmanovy filtrace Základy Vold-Kalmanovy filtrace algoritmus Globální řešení Příklady užití Vold-Kalmanovy řádové filtrace Kalmanův filtr ( n ) Process
Více4. Trojúhelníkový rozklad p. 1/20
4. Trojúhelníkový rozklad 4. Trojúhelníkový rozklad p. 1/20 4. Trojúhelníkový rozklad p. 2/20 Trojúhelníkový rozklad 1. Permutační matice 2. Trojúhelníkové matice 3. Trojúhelníkový (LU) rozklad 4. Výpočet
VíceNALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Doba řešení: 3 hodiny
NALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Závěrečná zkouška verze cvičná 9.1.2013 Doba řešení: 3 hodiny Přednášející: L. Barto, J. Tůma Křestní jméno: Příjmení: Instrukce Neotvírejte
VíceVektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace
Vektory a matice Aplikovaná matematika I Dana Říhová Mendelu Brno Obsah 1 Vektory Základní pojmy a operace Lineární závislost a nezávislost vektorů 2 Matice Základní pojmy, druhy matic Operace s maticemi
VíceVÝ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íceMOORE-PENROSEOVA INVERZE MATICE A JEJÍ APLIKACE. 1. Úvod
Kvaternion 1/2013, 7 14 7 MOORE-PENROSEOVA INVERZE MATICE A JEJÍ APLIKACE LADISLAV SKULA Abstrakt V článku je uvedena definice pseudoinverzní matice, ukázána její existence a jednoznačnost a zmíněny dvě
Více7. Lineární vektorové prostory
7. Lineární vektorové prostory Tomáš Salač MÚ UK, MFF UK LS 2017/18 Tomáš Salač ( MÚ UK, MFF UK ) 7. Lineární vektorové prostory LS 2017/18 1 / 62 7.1 Definice a příklady Definice 7.1 Množina G s binární
VíceProgramy pro ˇreˇsen ı ulohy line arn ıho programov an ı 18. dubna 2011
Programy pro řešení úlohy lineárního programování 18. dubna 2011 Přehled Mathematica Sage AMPL GNU Linear Programming Kit (GLPK) Mathematica Mathematika je program pro numerické a symbolické počítání.
VíceKapitola 11: Vektory a matice:
Kapitola 11: Vektory a matice: Prostor R n R n = {(x 1,, x n ) x i R, i = 1,, n}, n N x = (x 1,, x n ) R n se nazývá vektor x i je i-tá souřadnice vektoru x rovnost vektorů: x = y i = 1,, n : x i = y i
VíceProgram SMP pro kombinované studium
Zadání příkladů k procvičení na seminář Program SMP pro kombinované studium Nejdůležitější typy příkladů - minimum znalostí před zkouškovou písemkou 1) Matice 1. Pro matice 1 0 2 1 0 3 B = 7 3 4 4 2 0
VíceÚvod do OpenMP. Jiří Fürst
Úvod do OpenMP Jiří Fürst Osnova: Úvod do paralelního programování Počítače se sdílenou pamětí Základy OpenMP Sdílené a soukromé proměnné Paralelizace cyklů Příklady Úvod do paralelního programování Počítač
VíceVektory a matice. Petr Hasil. Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF)
Vektory a matice Petr Hasil Přednáška z matematiky Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem na discipĺıny společného základu
VícePovídání na téma. SUPERPOČÍTAČE DNES A ZÍTRA (aneb krátký náhled na SC) 3. 12. 2009 Filip Staněk
Povídání na téma SUPERPOČÍTAČE DNES A ZÍTRA (aneb krátký náhled na SC) 3. 12. 2009 Filip Staněk Co je to vlastně SC? Výpočetní systém, který určuje hranici maximálního možného výpočetního výkonu......v
VíceDEFINICE Z LINEÁRNÍ ALGEBRY
DEFINICE Z LINEÁRNÍ ALGEBRY Skripta Matematické metody pro statistiku a operační výzkum (Nešetřilová, H., Šařecová, P., 2009). 1. definice Vektorovým prostorem rozumíme neprázdnou množinu prvků V, na které
VíceIUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
VíceVI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku
VI Maticový počet VI1 Základní operace s maticemi Definice Tabulku a 11 a 12 a 1n a 21 a 22 a 2n, a m1 a m2 a mn kde a ij R, i = 1,, m, j = 1,, n, nazýváme maticí typu m n Zkráceně zapisujeme (a ij i=1m
VícePokročilé architektury počítačů
Pokročilé architektury počítačů Tutoriál 3 CUDA - GPU Martin Milata Výpočetní model CUDA Organizace kódu Sériově organizovaný kód určený pro CPU Paralelní kód prováděný na GPU Označuje se jako kernel GPU
Více1. Matice a maticové operace. 1. Matice a maticové operace p. 1/35
1. Matice a maticové operace 1. Matice a maticové operace p. 1/35 1. Matice a maticové operace p. 2/35 Matice a maticové operace 1. Aritmetické vektory 2. Operace s aritmetickými vektory 3. Nulový a opačný
VíceLineární algebra : Násobení matic a inverzní matice
Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda LS 2013/2014 vytvořeno: 17. března 2014, 12:42 1 2 0.1 Násobení matic Definice 1. Buďte m, n, p N, A
VíceVYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY
VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY Jan Krejčí 31. srpna 2006 jkrejci@physics.ujep.cz http://physics.ujep.cz/~jkrejci Obsah 1 Přímé metody řešení soustav lineárních rovnic 3 1.1 Gaussova eliminace...............................
VíceMatematika B101MA1, B101MA2
Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet
Více[1] LU rozklad A = L U
[1] LU rozklad A = L U někdy je třeba prohodit sloupce/řádky a) lurozklad, 8, b) P. Olšák, FEL ČVUT, c) P. Olšák 2010, d) BI-LIN, e) L, f) 2009/2010, g)l. Viz p. d. 4/2010 Terminologie BI-LIN, lurozklad,
VícePředstavení a vývoj architektur vektorových procesorů
Představení a vývoj architektur vektorových procesorů Drong Lukáš Dro098 1 Obsah Úvod 3 Historie, současnost 3 Architektura 4 - pipelining 4 - Operace scatter a gather 4 - vektorové registry 4 - Řetězení
Více1 Determinanty a inverzní matice
Determinanty a inverzní matice Definice Necht A = (a ij ) je matice typu (n, n), n 2 Subdeterminantem A ij matice A příslušným pozici (i, j) nazýváme determinant matice, která vznikne z A vypuštěním i-tého
VíceZpráva s popisem softwarového návrhu a specifikací rozhraní prototypového modulu pro odhad chyby a zjemnění sítě
TA02011196 1/5 Zpráva s popisem softwarového návrhu a specifikací rozhraní prototypového modulu pro odhad chyby a zjemnění sítě MEER (Modul for Error Estimation and Refinement) je knihovna sloužící pro
VíceParalelní výpočetní jádro matematického modelu elektrostatického zvlákňování
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 Obsah prezentace 1 MOTIVACE 2 VLÁKNOVÝ
VíceÚlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,
Úlohy k přednášce NMAG a : Lineární algebra a geometrie a Verze ze dne. května Toto je seznam přímočarých příkladů k přednášce. Úlohy z tohoto seznamu je nezbytně nutné umět řešit. Podobné typy úloh se
VíceZADÁNÍ ZKOUŠKOVÉ PÍSEMNÉ PRÁCE Z PŘEDMĚTU LINEÁRNÍ ALGEBRA PRO IT. Verze 1.1A
Verze 1.1A Čas na práci: 1 minut Za každý úkol můžete získat maximálně 1 bodů. Řešení každého příkladu zapisujte čitelně a srozumitelně, 2x 1 +4x 3 +3x 4 = 4 x 1 +2x 2 +4x 3 3x 4 = 1 2x 1 +x 2 x 3 3x 4
VíceAplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu
1 Podklady předmětu pro akademický rok 2006/2007 Radim Farana Obsah 2 Obsah předmětu, Požadavky kreditového systému, Datové typy jednoduché, složené, Programové struktury, Předávání dat. Obsah předmětu
VíceALGEBRA. Téma 5: Vektorové prostory
SLEZSKÁ UNIVERZITA V OPAVĚ Matematický ústav v Opavě Na Rybníčku 1, 746 01 Opava, tel. (553) 684 611 DENNÍ STUDIUM Téma 5: Vektorové prostory Základní pojmy Vektorový prostor nad polem P, reálný (komplexní)
VíceParalení programování pro vícejádrové stroje s použitím OpenMP. B4B36PDV Paralelní a distribuované výpočty
Paralení programování pro vícejádrové stroje s použitím OpenMP B4B36PDV Paralelní a distribuované výpočty Minulé cvičení: Vlákna a jejich synchronizace v C++ 11... 1 Minulé cvičení: Vlákna a jejich synchronizace
VíceSemestrální projekt. Předmět: Programování v jazyce C. Zadání: Operace s maticemi. Uživatelský manuál. ver. 1.0
Semestrální projekt Předmět: Programování v jazyce C Zadání: Operace s maticemi Uživatelský manuál ver. 1.0 Jakub Štrouf Obor: Aplikovaná informatika Semestr: 1. Rok: 2009/2010 Obsah: 1. Úvod 1.1. Technická
VíceLineární algebra : Násobení matic a inverzní matice
Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních
Více