Компьютерные науки

Параллельное программирование для многоядерных процессоров

Программа об освоении высокоуровневых средств разработки для современных многоядерных процессоров. Основное внимание уделено использованию библиотек Microsoft Parallel FX и языка программирования MC#.
Студентов 1040 Выпускников 254 Для специалистов
690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.
Темы:
Суперкомпьютерные технологии, Программирование
Объем

36 час.
Длительность

30 дней
Нагрузка в неделю

9 час.
Формат обучения

Дистанционно (самостоятельно)
Описание Учебная программа рассматривает применение специализированных библиотек и архитектурных подходов для многоядерных систем. В учебной программе изучаются Task Parallel Library (TPL), PLINQ, конструкции Parallel.For и Parallel.Invoke, а также механизмы обработки исключений в PFX. Разбор конкретных примеров, таких как алгоритмы Фурье, помогает перейти от последовательного кода к созданию масштабируемых приложений. Учебная программа ориентирована на разработчиков в среде .NET.
Цели
  • Сформировать навыки использования Microsoft Parallel Extensions в среде .NET.
  • Дать методику планирования исполнения процессов в многоядерных системах.
  • Помочь освоить язык MC# для высокоуровневой разработки.
Чему я научусь?
  • Применять конструкции TPL для распараллеливания циклов и задач.
  • Использовать PLINQ для эффективной обработки больших массивов данных.
  • Оценивать производительность и использование памяти в параллельных кодах.

Авторы

Петров Александр Викторович
Петров Александр Викторович
Место работы Рыбинская государственная авиационная технологическая академия имени П.А. Соловьева.
Сердюк  Юрий  Петрович
Сердюк Юрий Петрович
С.н.с. Института программных систем РАН (г.Переславль-Залесский).
Чему я научусь?
  • Применять конструкции TPL для распараллеливания циклов и задач.
  • Использовать PLINQ для эффективной обработки больших массивов данных.
  • Оценивать производительность и использование памяти в параллельных кодах.

Учебный план

Занятия
Экзамен экстерном Внимание! Экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите подтвердить свои знания по данному курсу без его изучения или поверить свои знания по нему. Экзамен экстерном можно сдать только один раз. 90 мин
1 Введение в библиотеку Microsoft Parallel Extensions to the .Net Framework В этой лекции рассматриваются основные понятия и определения библиотеки Microsoft Parallel Extensions, а также рассмотрены вопросы... В этой лекции рассматриваются основные понятия и определения библиотеки Microsoft Parallel Extensions, а также рассмотрены вопросы производительности при ее использовании. ещё
2 Конструкция Parallel.For В этой лекции рассматривается реализация базовых элементов библиотеки Parallel.For и Parallel.Foreach.
3 Планирование исполнения процессов В лекции рассматриваются вопросы планирования исполнения задач применительно к многопроцессорным вычислительным системам.
4 Конструкция Parallel.Invoke В лекции рассматривается еще один способ распараллеливания процессов - Parallel.Invoke, а также описаны проблемы при реализации... В лекции рассматривается еще один способ распараллеливания процессов - Parallel.Invoke, а также описаны проблемы при реализации параллельной обработкибинарных деревьев. ещё
Конструкция Parallel.Invoke тест для курса Параллельное программирование для многоядерных процессоров 60 мин
5 Программирование с использованием Task Parallel Library (TPL) В этой лекции рассматривается один из уровней библиотеки PFX - программирование на уровне задач (TPL). Во... В этой лекции рассматривается один из уровней библиотеки PFX - программирование на уровне задач (TPL). Во второй части лекции показана практическая реализация параллелизма в рекурсивных функциях. ещё
6 Класс System.Threading.Tasks.Future и координирующие структуры данных В лекции описано использование высокоуровневых примитивов синхронизации процессов, а также рассмотрена асинхронная модель программирования с использованием... В лекции описано использование высокоуровневых примитивов синхронизации процессов, а также рассмотрена асинхронная модель программирования с использованием объектов класса Future. ещё
7 Введение в PLINQ В лекции рассматривается параллельный интегрированный язык запросов и его отличия от его классической реализации.
8 Обработка исключений при использовании PFX В лекции рассматриваются вопросы обработки исключительных ситуаций связанных с выполнением в параллельных приложениях.
9 Примеры программирования с использованием библиотеки PFX В данной лекции будет представлен ряд примеров программирования с использованием механизма задач и некоторых конструкций из... В данной лекции будет представлен ряд примеров программирования с использованием механизма задач и некоторых конструкций из библиотеки PFX, связанных с ними. ещё
Примеры программирования с использованием библиотеки PFX тест для курса Параллельное программирование для многоядерных процессоров 60 мин
10 Оценка производительности памяти с помощью теста Random Access В лекции описан тест производительности памяти и приведена его реализация для многоядерных систем с помощью библиотеки... В лекции описан тест производительности памяти и приведена его реализация для многоядерных систем с помощью библиотеки PFX, а также рассмотрена задача параллельного рендеринга изображений. ещё
11 Решето Эратосфена для нахождения простых чисел В этой лекции рассмотрена теория и реализация алгоритма Эратосфена при нахождения простых чисел в контексте параллельного... В этой лекции рассмотрена теория и реализация алгоритма Эратосфена при нахождения простых чисел в контексте параллельного программирования. ещё
12 Параллельный алгоритм дискретного преобразования Фурье В этой лекции рассмотрена теория и реализация алгоритма дискретного преобразования Фурье в контексте параллельного программирования.
13 Высокоуровневый язык параллельного программирования MC# В этой лекции рассматриваются основные понятия и определения высокоуровневого языка параллельного программирования MC#, показаны примеры использования... В этой лекции рассматриваются основные понятия и определения высокоуровневого языка параллельного программирования MC#, показаны примеры использования специфических конструкций языка на ряде параллельных и распределенных программ. ещё
Высокоуровневый язык параллельного программирования MC# тест для курса Параллельное программирование для многоядерных процессоров 60 мин
Тренировочный экзамен Внимание! Тренировочный экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите проверить свои знания курса перед сдачей экзамена. Тренировочный экзамен можно сдавать сколько угодно один раз. 90 мин
Экзамен 60 мин

Какой документ я получу?

Сертификат

Выдаётся автоматически после успешного завершения программы.

Удостоверение о повышении квалификации

Выдается при наличии среднего специального или высшего образования (необходимые документы).

Стоимость программы

690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.