High Performance Computing in Physics. General rules, basic methods for programming computationally
intensive problems (optimization, parallelization), execution of jobs at computational clusters and other practical
aspects. Recommended for master students or post-graduate students. Precondition is to have passed either
Numerical Methods of Computer Physics, Introduction to Programming in Matlab or a similar subject, basic
handling of Unix/Linux systems.
Last update: Mikšová Kateřina, Mgr. (13.05.2019)
High performance computing ve fyzice. Obecná pravidla, základní postupy v programování těchto úloh
(optimalizace,
paralelizace), spouštění úloh na výpočetních clusterech a další praktické aspekty. Pro 1. a 2. nmgr fyzikálních
oborů
nebo PGDS. Předpokladem je absolvování předmětů Numerické metody počítačové fyziky nebo Úvod do
programování v
prostředí MATLAB apod., schopnost základní práce se systémy Unix/Linux.
Last update: Mikšová Kateřina, Mgr. (13.05.2019)
Course completion requirements -
The condition for completing the course is a credit and an oral exam. Credit requirements require active participation in exercises. For this reason, corrective attempts to grant credit are not possible.
Last update: Mikšová Kateřina, Mgr. (12.05.2022)
Podmínkou zakončení předmětu je zápočet a ústní zkouška.
Požadavky udělení zápočtu vyžadují aktivní účast na cvičení. Z tohoto důvodu zápočet nelze opakovat.
Last update: Carva Karel, doc. RNDr., Ph.D. (17.10.2017)
Literature -
1. S. Goedecker, A. Hoisie, Performance Optimization of Numerically Intensive Codes, SIAM, Philadelphia, PA, 2001
2. J. Dongarra, J. Bunch, C. Moler and G. W. Stewart, Linpack User's Guide, SIAM, Philadelphia, PA, 1979, or online LAPACK Users' Guide
3. J. Dongarra, Sourcebook of parallel computing, Morgan Kaufmann Publishers, San Francisco, 2003
Last update: CARVA/MFF.CUNI.CZ (20.09.2009)
1. S. Goedecker, A. Hoisie, Performance Optimization of Numerically Intensive Codes, SIAM, Philadelphia, PA, 2001
2. J. Dongarra, J. Bunch, C. Moler and G. W. Stewart, Linpack User's Guide, SIAM, Philadelphia, PA, 1979, nebo online verze LAPACK Users' Guide
3. J. Dongarra, Sourcebook of parallel computing, Morgan Kaufmann Publishers, San Francisco, 2003
Last update: CARVA/MFF.CUNI.CZ (20.09.2009)
Requirements to the exam - Czech
Požadavky absolvování ústní zkoušky odpovídají rozsahu sylabu prezentovaném na přednášce.
Last update: Carva Karel, doc. RNDr., Ph.D. (17.10.2017)
Syllabus -
Introduction to computational complexity theory
Program optimizations:
Performance measurement, profiling
Cycle optimization
Memory distribution optimization
Sparse and other special matrices
Linear algebra packages: LAPACK, BLAS
Utilization of architecture-specific features (e.g. SSE instructions, cache size)
Parallelization (shared / distributed memory)
Specific features of selected programming language (mainly Fortran 95/2003, C/C++, Matlab)
Compiler options
Job execution:
Distributed job / resource management systems, introduction to Sun Grid Engine
Overview of available computational resources (clusters) in Czech Republic
Applications:
Selection of real physical problems aimed to test and strengthen acquired knowledge
The possibility to include problems proposed by students
Illustration of a task solved in practice: electronic structure calculation
Last update: CARVA/MFF.CUNI.CZ (20.09.2009)
Úvod do teorie výpočetní složitosti
Optimalizace programu:
měření výkonu, profilování
optimalizace cyklů
optimalizace rozloženi v paměti
řídké a jiné speciální matice
knihovny pro lineární algebru: LAPACK, BLAS
využití specifik architektury (např. SSE instrukce, velikost cache)
paralelizace (shared / distributed memory)
specifika vybraného jazyka (především Fortran 95/2003, C/C++, Matlab)
možnosti kompilace
Provádění výpočtu:
práce s distribuovanými systémy řízení úloh a zdrojů, seznámení se Sun Grid Engine
přehled dostupných výpočetních zdrojů v ČR
Aplikace:
Řada skutečných fyzikálních problémů pro otestování a upevnění získaných poznatků
Možnost zařazení studentem navrženého problému
Ukázka v praxi řešené úlohy: výpočet elektronové struktury