Спец часть (часть 3) (3 поток) (2015) (by Кибитова) (1161603), страница 37
Текст из файла (страница 37)
Еслиспособностьсетиопределяетсяскоростьюпередачиинформациипо каналамсвязи. ЕслиЛатентность—этовремяначальнойзадержкиприпосылкесообщений.Пропускнаяопределяетсяскоростью передачипо каналам Еслисвязи. Есливспособностьпрограмме сетимногомаленьких сообщений,то сильноинформациискажется латентность.вспособностьмногомаленькихсообщений,тоскажетсялатентность.Еслисетиопределяетсяскоростью передачиинформациипо каналамсвязи. Есливпрограммепрограммемногомаленькихсообщений,то сильносильноскажетсялатентность.Еслисообщенияпередаютсябольшимипорциями,то важнавысокаяпропускнаяспособностьсообщенияпередаютсябольшимипорциями,товажнавысокаяпропускнаяспособностьвсообщенияпрограммемногомаленькихсообщений,тосильноскажетсялатентность.Если передаются большими порциями, то важна высокая пропускная способностьсообщения передаются большими порциями, то важна высокая пропускная способностьпередачипопосетиненеможетбытьканаловсвязи.Из-залатентностимаксимальнаяскоростьпередачисетиможетбытьканаловсвязи.связи.Из-заИз-залатентностилатентностимаксимальнаямаксимальнаяскоростьскоростьпередачипосетинеможетбытьдостигнутанасообщенияхснебольшойдлиной.Напрактикепользователямнестолькодостигнутанасообщенияхснебольшойдлиной.Напрактикепользователямнестолькодостигнута на сообщениях с небольшой длиной.
На практике пользователям не стольковажнысколькореальныезаявляемыепроизводителемпиковыехарактеристики,сколькореальныеважнызаявляемыезаявляемыепроизводителемпроизводителемпиковыепиковыехарактеристики,характеристики,сколькореальныепоказатели,достигаемыенауровнеприложений.Послевызовапользователемфункциипоказатели,достигаемыенауровнеприложений.Послевызовапользователемфункциипоказатели, достигаемые на уровне приложений. После вызова пользователемфункциисообщенияSend()сообщениепоследовательнопроходитчерезцелыйнаборпосылкисообщенияSend()сообщениепоследовательнопроходитчерезцелыйнаборпосылки сообщения Send() сообщение последовательно проходит через целый наборслоев,обеспеченияи ииопределяемыхособенностямиорганизациипрограммногообеспеченияслоев,определяемыхопределяемыхособенностямиособенностямиорганизацииорганизациипрограммногопрограммногообеспеченияаппаратуры.вариацийнанатемулатентностиаппаратуры.Этим,частности,определяютсямножествовариацийтемулатентностиаппаратуры.Этим,Этим,вввчастности,частности,определяютсяопределяютсяииимножествомножествовариацийнатемулатентностиреальныхсистем.УстановилиMPIнакомпьютереплохо,реальныхсистем.УстановилиMPIнакомпьютереплохо,реальных систем.
Установили MPI на компьютере плохо,латентностькартуототнеизвестноголатентностьбудетбольшая,купилидешевуюсетевуюкартунеизвестноголатентностьбудетбудетбольшая,большая,купиликупилидешевуюдешевуюсетевуюсетевуюкартуотнеизвестногопроизводителя,ждитедальнейшихсюрпризов.производителя,ждитедальнейшихсюрпризов.производителя, ждите дальнейших сюрпризов. В заключениепараграфа давайтепопробуем иидляданного классакомпьютеров выделитьВВзаключениезаключениепараграфапараграфадавайтедавайтепопробуемпопробуем идлядляданногоданногоклассаклассакомпьютеровкомпьютеров выделитьвыделитьфакторы, снижающиепроизводительность вычислительныхсистем с распределеннойфакторы,факторы,снижающиеснижающиепроизводительностьпроизводительностьвычислительныхвычислительныхсистемсистемссраспределеннойраспределеннойпамятьюнареальныхпрограммах.Начнемсужеупоминавшегосяранеезакона Амдала.памятьюнареальныхпрограммах.Начнемсужеупоминавшегосяранеепамятью на реальных программах.
Начнем с уже упоминавшегося ранее законазакона Амдала.Амдала.Длякомпьютеровданногоклассаониграеточеньбольшуюроль.Всамомделе,еслиДляДлякомпьютеровкомпьютеровданногоданногоклассаклассаонониграетиграеточеньоченьбольшуюбольшуюроль.роль.ВВсамомсамомделе,деле, еслиеслипредположить, чтов программе естьлишь 2%последовательных операций,топредположить,предположить,чточтоввпрограммепрограммеестьестьлишьлишь2%2%последовательныхпоследовательныхопераций,операций, тоторассчитывать наболеечем50-кратноеускорениеработыпрограммыненеприходится.рассчитыватьнаболеечем50-кратноеускорениеработыпрограммыприходится.рассчитывать на более чем 50-кратное ускорение работы программы не приходится.Теперь попробуйтекритически взглянутьна своюпрограмму.Скорее всего,в ней естьТеперьТеперьпопробуйтепопробуйтекритическикритическивзглянутьвзглянутьнанасвоюпрограмму.своюпрограмму.СкорееСкорее всего,всего, ввнейней естьестьинициализация,операцииввода/вывода,какие-тосугубопоследовательныеучастки.инициализация,операцииввода/вывода,какие-тосугубопоследовательныеучастки.инициализация,операцииввода/вывода,какие-тосугубопредположите,последовательныеучастки.Оцените ихдолюнафоневсейпрограммыиинамгновеньечтовывыОценитеихдолюнафоневсейпрограммынамгновеньепредположите,чтоОценитеихдолюнафоневсейпрограммыинамгновеньепредположите,чтовыполучили доступ к вычислительной системе из 1000 процессоров.
После вычисленияполучилидоступквычислительнойсистемеиз1000процессоров.Послевычисленияполучилидоступдляк вычислительнойсистеменаизтакой1000системе,процессоров.Послевычисленияверхнейграницыускорения программыдумаем,станетясно, чтоверхнейграницыдляускоренияпрограммынатакойсистеме,думаем,станетясно,верхнейграницыдляускоренияпрограммынатакойсистеме,думаем,станетясно, чточтонедооценивать влияние закона Амдала никак нельзя. Поскольку компьютеры данногонедооцениватьвлияниезаконаАмдаланикакнельзя.ПосколькукомпьютерыданногонедооцениватьвлияниезаконаАмдаланикакнельзя.Посколькукомпьютерыданногокласса имеют распределенную память, то взаимодействие процессоров между собойклассапамять,топроцессоров междуклассаимеютимеютраспределеннуюраспределеннуюпамять,товзаимодействиевзаимодействиемежду собойсобойосуществляетсяс помощью передачисообщений.Отсюда двапроцессоровдругих замедляющихосуществляетсяспомощьюпередачисообщений.Отсюдадвадругихзамедляющихосуществляетсяс помощьюпередачисообщений.два другихзамедляющихфактора— латентностьи скоростьпередачиданныхОтсюдапо каналамкоммуникационнойфактора—латентностьиискоростьпередачиданныхпоканаламкоммуникационнойфактора—латентностьскоростьпередачиданныхпоканаламкоммуникационнойсреды.
В зависимости от коммуникационной структуры программы степень влияния этихсреды.отсреды.ВВзависимостизависимостиоткоммуникационнойкоммуникационнойструктурыструктурыпрограммыпрограммыстепеньстепень влияниявлияния этихэтихфакторовможетсильноменяться.факторовможетсильноменяться.факторовможетсильноменяться.Если аппаратура или программное обеспечение не поддерживают возможностиЕслиилинеЕслиаппаратурааппаратураилипрограммноепрограммноеобеспечениенеподдерживаютподдерживаютвозможностиасинхроннойпосылкисообщений наобеспечениефоне вычислений,то возникнутвозможностинеизбежныеасинхроннойпосылкисообщенийнафоневычислений,товозникнутнеизбежныеасинхроннойпосылкисообщенийна фоне вычислений,то возникнутнеизбежныенакладныерасходы,связанныес ожиданиемполного завершениявзаимодействиянакладныерасходы,связанныесожиданиемполногозавершениявзаимодействиянакладныерасходы,связанныесожиданиемполногозавершениявзаимодействияпараллельных процессов.параллельныхпараллельныхпроцессов.процессов.
Для достижения эффективной параллельной обработки необходимо добитьсяДляэффективнойпараллельнойобработкинеобходимодобитьсяДлядостижениядостиженияэффективнойпараллельнойобработкинеобходимодобитьсямаксимальноравномернойзагрузкивсех процессоров.Еслиравномерностинет, то частьмаксимальноравномернойзагрузкивсехпроцессоров.Еслиравномерностинет,максимальнонеизбежноравномернойзагрузкивсех процессоров.Если равномерностинет,то частьчастьпроцессоровбудетпростаивать,ожидая остальных,хотя в это времяонитопроцессоровнеизбежнобудетпростаивать,ожидаяостальных,хотявэтовремяонипроцессоровнеизбежнобудетпростаивать,ожидаяостальных,хотявэтовремяонивполне могли бы выполнять полезную работу.
Данная проблема решается проще, есливполневыполнятьполезнуюработу.Даннаяпроблемарешаетсяпроще,есливполнемоглимоглибыбывыполнятьполезнуюработу.Даннаяпроблемарешаетсяпроще,есливычислительнаясистемаоднородна.Оченьбольшиетрудностивозникаютприпереходевычислительнаясистемаоднородна.ОченьбольшиетрудностивозникаютприпереходевычислительнаяОченьбольшие трудностипри переходенанеоднородныесистемасистемы,однородна.в которых естьзначительноеразличиевозникаютлибо междунасистемы,ввкоторыхразличиемеждунанеоднородныенеоднородныеузлами,системы,которыхестьзначительноезначительноеразличиелиболибомеждувычислительнымилибомеждуестьканаламисвязи.
Существенныйфактор— этовычислительнымиузлами,либомеждуканаламисвязи.Существенныйфактор—реальнаяпроизводительностьодногопроцессорасистемы.Разныевычислительнымиузлами, либомеждуканаламивычислительнойсвязи. Существенныйфактор— этоэтореальнаяпроизводительностьодногопроцессорасистемы.моделимикропроцессоровмогутподдерживатьнесколькоуровней кэш-памяти,иметьреальнаяпроизводительностьодногопроцессоравычислительнойвычислительнойсистемы.