Параллельные и распределенные вычисления
Учебный курс для Екатеринбургского филиала Школы анализа данных компании Яндекс и магистрантов Института естественных наук и математики УрФУ (специальности «Компьютерные науки» и «Фундаментальная информатики и информационные технологии»).
Презентации лекций
- Введение.
- Многопоточное программирование, часть 1 (С++, Java).
- Многопоточное программирование, часть 2 (С++, Java).
- Оборудование параллельных вычислительных систем.
- Векторизация.
- Основы параллельных вычислений.
- Технология OpenMP.
- Технология MPI.
- MapReduce и Hadoop.
- Apache Spark.
Домашние задания
Домашние задания сдаются в системе anytask.
Примеры кода
https://github.com/sozykin/parallel-computing-course.
Литература
Многопоточное программирование
- Anthony Williams. C++ Concurrency in Action.
- Maurice Herlihy, Nir Shavit. The Art of Multiprocessor Programming, Revised Reprint.
- Брюс Эккель «Философия Java» (Thinking in Java), 4-е изд. Рекомендуется оригинал на английском.
- Java Tutorials:Concurrency
- Пять вещей, которые вы не знали о … пакете java.util.concurrent. Часть 1, Часть 2.
