Главная » Просмотр файлов » В.Д. Корнеев - Параллельное программирование в MPI

В.Д. Корнеев - Параллельное программирование в MPI (1162616), страница 3

Файл №1162616 В.Д. Корнеев - Параллельное программирование в MPI (В.Д. Корнеев - Параллельное программирование в MPI) 3 страницаВ.Д. Корнеев - Параллельное программирование в MPI (1162616) страница 32019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

Он может выполняться на сети рабочих станций, или на наборе процессоров на отдельной рабочей станции; 2) способностью параллельных программ выполняться на гетерогенных системах, т.е. на системах, состоящих из процессоров с различной архитектурой. МР1 обеспечивает вычислительную модель, которая скрывает много архитектурных различий в работе процессоров. МР1 автоматически делает любое необходимое преобразование данных и использует правильный протокол связи, посылается ли код сообщения между одинаковыми процессорами или между процессорами с различной архитектурой. МР1 может настраиваться как на работу на однородной, так и на работу на гетерогенной системах; 3) такими механизмами, как определение одного вычислительного компьютера в виде виртуального компьютера (см. п.

2,1) и возможностью задания произвольного количества таких виртуальных компьютеров в системе независимо от количества физических компьютеров (а только от объема оперативной памяти в системе); 4) заданием виртуальных топологий (см. и.

2.1). Отображение виртуальных топологий на физическую систему осуществляется системой МР1. Виртуальные топологии обеспечивают оптимальное приближение архитектуры системы к структурам задач при хорошей переносимости задач; 5) компиляторами для Рог1гап'а и С. Уровень языка параллельного программирования определяется языковыми конструкциями, с помощью которых создаются параллельные программы. Как было сказано выше, операторы задания топологий, обменов данными и т.

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

Введение 1.4. Краткое содержание глав Вторая глава посвящена общим схемам конкретных параллельных алгоритмов решения прикладных задач. При этом рассматривается несколько вариантов решения одних и тех же задач, с демонстрацией различных подходов параллельных вычислений реальных задач на реальных вычислительных системах. В третьей главе рассмотрены средства МР1, позволяющие разбивать множества компьютеров на подмножества и выполнять операции над ними. Эти операции позволяют строить сложные коммуникационные области, способствующие параллельным процессам эффективно обмениваться данными.

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

В пятой главе подробно описан основной механизм в МР1, обеспечивающий связь между двумя взаимодействующими процессами. Эта связь называется точечной (вро1п1-1о-ро1пГ'). Почти все конструкции из МР1 построены на основе ро1пв-Фо-ро1п~ операций, и,таким образом, эта глава является основной. В шестой главе описаны операции коллективных взаимодействий. Коллективная связь обеспечивает обмен данными среди всех процессов в группе, указанной аргументом 1псгасоиипптсатог. Однако они сделаны более ограниченными чем ро1пФ-~о-ро1пг операпии.

Коллективная операция выполняется при наличии всех процессов в групповом вызове оператора связи, с соответствующими аргументами. Седьмая глава посвящена средствам конструирования пользователем собственных типов данных. Эти средства позволяют создавать нз элементов разных типов, к тому же расположенных в несмежных участках памяти, новые типы данных. И эти сконструированные данные можно передавать за один вызов коммуникационной функции, что значительно уменьшает время обмена данными, делает программу более компактной. В восьмой главе описываются операции для получения и установки соответствующих различных параметров, которые касаются выполнения программ, написанных с использовавием МР1.

В девятой главе приведены примеры параллельных программ, демонстрирующих, с одной стороны, методы распараллеливания некоторых классов задач, а с другой стороны, поясняющих применение средств параллельного программирования с использованием МР1. 2. Схемы параллельных алгоритмов задач В главе приводятся примеры параллельных алгоритмов решения следующих задач: умножения матрицы на матрицу, задача 1(ирихле, решение систем линейных уравнений методом Гаусса и методом простой итерации. Здесь рассматривается простой вариант сеточной задачи (задача Лирихле), когда шаг сетки в пространстве вычислений одинаков и не меняется в процессе вычислений.

При динамически изменяющемся шаге сетки, как было сказано во введении в п. 1.2, потребовалось бы решать такую задачу параллельного программирования, как перебалансировка вычислительного пространства между компьютерами, для выравнивания вычислительной нагрузки компьютеров, а эта задача здесь не рассматривается.

В этой главе приводятся только общие схемы решения указанных задач, а тексты программ приведены в гл. 9, т. к. для понимания общих схем решения знать МР1 не обязательно, а для понимании программ необходимо, что бы пользователь предварительно ознакомился с системой программирования МР1. Приведенные здесь параллельные алгоритмы решения задач являются иллюстрационными, демонстрирующими применение и возможности функций МР1, а не универсальными, предназначенными для библиотек алгоритмов.

Рассматриваемые задачи распараллеливаются крупнозернистыми методами. Лля представления алгоритмов используется ЯРМ1э-модель вычислений (распараллеливание по данным). Однородное распределение данных по компьютерам основа для хорошего баланса времени, затрачиваемого на вычисления, и времени, затрачиваемого на взаимодействия ветвей параллельной программы. При таком распределении преследуется цель — равенство объемов распределяемых частей данных и соответствие нумерации распределяемых частей данных нумерации компьютеров в системе. Исходными данными рассматриваемых здесь алгоритмов являются матрицы, векторы и 20 (двумерное) пространство вычислений.

В этих алгоритмах применяются следующие способы однородного распределения данных: горизонтальными полосами, вертикальными полосами и циклическими горизонтальными полосами. При распределении горизонтальными полосами матрица, вектор или 2П пространство "разрезается" на полосы по строкам (далее слово "разрезанная" будем писать без кавычек и матрицу, вектор или 20 пространство обозначать для краткости словом— данные). Пусть М количество строк матрицы, количество элементов вектора или количесг во строк узлов 20 пространства, Р количество виртуальных компьютеров в системе, С1 = М(Р целая часть от деления, Сз = М7ьР дробная часть. Ванные разрезаются на Р полос. Первые (Р— Сз) полос имеют по С1 строки, а остальные Сз полосы имеют по С~ + 1 строки.

Полосы данных распределяются по компьютерам следующим образом. Первая полоса помещается в компьютер с номером О, вторая полоса в компьютер 1 и т.д. Такое распределение полос по компьютерам учитывается в параллельном алгоритме. Распределение вертикальными полосами аналогично предыдущему, только в распределении участвуют столбцы матрицы или столбцы узлов 20 пространства. И, наконец, распределение циклическими горизонтальными полосами. При таком распределении данные разрезаются на количество полос значительно большее, чем количество компьютеров. И чаще всего полоса состоит из одной строки. Первая полоса загружается в компьютер О, вторая — в компьютер 1 и т. д., затем (Р— 1)-я полоса — снова в компьютер О, Р-я полоса — в компьютер 1 и т.д. Приведенные два алгоритма решения СЛАУ методом Гаусса показывают, что однородность распределения данных сама по себе еще недостаточна для эффективности алгоритма.

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

Характеристики

Тип файла
DJVU-файл
Размер
5,85 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6489
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее