"...Изучение и анализ примеров.
В и приведены описания и приложены исходные коды параллельных программ..." Непонятно что такое - "В и приведены описания" и где именно приведены и приложены исходные коды. |
Авторы: Александр Петров, Юрий Сердюк
Форма обучения:
дистанционная
Стоимость самостоятельного обучения:
бесплатно
Доступ:
свободный
Документ об окончании:
Вам нравится? Нравится 7 студентам
Уровень:
Специалист
Длительность:
8:22:00
Студентов:
897
Выпускников:
247
Качество курса:
4.42 | 4.20
Данный учебный курс ориентирован на изучение и практическое применение современных высокоуровневых средств параллельного программирования для многоядерных процессоров - библиотеки Microsoft Parallel FX и языка программирования MC#. Использование таких средств, с промышленной точки зрения, резко повышает производительность и продуктивность работы программистов и позволяет привлечь к регулярному параллельному программированию значительно большее число программистов, а с образовательной точки зрения, дает возможность их успешно изучать и осваивать студентам вузов, начиная со 2-го курса.
Основная концепция предлагаемого учебного курса заключается в переходе к изучению высокоуровневых средств программирования в качестве основных инструментов параллельного программирования. Рассматриваются два таких средства, базирующиеся на языке С#: Microsoft Parallel Extensions for .NET (библиотеки TPL и PLINQ); язык программирования MC# (www.mcsharp.net). В качестве практических заданий на параллелизацию будут использоваться хорошо известные задачи, такие как сортировка, задачи линейной алгебры, метод статистических испытаний Монте-Карло, рендеринг изображений на основе трассировки лучей, поиск в Интернет, алгоритм Смита-Уотермена сравнения биологических последовательностей и др.Также, в качестве заданий, студентам будут предлагаться задачи конкурса Intel Threading Challenge.
Специальности: Программист
Теги: invoke, LINQ, objective-c, parallelize, tasking, thread, TPL, агрегирование, алгоритмы, библиотеки, вычисления, делегаты, интерфейсы, исключительная ситуация, операционные системы, потоки, программирование, процедуры, процессоры, распараллеливание, серверы, сортировка, элементы
Дополнительные курсы
- Архитектура параллельных вычислительных систем
- Параллельное программирование
- Теория и практика параллельных вычислений
- Параллельное программирование с использованием OpenMP
- Параллельное программирование с использованием технологии MPI
- Введение в методы параллельного программирования
- Основы параллельных вычислений
- Основы параллельного программирования с использованием MPI
- Параллельное программирование с OpenMP
- Архитектуры и топологии многопроцессорных вычислительных систем
- Реализация мультипроцессорных кластеров высокой доступности (HACMP)
План занятий
Занятие
Заголовок <<
Дата изучения
Лекция 1
28 минут
Введение в библиотеку Microsoft Parallel Extensions to the .Net Framework
В этой лекции рассматриваются основные понятия и определения библиотеки Microsoft Parallel Extensions, а также рассмотрены вопросы производительности при ее использовании.
Оглавление
-
Лекция 2
17 минут
Конструкция Parallel.For
В этой лекции рассматривается реализация базовых элементов библиотеки Parallel.For и Parallel.Foreach.
Оглавление
-
Лекция 3
12 минут
Планирование исполнения процессов
В лекции рассматриваются вопросы планирования исполнения задач применительно к многопроцессорным вычислительным системам.
Оглавление
-
Лекция 4
15 минут
Конструкция Parallel.Invoke
В лекции рассматривается еще один способ распараллеливания процессов - Parallel.Invoke, а также описаны проблемы при реализации параллельной обработки бинарных деревьев.
Оглавление
-
Лекция 5
34 минуты
Программирование с использованием Task Parallel Library (TPL)
В этой лекции рассматривается один из уровней библиотеки PFX - программирование на уровне задач (TPL). Во второй части лекции показана практическая реализация параллелизма в рекурсивных функциях.
Оглавление
-
Лекция 6
46 минут
Класс System.Threading.Tasks.Future и координирующие структуры данных
В лекции описано использование высокоуровневых примитивов синхронизации процессов, а также рассмотрена асинхронная модель программирования с использованием объектов класса Future<T>.
Оглавление
-
Лекция 7
29 минут
Введение в PLINQ
В лекции рассматривается параллельный интегрированный язык запросов и его отличия от его классической реализации.
Оглавление
-
Лекция 8
21 минута
Обработка исключений при использовании PFX
В лекции рассматриваются вопросы обработки исключительных ситуаций связанных с выполнением в параллельных приложениях.
Оглавление
-
Лекция 9
30 минут
Примеры программирования с использованием библиотеки PFX
В данной лекции будет представлен ряд примеров программирования с использованием механизма задач и некоторых конструкций из библиотеки PFX, связанных с ними.
Оглавление
-
Лекция 10
44 минуты
Оценка производительности памяти с помощью теста Random Access
В лекции описан тест производительности памяти и приведена его реализация для многоядерных систем с помощью библиотеки PFX, а также рассмотрена задача параллельного рендеринга изображений.
Оглавление
-
Лекция 11
28 минут
Решето Эратосфена для нахождения простых чисел
В этой лекции рассмотрена теория и реализация алгоритма Эратосфена при нахождения простых чисел в контексте параллельного программирования.
Оглавление
-
Лекция 12
20 минут
Параллельный алгоритм дискретного преобразования Фурье
В этой лекции рассмотрена теория и реализация алгоритма дискретного преобразования Фурье в контексте параллельного программирования.
Оглавление
-
Лекция 13
1 час 10 минут
Высокоуровневый язык параллельного программирования MC#
В этой лекции рассматриваются основные понятия и определения высокоуровневого языка параллельного программирования MC#, показаны примеры использования специфических конструкций языка на ряде параллельных и распределенных программ.
Оглавление
-