Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2977

.pdf
Скачиваний:
0
Добавлен:
21.11.2023
Размер:
315.76 Кб
Скачать

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

Д. И. Кислицын

ОСНОВЫ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ДЛЯ СИСТЕМ С РАСПРЕДЕЛЁННОЙ ПАМЯТЬЮ

Учебно-методическое пособие

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

«Основы параллельных вычислений для систем с распределённой памятью» по направлению подготовки 09.03.02 Информационные системы и технологии, без профиля

Нижний Новгород

2016

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

Д. И. Кислицын

ОСНОВЫ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ДЛЯ СИСТЕМ С РАСПРЕДЕЛЁННОЙ ПАМЯТЬЮ

Учебно-методическое пособие

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

«Основы параллельных вычислений для систем с распределённой памятью» по направлению подготовки 09.03.02 Информационные системы и технологии, без профиля

Нижний Новгород ННГАСУ

2016

1

УДК 681.3 (075)

Кислицын Д. И./ Основы параллельных вычислений для систем с распределённой памятью [Электронный ресурс]: учеб. – метод. пос./ Д. И. Кислицын; Нижегор. гос. архитектур. – строит. ун-т – Н. Новгород: ННГАСУ, 2016. - 11 с. 1 электрон. опт. диск (CD-R)

Даются тематика лекций, их краткое содержание, а также методические рекомендации по самостоятельной работе обучающихся по дисциплине «Основы параллельных вычислений для систем с распределённой памятью». Указывается необходимая литература и источники, разъясняется последовательность их изучения, выделяются наиболее сложные вопросы и даются рекомендации по их изучению, приводится тематика расчётных работ.

Предназначено для обучающихся в ННГАСУ по дисциплине «Основы параллельных вычислений для систем с распределённой памятью» по направлению подготовки 09.03.02 Информационные системы и технологии, без профиля.

Д. И. КислицынННГАСУ. 2016.

2

Учебно-методическое пособие по подготовке к лекциям (включая рекомендации по организации самостоятельной работы) по дисциплине «Основы параллельных вычислений для систем с распределённой памятью» предназначены для студентов второго курса, обучающихся по направлению 09.03.02 Информационные системы и технологии, и содержат программу для проведения лекционных занятий, а также методические рекомендации по самостоятельной работе.

Цель учебно-методического пособия: помочь студентам при изучении учебной программы с использованием лекционных материалов и рекомендуемой учебно-методической литературы при формировании необходимых компетенций дисциплины «Основы параллельных вычислений для систем с распределённой памятью».

Целями освоения дисциплины «Основы параллельных вычислений для систем с распределённой памятью» являются изучение архитектур параллельных вычислительных систем.

В лекциях излагается общая характеристика вопросов тем, даются практические примеры применения стандартов, осуществляется групповая работа студентов и преподавателя по разработке соответствующих разделов пояснительной записки по разработке программного обеспечения или информационных систем. Главной целью лекции является привитие студентам интереса к изучаемому материалу, формирование мотивации к последующему самостоятельному анализу рассматриваемой проблематики. На лекциях студентам раскрываются наиболее сложные вопросы и теоретические положения, показывается их практическая значимость, даются рекомендации по углубленному самостоятельному изучению теории и практики.

На лекциях по дисциплине «Основы параллельных вычислений для систем с распределённой памятью» широко используются активные формы проведения занятий. Такие формы организации образовательного процесса, способствуют разнообразному (индивидуальному, групповому, коллективному) изучению учебных вопросов (проблем), активному взаимодействию студентов и преподавателя, живому обмену мнениями между ними, нацеленному на выработку правильного понимания содержания изучаемой темы и способов ее практического использования.

Материал пропущенных лекций студент восстанавливает самостоятельно и по всем непонятным положениям и вопросам обращается за разъяснением к преподавателю.

Самостоятельная работа направлена на развитие компетенций дисциплины:

-ПК-4 - способность проводить выбор исходных данных для проектирования;

-ПК-12 - способность разрабатывать средства реализации информационных технологий (методические, информационные, математические, алгоритмические, технические и программные);

-ПК-17 - способность использовать технологии разработки объектов

профессиональной

деятельности

в

областях:

техника,

безопасность

3

информационных систем, связь, телекоммуникации, управление инфокоммуникациями, а также предприятия различного профиля и все виды деятельности в условиях экономики информационного общества.

Виды и формы самостоятельной работы студентов по дисциплине:

-систематическая проработка лекций, основной и дополнительной литературы;

-выполнение расчётно-графической работы;

-подготовка к зачёту.

Содержание разделов дисциплины «Основы параллельных вычислений для систем с распределённой памятью» представлено в таблице 1.

Таблица 1 Содержание разделов дисциплины

 

 

 

 

Аудиторные занятия

 

 

 

 

 

 

 

(в часах)

 

 

Перечень

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Самост

компетенций,

 

 

 

 

 

 

 

семинар,Практика

Наименование раздела

Всего

Лекции

Лабораторные

 

оятельн

формируемых в

п/п

дисциплины

часов

 

ая

процессе

 

 

 

 

 

 

 

 

 

 

 

 

работа

освоения

 

 

 

 

 

 

 

 

 

раздела

 

 

 

 

 

 

 

 

 

 

 

Принципы

построения

 

 

 

 

 

 

ПК-4, ПК-12,

1

параллельных

 

7

3

 

 

 

4

 

 

 

 

ПК-17

 

вычислительных систем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Технология

разработки

 

 

 

 

 

 

 

 

параллельных

программ

 

 

 

 

 

 

ПК-4, ПК-12,

2

для многопроцессорных

34

6

8

 

 

20

 

 

ПК-17

 

систем с распределённой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

памятью (стандарт MPI)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Модели вычислений и

 

 

 

 

 

 

 

3

методы

анализа

38

6

8

 

 

24

ПК-4, ПК-17

 

эффективности

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Анализ

 

 

 

 

 

 

 

 

 

коммуникационной

 

 

 

 

 

 

ПК-4, ПК-12,

4

трудоемкости

 

14

6

 

 

 

8

 

 

 

 

ПК-17

 

параллельных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

алгоритмов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

Принципы

разработки

7

3

 

 

 

4

ПК-4, ПК-12,

параллельных методов

 

 

 

ПК-17

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

Параллельные

 

 

 

 

 

 

 

численные

алгоритмы

 

 

 

 

 

 

 

для

решения

типовых

 

 

 

 

 

 

6

задач

вычислительной

46

6

6

 

34

ПК-4, ПК-12,

математики

для

 

ПК-17

 

 

 

 

 

 

 

многопроцессорных

 

 

 

 

 

 

 

систем с распределённой

 

 

 

 

 

 

 

памятью

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На консультациях в течение семестра студенты могут обсуждать с преподавателем различные вопросы по выполнению расчётно-графической работы (РГР).

Рекомендуется проработать конспект лекций, затем повторить теоретический материал, пользуясь рекомендованной основной и дополнительной литературой. Если после этого остаются вопросы, рекомендуется выписать их и обратиться к преподавателю на консультациях или по электронной почте kislitsyn@nngasu.ru.

РГР предусмотрена в 8 семестре. Целями выполнения РГР при изучении дисциплины «Основы параллельных вычислений для систем с распределённой памятью» являются:

-самостоятельное углублённое изучение отдельных разделов курса;

-закрепление навыков программирования, полученных в течение всего срока обучения.

Общее задание на РГР: разработать консольное MPI-приложение, которое в соответствии с вариантом задания обрабатывает введённый пользователем массив исходные данных. Приложение должно содержать поясняющие текстовые надписи, в т. ч. фамилию, имя, отчество, № группы и текст задания. В течение курса со студентами проводятся индивидуальные и групповые консультации по вопросам выполнения РГР, а также по общетеоретическим вопросам, возникающим при самостоятельной работе студентов при подготовке к занятиям

ивыполнении РГР. Результатом выполнения РГР является пояснительная записка, описывающая проектирование приложения и программный код. При выставлении оценки (от 2,0 до 5,0 баллов) за РГР оценивается способность студента составлять алгоритм в соответствии с индивидуальным заданием и разрабатывать на его основе консольное MPI-приложение.

В конце семестра студенты проходят электронное тестирование по всем разделам курса. В конце тестирования студент видит, в каких разделах и сколько ошибочных ответов он дал и получает балл в диапазоне от 0,0 до 5,0. Перед зачётом студентам выдаётся список примерных вопросов, по которым можно понять, на что нужно сделать упор при подготовке к зачёту.

Студент допускается к зачёту, если он сдал все лабораторные работы и РГР. При подготовке к зачету после получения перечня вопросов рекомендуется:

1) внимательно прочитать материал лекций;

5

2)постараться разобраться с непонятными, в частности, новыми терминами, используя рекомендованную литературу;

3)просмотреть все лабораторные работы;

4)выписать вопросы для подробного обсуждения с преподавателем на консультации.

Перечень примерных вопросов, выносимых на зачёт:

Укажите схемы многопроцессорных систем с однородным и неоднородным доступом.

Опишите основные виды топологии сети.

Что понимается под параллельными вычислениями?

Расскажите принципы построения вычислительной сети для достижения параллелизма?

Что понимается под многозадачным режимом выполнения независимых частей программы?

Для каких параллельных алгоритмов обработка данных при распределённых вычислениях более эффективна?

Что понимается под суперкомпьютером?

Как называется группа компьютеров, объединённых в локальную сеть и способных работать в качестве единого вычислительного ресурса?

Что такое "Beowulf"?

Опишите типы систем по классификации Флинна.

Что понимается под топологией сети передачи данных?

Частным случаем какой топологии является топология "гиперкуб" ?

В каком случае два процессора имеют прямое соединение между собой в топологии "гиперкуб"?

Дайте определение понятиям «диаметр», «связность», «стоимость»?

Что понимается под понятием «паракомпьютер»?

Чему равно минимально возможное время выполнения параллельного алгоритма?

Дайте определение понятию «ускорение (speedup)»

Дайте определение понятию «эффективность (efficiency)»

Дайте определение понятию «стоимость (cost)»

Дайте определение понятию «сверхлинейное (superlinear) ускорение»

Чему равняется идеальная эффективность Ep (в предельном случае) ?

Чему равняется идеальное ускорение Sp ?

Укажите максимально возможное ускорение (согласно закону Амдаля) от использования параллелизма, если алгоритм содержит 20% последовательных команд.

В каком случае параллельный алгоритм называют масштабируемым (scalable)?

Чем характеризуются оптимальные алгоритмы маршрутизации?

Чем характеризуются детерминированные методы выбора маршрута?

Чем характеризуются адаптивные методы выбора маршрута?

6

Реализация какого метода передачи данных (МПП или МПС) требует разработки более сложного аппаратного и программного обеспечения сети?

Реализация какого метода передачи данных (МПП или МПС) может значительно увеличить накладные расходы на время подготовки и передачи служебных данных?

Какой метод передачи данных (МПП или МПС) в большинстве случаев приводит к более быстрой пересылке данных?

Какой метод передачи данных (МПП или МПС) требует меньший объём буфера памяти для хранения пересылаемых данных при организации приёмапередачи сообщений?

Какой подход в рамках MPI используется для распараллеливания поставленной задачи на нескольких процессорах?

Как называется модель организации параллельных вычислений в рамках MPI?

Что включает в себя понятие MPI?

Что понимается под параллельной программой в рамках MPI?

Что понимается под рангом в рамках MPI?

Что понимается под коммуникатором в MPI?

Какие операции могут выполняться между процессами принадлежащими одному и тому же коммуникатору?

Опишите назначение и особенности использования функции MPI_Init() в параллельной программе

Опишите назначение и особенности использования функции

MPI_Comm_size()

Опишите назначение и особенности использования функции

MPI_Comm_rank()

Опишите назначение и особенности использования функции MPI_Send()

Опишите назначение и особенности использования функции MPI_Recv()

Опишите назначение и особенности использования функции MPI_Send()

Опишите назначение и особенности использования функции MPI_Recv()

Опишите назначение и особенности использования функции MPI_Bcast()

Опишите назначение и особенности использования функции MPI_Reduce()

Опишите назначение параметра MPI_ANY_SOURCE

Опишите назначение параметра MPI_COMM_WORLD

Опишите назначение и особенности использования функции MPI_Barrier()

Опишите назначение и особенности использования функции MPI_Ssend()

Опишите назначение и особенности использования функции MPI_Bsend()

Опишите назначение и особенности использования функции MPI_Rsend()

Перечислите неблокирующие модификации функции MPI_Send()

Опишите назначение назначение и особенности использования функции

MPI_Sendrecv()

При помощи какой MPI-функции может быть получена операция сбора и обработки данных с получением всех частичных результатов редуцирования?

Опишите назначение и особенности использования функции MPI_Bcast()

7

Опишите назначение и особенности использования функции MPI_Reduce()

Опишите назначение и особенности использования функции MPI_Scan()

Опишите назначение и особенности использования функции MPI_Scatter()

Опишите назначение и особенности использования функции MPI_Gather()

Опишите назначение и особенности использования функции MPI_Alltoall()

Опишите особенности использования векторного способа конструирования производных типов данных в MPI

Опишите особенности использования индексного способа конструирования производных типов данных в MPI

Опишите особенности использования структурного способа конструирования производных типов данных в MPI

Перечислите этапы при разработке параллельных алгоритмов .

В каком случае применяется агрегация подзадач на этапе масштабирования?

Может ли выполнить параллельную программу на однопроцессорном (одноядерном) компьютере?

Сравните функциональный параллелизм с параллелизмом по данным.

Что понимается под очередью сообщений, в которую можно отправлять и извлекать данные в модели «Процессы-каналы»?

Что характерно для уровня декомпозиции с формированием максимально возможного количества подзадач?

Что характерно для уровня декомпозиции с использованием достаточно крупных подзадач?

Опишите особенности синхронного способа взаимодействия

Опишите особенности асинхронного способа взаимодействия

Что необходимо выполнить при недостаточном количестве подзадач для загрузки всех доступных к использованию процессоров?

Что необходимо выполнить для сокращения количества подзадач на этапе масштабирования?

Для каких вычислительных систем возможно «ручное» (программистом) управление распределением нагрузки для процессоров?

Показатели оценки по зачёту представлены в таблице 2.

Таблица 2 Показатели оценки по зачёту

Показатели

Бал-

 

 

 

 

 

оценивания

Оценка

Критерий оценки

лы

компетенций

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Результаты

4,5 -

«зачтено»

ставится

 

обучающемуся,

освоения

5,0

 

показавшему

глубокие

дисциплины

 

 

систематизированные

знания

соответствует

 

 

учебного материала, в полной

требованиям

 

 

мере

соответствующие

ФГОС

 

 

требованиям

к

уровню

 

 

 

подготовки

 

обучающегося,

 

 

8

 

 

 

 

Показатели

 

Бал-

 

 

 

 

 

 

 

 

 

оценивания

 

 

Оценка

 

Критерий оценки

 

лы

 

 

компетенций

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проявившему

 

творческие

 

 

 

 

 

способности

в

понимании,

 

 

 

 

 

изложении

и

использовании

 

 

 

 

 

учебного

материала

при

 

 

 

 

 

решении поставленных задач,

 

 

 

 

 

умеющему

 

 

обобщать

 

 

 

 

 

информацию,

 

 

 

 

 

 

 

 

 

аргументировано

 

и

 

 

 

 

 

практически

без

ошибок

 

 

 

 

 

ответившему на все вопросы.

Результаты

 

3,5

-

«зачтено»

ставится

 

обучающемуся,

освоения

 

4,4

 

 

продемонстрировавшему

дисциплины

 

 

 

 

достаточно

полные

 

знания

соответствует

 

 

 

 

учебного материала,

в целом

требованиям

 

 

 

 

соответствующие

 

 

ФГОС

 

 

 

 

требованиям

 

к

уровню

 

 

 

 

 

подготовки

 

обучающегося,

 

 

 

 

 

способность

 

к

 

их

 

 

 

 

 

самостоятельному

 

 

 

 

 

 

 

восполнению и обновлению в

 

 

 

 

 

ходе

решения

поставленных

 

 

 

 

 

задач,

 

 

 

умение

 

 

 

 

 

систематизировать

 

 

 

 

 

 

 

информацию,

допустившему

 

 

 

 

 

негрубые

 

ошибки

и

 

 

 

 

 

недочеты.

 

 

 

 

 

Результаты

 

2,5

-

«зачтено»

ставится

 

обучающемуся,

освоения

 

3,4

 

 

показавшему уровень знаний

дисциплины

 

 

 

 

учебного материала в объёме,

соответствует

 

 

 

 

минимально

 

необходимом

требованиям

 

 

 

 

для

решения

 

поставленных

ФГОС

 

 

 

 

задач,

знание

 

основ

 

 

 

 

 

дисциплины,

 

владеющего

 

 

 

 

 

навыками

 

 

логического

 

 

 

 

 

мышления

и

допустившему

 

 

 

 

 

непринципиальные

ошибки

 

 

 

 

 

при ответе на вопросы.

 

Результаты

 

0,0

-

«не зачтено»

ставится

 

обучающемуся,

освоения

 

2,4

 

 

показавшему

существенные

дисциплины

НЕ

 

 

 

пробелы в знании основного

соответствует

 

 

 

 

учебного

 

 

материала,

 

 

 

 

9

 

 

 

 

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]