Both sides previous revisionPrevious revisionNext revision | Previous revision |
mag:pp [2024/04/17 19:12] – [Лекции по порядку] eugeneai | mag:pp [2024/04/17 19:35] (current) – [Варианты заданий] eugeneai |
---|
==== Лекции по порядку ==== | ==== Лекции по порядку ==== |
| |
- [[https://www.youtube.com/watch?v=cNz3PlR8SyA&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=1&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC | Что такое параллельные вычисления ]] | - [[https://www.youtube.com/watch?v=cNz3PlR8SyA&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=1&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC | Что такое параллельные вычисления ]], Книга по [[https://hpc.icc.ru/documentation/unn/gergel.pdf|теории параллельного программирования]] |
- [[https://www.youtube.com/watch?v=pEBWTq90p5s&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=2&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC | Архитектуры вычислительных средств, программ, структур данных]] | - [[https://www.youtube.com/watch?v=pEBWTq90p5s&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=2&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC | Архитектуры вычислительных средств, программ, структур данных]] |
- [[https://www.youtube.com/watch?v=XwN0__nCd8M&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=3&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|Введение в Message Passing Interface (MPI)]] | - [[https://www.youtube.com/watch?v=XwN0__nCd8M&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=3&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|Введение в Message Passing Interface (MPI)]], Учебник по [[https://hpc.icc.ru/documentation/unn/grishagin.pdf|MPI]]. |
- [[https://www.youtube.com/watch?v=cAys5U8Xoh8&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=4&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|MPI, коллективный обмен данными (коллективные операции)]] | - [[https://www.youtube.com/watch?v=cAys5U8Xoh8&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=4&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|MPI, коллективный обмен данными (коллективные операции)]] |
- [[https://www.youtube.com/watch?v=vwicTmEtV-k&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=5&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|MPI, Передача данных без блокировки]] | - [[https://www.youtube.com/watch?v=vwicTmEtV-k&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=5&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|MPI, Передача данных без блокировки]] |
- [[https://www.youtube.com/watch?v=mPYLhsyP2pU&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=9&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|OpenACC, практика, рассмотрение продвинутых техник программирования]] | - [[https://www.youtube.com/watch?v=mPYLhsyP2pU&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=9&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|OpenACC, практика, рассмотрение продвинутых техник программирования]] |
- [[https://www.youtube.com/watch?v=dvRlob1Gf8E&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=10&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|OpenACC, продвинутые техники (продолжение), инструменты сбора и анализа метрик]] | - [[https://www.youtube.com/watch?v=dvRlob1Gf8E&list=PL-_cKNuVAYAWPC1WfK7_6v-gFOm4i7RKy&index=10&ab_channel=%D0%9B%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D1%83%D0%BC|OpenACC, продвинутые техники (продолжение), инструменты сбора и анализа метрик]] |
| |
| Литература по параллельному программированию - [[https://hpc.icc.ru/foruser/library.html|здесь]] |
| |
| |
==== Дополнительные разделы ==== | ==== Дополнительные разделы ==== |
- Экстенсивные методы, параллельное и высокопроизводительные вычисления (HPC) | - Экстенсивные методы, параллельное и высокопроизводительные вычисления (HPC) |
- Модели параллельных схем алгоритмов, сильная и слабая связность ветвей алгоритмов | - Модели параллельных схем алгоритмов, сильная и слабая связность ветвей алгоритмов |
| - Библиотека ScaLAPACK для разработки параллельных схем алгоритмов, основанных на манипуляции с матрицами. |
- Сети Петри, Графовое представление вычислительного процесса | - Сети Петри, Графовое представление вычислительного процесса |
- Построение параллельных схем средствами операционной системы (IPC). | - Построение параллельных схем средствами операционной системы (IPC). |
- Языки Erlang/Elixir. | - Языки Erlang/Elixir. |
- Распределение потока данных между вычислительными узлами, очереди сообщений RabbitMQ. | - Распределение потока данных между вычислительными узлами, очереди сообщений RabbitMQ. |
| |
| ===== Варианты заданий ===== |
| |
| вариант использования технологии: |
| |
| - MPI |
| - OpenMP |
| - OpenACC |
| - CUDA |
| - Threading building blocks |
| - ScaLAPACK |
| - Erlang/Elixir |
| - Hskell |
| |
| Вариант практической задачи (нас интересуют больше слабосвязанные ветви алгоритмов) |
| |
| - Метод ветвей и границ |
| - MiniMax с отсечением (вариант метода ветвей и границ) |
| - Уравнение теплопроводности на сетке |
| - Реализация схемы Map-Reduce |
| - Алгоритм неиерархической кластеризации с использованием нечеткой логики |
| - Выполнение кластерного анализа на большой объеме данных с использованием беггинга |
| - Свой согласованный вариант. |
| |
| Архив методичек "среднего качества" {{pp:parprog.7z|Здесь}}. Из них можно брать задания (они только примитивные очень). **Замечание**: В методичке по MPI не указывается явно, что между вычислителями следует пересылать не весь массив данных, а только необходимую долю. |
| |
| |
| |