SubjectsSubjects(version: 945)
Course, academic year 2016/2017
   Login via CAS
Fortran 95 and Parallel Programming - NPRF039
Title: Fortran 95 a paralelní programování
Guaranteed by: Department of Geophysics (32-KG)
Faculty: Faculty of Mathematics and Physics
Actual: from 2011
Semester: summer
E-Credits: 3
Hours per week, examination: summer s.:2/0, Ex [HT]
Capacity: unlimited
Min. number of students: unlimited
4EU+: no
Virtual mobility / capacity: no
State of the course: taught
Language: Czech
Teaching methods: full-time
Teaching methods: full-time
Additional information: http://geo.mff.cuni.cz/~lh
Guarantor: RNDr. Ladislav Hanyk, Ph.D.
Classification: Physics > Mathematics for Physicists
Annotation -
Last update: RNDr. Ladislav Hanyk, Ph.D. (08.05.2013)
Course of parallel programming in Fortran 95. (Auto)Parallelizing compilers, libraries for parallelization and parallelized libraries. OpenMP, MPI, GPU. Parallel algorithms.
Aim of the course -
Last update: HANYK/MFF.CUNI.CZ (12.04.2008)

Students able to parallelize (Fortran) source codes by various techniques.

Literature -
Last update: RNDr. Ladislav Hanyk, Ph.D. (27.09.2011)
  • M. Metcalf, J. Reid, M. Cohen, Modern Fortran Explained, Oxford Science, 2011
  • W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery, Numerical Recipes in Fortran 90: The Art of Parallel Scientific Computing, Cambridge University Press, 1996
  • OpenMP API Specification ver. 3.1, http://www.openmp.org
  • MPI: A Message-Passing Interface Standard ver. 2.2, http://www.mpi-forum.org
  • NVIDIA CUDA C Programming Guide ver. 4, http://developer.nvidia.com/object/gpucomputing.html
  • http://en.wikipedia.org/wiki/Intel_Fortran_Compiler, http://www.pgroup.com, http://gcc.gnu.org/fortran/
Teaching methods -
Last update: RNDr. Ladislav Hanyk, Ph.D. (27.09.2011)

Lecture and homeworks

Syllabus -
Last update: RNDr. Ladislav Hanyk, Ph.D. (08.05.2013)

1. Data parallelism in Fortran.

2. (Auto)Parallelizing compilers in operating systems MS Windows and Linux (Intel, Portland, GNU).

3. Parallized numerical libraries (LAPACK, ScaLAPACK, Intel MKL, IMSL, NAG, CULA Tools).

4. Multithreaded parallelism via OpenMP.

5. Multiprocessor communication via MPI.

6. Nvidia GPU computing, OpenACC directives.

7. Parallel versions of selected algorithms.

 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html