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

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

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

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

МР1 ЫА1ТАИУ возвращает в йппех порядковый номер (индекс) в б. Рота1о-Рот~ вэаимодействиа массиве, где записан заголовок завершенного запроса, и возвращает в зсаспз состояние завершенной связи. Объект запроса освобождается и имени запроса присваивается величина ЧР1 НЕЦУЕЯТ МОЬЬ. МР1 ЫА1ТАМУ имеет не локальную семантику завершения. ИР1 ТЕБТАМУ(соппс, аггау о1 геопезсз, йпбех, 11аЕ, зсаспз) 1М соппс длина списка 1МООТ аггау о1 геопезсз массив имен запросов эОТ Тпбех индекс в массиве имени запроса, который завершился ВОТ 11аЕ равен сгие, если один запросов выпопнился, иначе 1а1зе ВОТ зсаспз статус принятого пакета данных (пс МР1 Тезсапу(йпс соппс, МР1 Неопезс ваггау о1 геопезсз, тпс в1пбех, 1пс в11аЕ, МР1 Ясаспз взсаспз) ЧР1 ТЕБТАМУ(СООМТ, АННАУ ОР НЕООЕЯТБ, 1МОЕХ, РЕАО, БТАТУЯ, 1ЕННОН) '.ОО1САЬ РЕАО 1МТЕОЕН СООМТ, АННАУ ОР НЕООЕБТЯ(в), 1МРЕХ, ЯТАТОБ(МР1 БТАТОЯ Я12Е), 1ЕННОН МР1 ТЕЯТАМУ проверяет на завершение операции обмена, связанные с запросами, имена которых записаны в массиве аггау от геопезСз.

МР1 ТЕБТАМУ имеет локальную семантику вавершения. Если хотя бы одна из операций завершилась, функпия возвращает 11аЕ =сгпе, возврацает в 1пбех порядковый номер (индекс) в массиве аггау о1л еопезсз, где стоит заголовок 1авершенного запроса, и возвращает в зсаспз состояние завершенной связи. Объект запро:а освобождается, и имени запроса присваивается величина МР1 НЕООЕЯТ МО)Л.. Если никакая операпия к этому моменту не завершилась, функция возвращает У1аЕ = (а1зе, в 1пбех возвращает МР1 ОМОЕР1МЕР, и зсаспз неопределен.

Выполнение МР1 ТЕЯТАМУ(соппС, аггау о1 геоиезсз,й йпбех,й 11аи,й зсаспз) имеют тот же самый эффект, что выполнение МР1 ТЕБТ(й аггау оХ геоиезсзЫ,й 11аЕ,й вСаСиз) для 1=0, 1,..., соппС-1 в некотором произвольном порядке с одним и тем же возвращенным флагом 11аЕ = сгпе или когда все запросы не завершились.

В этом случае ьпбех равен значению 1 и в последнем случае равен МР1ЛМЭЕР1МЕО. Пример 5.17. Производитель-потребитель, использующие МР1 Иабсалу. Суребе1 зсгпсс ( сЬаг баСа[МАХБ1ХЕ3; 1пС басазйхе; Впттег; Впттег Ьпттег0; МР1 Неопезс геН[3; МР1 Ясасиз зсаспз; МР1 Сошш гапК(сопев, йгапК); МР1 Сошш зйзе(сопип, йзтхе); ъв Производитель в/ 11(гапК != збхе-1) ( Ьпттег = (Вп11ег в)ша11ос(з1хео1(ВиТЛег)); /в Главный пики в/ иЬ11е(1) ( ргобпсе(Ьиттег -> баСа, йЬпттег -> басазйхе); МР1 Яепб(Ьпттег->баса,Ьп1тег->басаз1зе,МР1 СНАН,захе-1,саЕ,соуп); 5.8.

Ммазсествениые завершения неблокираваннмх операций /» гап)г == ззке-1, потребитель »/ е1зе ( Ьц1Хег = (Вцттег »)на11ос(з1кеот"(Вцттег)»(зззе-1)), тес( = (МР1 Нес)цепс»)на11ос(ззкеог(МР1 Нес(цепс)»(зтне-1)), тог(1 = О, т с этне-1, з++) МР1 1гесч(ЬцХХегЫ баса, МАХБ12Е, МР1 СНАН, т, саЕ, сош, йгес(Ы ), /» Главный цикл */ нпт1е(1) ( МР1 Натсапу(зз.ке-1, гей, йз, йзсасцз), МР1 Оес соцпс(кзсасцз, МР1 СНАМ, кЬц11ег(1] с)асазтке), сопение(ЬцгтегЫ с)ага, Ьц11егЫ оасазтке), МР1 Хгесч(ЬцТХегЫ цаса, МАХЯ1ЕЕ, МР1 СНАМ, з, саЕ, сопка, кгес(Ы ), Эта программа осуществляет тот же самый протокол потребителя — производителя, как программа в примере 5.10.

Использование МР1 НА1ТАМУ позволяет избежать выполнения многократных испытаний, чтобы найти операцию обмена, которая завершилась, приведя к более компактной и более эффективной программе. Однако эта программа, в отличие от программы в примере 5.10, не предотвращает задержку производителей. Возможно что потребитель неоднократно потребляет сообщения, посланные из нулевого процесса, при игнорировании сообщений, посланных другими процессами. Пример 5.18 ниже показывает, как выполнить справедливое обслуживание, используя МР1 ЫА1ТБОМЕ. ХР1 ЧА1ТА11.(соцпс, аггау от тес)цезсз, аггау от зсасцзез) 1й соцпс пинна списка 1МОВТ аггау оХ гес)цезсз массив имен запросов ОУТ аггау о1 зсасцзез массив статусов объектов 1пс МР1 Ыагса11(1пс соцпс, МРХ Нес(цезс «аггау о1 тес(цезсз, МР1 Ясапцз »аггау от зпапцзез) НР1 НА1ТАЬЬ(СООМТ, АННА1' ОР НЕЦОЕБТЯ, АННАУ ОР БТАТОБЕЯ, 1ЕННОН) 1НТЕСЕН СООМТ, АННАУ ОР НЕЦОЕБТЯ(») 1МТЕОЕН АННА1' ОР ЯТАТОБЕЯ(МР1 ЯТАТОЯ Б1ЕЕ,»), 1ЕННОН ХР1 НА1ТА).1 блокирован до выполнения всех операций, связанных с запросами, записанными в массиве аггау оХ тес(цезсз.

В массиве состояний аггау оХ зсасцзез в строке с индексом т возвращается статус з-й операции. Все объекты запросов освобождаются, и соответствующим именам запросов присваивается величина МР1НЕЦОЕБТ МУЬ(.. МР1 ЫА1ТА11., имеет не локальную семантику завершения. Выполнение НР1 йА1тА~ь(соцпс,аггау о1 тес)цезсз,аггау ох зсагпзез) имеет тот же самый эффект, как выполнение МР1 Ыа1с(каггау оХ гес(цезсзЫ,»гаггау от зсагцзез Ы) для т=О,..., соцпс-1 в некотором произвольном порядке. Когда один илн большее количество обменов, законченных запросом к МР1 НА1ТА11 терпят неудачу, МР1 ЫА1ТАЫ возвратит ошибку, обозначенную константой МР1 ЕНН 1М ЯТАТУЯ и запишет в поле ошибки каждого состояния код ошибки.

Этот код будет МР1.БОССЕБЯ, если обмен завершился; это будет другой определенный код ошибки, если обмен потерпел неудачу; или это будет МР1РЕМ01МО, если обмен не не потерпел неудачу, ни завершился. Функция МР1 МА1ТАЕЕ возвратит МР1 БОССЕЯЯ, если обмен всех операций завершился успешно, нли возвратит другой код ошибки, есин обмен потерпел неудачу по другим причинам (типа недействительных аргументов). МР1 НА1ТАЕЕ модернизирует поля ошибки объектов состояния только, когда она возвращает МР1 ЕНН 1М.ЯТАТОБ. о. Ротьео-Роте взаимодействия мР1 теЯтА11(соипс, аггау ох гее(иезсз, 11аН, аггау ой ясасизез) 1М соипс длина списка 1МОУТ аггау оу гее(иеяСз массив имен запросов ОУТ Х1ан равен сгие, если все запросы выполнились, иначе 1а1зе массив статусов объектов ОУТ аггау ой ясасияез йпс мр1 Теяса11(йпс соипс, мр1 нее(иенс хаггау о1 гее)иеясз, Тпс «11ае, МР1 Бсасиз хаггау оХ зсасизея) МР1 ТЕБТАЕЕ(СОУИТ, АННАУ ОГ НЕЦУЕЯТЯ, РЕАС, АННАУ ОР ЯТАТУЯЕЯ, 1ЕННОН) (.001САЕ ГЕАС 1МТЕСЕН СОУМТ, АННАТ ОР НЕЦУЕЯТЯ(х), АНВАТ ОГ ЯТАТУЯЕБ(МР1 БТАТУЯ Я1ЕЕ,«) 1МТЕОЕН 1ЕННОН МР1 ТЕЯТА1Л.

проверяет на завершение все операции, связанные с запросами в массиве аггау о1 гее)иезСя. МР1 ТЕЯТАЕЕ имеет локальную семантику завершения. Если все операции завершились, она возвращает 11аЕ = сгие, устанавливает соответствующую информацию о статусах в аггау о1 ясасияея, освобождает нсе запросы н присваивает всев именам запросов константу МР1 НЕЦУЕЯТ ИУ1,ь. Если все действия не завершились, то возвращается 11аЕ = Ха1зе, никакой запрос не изменен и значения состояний неопределены. Ошибки, которые произошли в течение выполнения МР1 ТЕЯТАь1, обрабатываются таким же образом, как ошибки в МР1 ЧА1ТАЕЕ.

Пример, использующий МР1 Ыайса11, приведен цля задачи Лирихле в и. 9.3.5. ЧР1 ИА1ТЯОМЕ(йпсоипс, аггау ой геииезсз, оиссоипс, аггау оТ Тп61сея, аггау о1 зсасизез) длина массива запросов массив имен запросов количество завершенных запросов массив инлексов завершенных операций массив статусов объектов для завершенных операций (ис мР1 Майсзоше(йпс Апсоипс, МР1 Вее(иеяс «аггау о1 гее)иезсз, 1пс хоиссоипс, Тпс хаггау оХ зпййсея, МР1 Ясасия хаггау о1 зсасияез) 1М Тпсоипс 1ИОУТ аггау о1 гее)иеяся 9УТ оиссоипс ОУТ аггау о1 Апигсея )УТ аггау оХ ясасизез ЧР1 ЧА1ТБОМЕ(1МСОУМТ, АВВАУ ОР-НЕЦУЕБТЯ, ОУТСОУМТ, АННАУ ОГ 1МОТСЕБ, АННАУ ОГ ЯТАТУЯЕБ, 1ЕВНОН) 1ИТЕСЕН 1МСОУМТ, АННАУ ОР ВЕЦУЕЯТЯ(х), ОУТСОУИТ, АННАТ ОР 1МР1СЕБ(х) 1МТЕОЕН АННАУ ОГ ЯТАТУЯЕБ(МР1 ЯТАТУЯ Я1ЕЕ,«), 1ЕННОН МР1 ИАХТБОМЕ жцет до завершения по крайней мере одной нз операций, связанной с запросами в массиве аггау оХ гее(иеясз, и возвравцвет в оиссоипс количество завершенных 1апросов.

В первые оиссоипс элементов массива аггау ог йпогсея записаны индексы в яассиве аггау о~ гес)иеясз этих завершенных операций. В первые оиссоипс элементов яассива аггау оХ ясасизез записаны статусы для этих завершенных операций. Каждый |апрос, который закончился, освобождается, и имени запроса присваивается константа 1Р1 НЕЦУЕЯТ МУ(Л.М1Л.Е. МР1 ЧА1ТЯОМЕ имеет не локальную семантику завершения. Если одна или большее количество операций, завершенных МР1 ЧА1ТБОМЕ, не выполнинись, то аргументам оиссоипс, аггау о1 Тпийсея, аггау оХ ясасизез будут присвоены знанения, указывающие на завершение или не завершение операций. Запрос возвратит ошибку, ~акодированную МР1 ЕНН 1М ЯТАТУЯ, и в поле ошибки каждого возвращенного состояния бу~ет записана константа, указывающая успешное завершение операции или определенную 5.8.

Множественные завершения неблонированност оперения ошибку, которая произошла. Запрос возвратит МР1 БОССЕЯЯ, если операции выполнились юрмально, и возвратит код ошибки, если онн потерпели неудачу по некоторым причинам (тяпа недействительных аргументов). МР1 МА1ТЯОМЕ модернизирует поля состояния объек- тов запроса, только когда она возвращает МР1 ЕВВ 1М ЯТАТОБ. ИР! ТЕЯТЯОМЕ(дпсоипт, агтау от геоиезтз, оитсоипп, аггау оИ дпс)дсез, аггау от зсасизез) )И дпсоипс !ИВРИТ аттау от тес)иезсз ОИТ оиссоипс ИИТ аггау оИ дпбдсез ИИТ аггау оТ зсасизез 1пп МР1 Тезсзоше(дпс дпсоипс, МР1 Вес!иенс ваггау о1 тес!иезсз, дпс воиссоипс, дпи ваттау От" Дцс)дСЕЗ, МР1 Бсасиз *аггау от зиаиизез) ИР! ТЕБТБОМЕ(1МСООМТ, АВВАУ ОР ВЕОУЕЯТБ, ООТСОУИТ, АВВАУ ОР 1МО1СЕБ, АВВАУ ОР ЯТАТОЯЕЯ, 1ЕВВОК) !ИТЕСЕК 1МСОУМТ, АВВАУ ОР ВЕЦУЕБТЯ(в), ОУТСОУМТ, АВВА'1' ОР 1МР1СЕЯ(в) !ИТЕОЕВ АВВАУ ОР ЯТАТОЯЕБ(МР1 ЯТАТОЯ Я!ЕЕ,в), 1ЕВВОК МР1 ТЕЯТБОМЕ ведет себя как одноименная МР1 МА1ТЯОМЕ, за исключением того, что опа возвращается немедленно.

Если никакое действие не завершилось, она возвращает оппсоипс = О. МР1 ТЕЯТЯОМЕ имеет локальную семантику завершения. Ошибки, которые встречаются в течение выполнения МР1 ТЕБТБОМЕ, обрабатываются аналогично, как функцией МР1 ЧАТТЯОМЕ. МР1 нА1ТБОМЕ и МР1 ТЕЯТЯОМЕ выполняют требование равнодоступности: если запрос для приема, неоднократно появляющийся в списке запросов, прошел к МР1 УА1ТБОМЕ илн ИР1 ТЕЯТБОМЕ и соответствующая передача была инициирована, то получающий процесс в конечном счете завершится (если посылающий не удовлетворен другим приемом). Подобные требования равнодоступности верны и для посылающих запросов. Пример 5.18.

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

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

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

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