Subject: Parallel Computing
(17 -
IFE222) Basic Information
Course specification
Course is active from 21.11.2012.. Precondition courses
Understanding of models and concepts of contemporary parallel computer architectures and systems. Learning techniques and methods for their efficient programing. Acquiring fundamental knowledge about possibilities for application of parallel computing in data science. Students acquire fundamental knowledge about architectures and programing models of parallel computer systems, as well as languages used for their programing. Acquired knowledge is applicable in practice and in advanced courses at higher years of undergraduate studies and on master studies. Introduction. Models of parallel systems and algorithms. Complexity analysis of parallel algorithms. Design of parallel algorithms. Parallel computer architectures and systems. Parallel programming design patterns (finding parallelism, algorithm structure, supporting structures, communication patterns). Parallel programming models (OpenMP, Cilk, TBB, CUDA, OpenCL, OpenACC). Parallel programming tools. Applications of parallel computing in scientific computing and data science. Teaching is performed through lessons, oral and computer exercises (in the computer classroom), as well as consultations. Through the teaching process, students are constantly motivated to an intensive discussion, problem oriented reasoning, independent study work and active participation in the whole lecturing process. The prerequisite to enter final exam is to complete all the pre-exam assignments by earning at least 30 points.
|