9600-1011/02 – Parallel Numerical Libraries (PNK)
Gurantor department | IT4Innovations | Credits | 6 |
Subject guarantor | doc. Mgr. Vít Vondrák, Ph.D. | Subject version guarantor | doc. Mgr. Vít Vondrák, Ph.D. |
Study level | undergraduate or graduate | Requirement | Compulsory |
Year | 1 | Semester | summer |
| | Study language | English |
Year of introduction | 2016/2017 | Year of cancellation | |
Intended for the faculties | USP, FEI, FAST, FS | Intended for study types | Follow-up Master |
Subject aims expressed by acquired skills and competences
Upon the successful completion of the course students will be able to actively use new terms in the field of parallel libraries.
Teaching methods
Lectures
Tutorials
Project work
Summary
Students are introduced to efficient parallel implementations of numerical methods and their application for parallel solutions to large-scale problems. These problems cannot be solved on common personal computers as they require supercomputers. Students will learn about the most frequently used, mainly open-source, libraries for numerical computations. Within the practical trainings the emphasis will be put on implementation in C/C++ or FORTRAN.
Compulsory literature:
1. Gene H. Golub and Charles F. Van Loan, Matrix Computations (Johns Hopkins Studies in the Mathematical Sciences), Dec 27, 2012
2. Manuals to all taught parallel numerical libraries.
Recommended literature:
Other appropriate resources available on the Internet.
Additional study materials
Way of continuous check of knowledge in the course of semester
E-learning
Other requirements
No other requirements.
Prerequisities
Subject has no prerequisities.
Co-requisities
Subject has no co-requisities.
Subject syllabus:
1. Introduction to FORTRAN Programming Language
2. Set of Tools for Numerical Computing
o Trilinos, Eigen, Armadillo, MKL
o PETSc a nadstavby (SLEPc, TAO, libMesh, Deal.II, FEniCS)
3. BLAS Specification (Basic linear algebra subroutines)
o Existing Implementations (ATLAS, GotoBLAS, MKL, CUBLAS)
4. Methods for Solving Dense Systems of Linear Equations
o Storage of Dense Matrices
o Blocking for Efficient Utilization of Processor Cache Memory
o Indefinite or Singular Matrix Systems of Linear Equations and Their Solution
o Stabilization through Pivotization and RBT (Random Butterfly Transformation) method
o Existing Implementations (LINPACK, LAPACK, ScaLAPACK, MKL, CULA, PLASMA, MAGMA)
5. Methods for Solving Sparse Systems of Linear Equations
o Storage of Sparse Matrices (CSR, CSC, …)
o Recasting for Retaining Sparsity
o Graph Methods (METIS and other)
o Multi-frontal Method
o Super-nodal Method
o Existing Implementations (MUMPS, SuperLU, PaStiX, PARDISO)
6. Methods for Solving Large-scale Eigenvalue Problems
o QR decomposition, Connection with Cholesky Decomposition
o Spectral and Singular Value Decomposition
o Iterative Methods
o Existing Implementations (e.g. ARPACK, BLOPEX, FEAST, MKL)
7. Preconditioning, Domain Decomposition, and Multigrid Methods
o Existing Implementations (Hypre, Trilinos, PETSc)
8. Methods of Discretization in HPC Context
o FDM, FEM
o Existing Implementations (libMesh, Deal.II, FEniCS)
Conditions for subject completion
Occurrence in study plans
Occurrence in special blocks
Assessment of instruction
Předmět neobsahuje žádné hodnocení.