Главная » Просмотр файлов » Электронный коспект лекций

Электронный коспект лекций (1162752), страница 8

Файл №1162752 Электронный коспект лекций (Электронный коспект лекций) 8 страницаЭлектронный коспект лекций (1162752) страница 82019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Если размер страницы DSM совпадает сразмером страницы виртуальной памяти (или кратен ей), то можнообращаться к разделяемой памяти обычными машиннымикомандами, воспользовавшись аппаратными средствами проверкиналичия в оперативной памяти требуемой страницы и заменывиртуального адреса на физический. Конечно, для этоговиртуальное адресное пространство процессоров должно бытьдостаточно, чтобы адресовать всю разделяемую память.

При этом,несколько процессов в одном узле могут разделять одну и ту жестраницу.Для определения места расположения блоков данныхмиграционныйалгоритмможетиспользоватьсервер,отслеживающий перемещения блоков, либо воспользоватьсямеханизмом подсказок в каждом узле. Возможна ишироковещательная рассылка запросов.6.2.3 Алгоритм размножения для чтения.Предыдущий алгоритм позволял обращаться к разделяемымданным в любой момент времени только процессам в одном узле (вкотором эти данные находятся).

Данный алгоритм расширяетмиграционный алгоритм механизмом размножения блоковданных, позволяя либо многим узлам иметь возможностьодновременного доступа по чтению, либо одному узлу иметьвозможность читать и писать данные (протокол многих читателейи одного писателя).При использовании такого алгоритма требуется отслеживатьрасположение всех блоков данных и их копий. Например, каждыйсобственник блока может отслеживать расположение его копий.Безусловно, производительность повышается за счет возможностиодновременного доступа по чтению, но запись требует серьезныхзатрат для уничтожения всех устаревших копий блока данных илиих коррекции.

Да и модель многих читателей и одного писателямало подходит для параллельных программ.6.2.4 Алгоритм размножения для чтения и записи.Этот алгоритм является расширением предыдущего алгоритма. Онпозволяет многим узлам иметь одновременный доступ кразделяемым данным на чтение и запись (протокол многихчитателей и многих писателей). Поскольку много узлов могутписать данные параллельно, требуется для поддержаниясогласованности данных контролировать доступ к ним.Одним из способов обеспечения согласованности данныхявляетсяиспользованиеспециальногопроцессадляупорядочивания модификаций памяти. Все узлы, желающиемодифицировать разделяемые данные должны посылать своимодификации этому процессу. Он будет присваивать каждоймодификацииочереднойномерирассылатьегошироковещательно вместе с модификацией всем узлам,имеющим копию модифицируемого блока данных.

Каждый узелбудет осуществлять модификации в порядке возрастания ихномеров. Разрыв в номерах полученных модификаций будетозначать потерю одной или нескольких модификаций. В этомслучае узел может запросить недостающие модификации.Данный алгоритм может существенно снизить среднюю стоимостьдоступа к данным только тогда, когда количество чтенийзначительно превышает количество записей.В общем случае, все перечисленные выше алгоритмы являютсяслишком неэффективными, чтобы их можно было использоватьдля преодоления архитектурных ограничений мультипроцессорови сокращения усилий, необходимых для написания программ дляраспределенных систем.Добиться эффективности можно только изменив семантикуобращений к памяти.Для упрощения понимания основных идей алгоритмов реализацииDSM мы в дальнейшем будем исходить из того, что все работаетнадежно (например, все сообщения доходят до адресатов) иникаких мер для обеспечения надежности предпринимать ненужно.6.3 Модели консистентности.Модель консистентности представляет собой некоторый договормежду программами и памятью, в котором указывается, что присоблюдении программами определенных правил работы с памятьюбудетобеспеченаопределеннаясемантикаоперацийчтения/записи, если же эти правила будут нарушены, то память негарантирует правильность выполнения операций чтения/записи.

Вэтой главе рассматриваются основные модели консистентностииспользуемые в системах с распределенной памятью.6.3.1 Строгая консистентность.Модель консистентности, удовлетворяющая условию: «Операциячтения ячейки памяти с адресом X должна возвращать значение,записанное самой последней операцией записи по адресу X»,называется моделью строгой консистентности. Указанное вышеусловие кажется довольно естественным и очевидным, однако онопредполагает наличие в системе понятия абсолютного времени дляопределения «наиболее последней операции записи».Все однопроцессорные системы обеспечивают строгуюконсистентность, но в распределенных многопроцессорныхсистемах ситуация намного сложнее.

Предположим, чтопеременная X расположена в памяти машины B, и процесс,который выполняется на машине A, пытается прочитать значениеэтой переменной в момент времени T1. Для этого машине Bпосылается запрос переменной X. Немного позже, в моментвремени T2, процесс, выполняющийся на машине B, производитоперацию записи нового значения в переменную X. Дляобеспечения строгой консистентности операция чтения должнавозвратить в машину А старое значение переменной внезависимости от того, где расположена машина A и насколькоблизки между собой два момента времени T1 и T2. Однако, еслиT1-T2 равно 1 нсек, и машины расположены друг от друга нарасстоянии 3-х метров, то сигнал о запросе значения переменнойдолжен быть передан на машину B со скоростью в 10 разпревышающей скорость света, что невозможно.P1: W(x)1P1: W(x)1--------------------------------> t-----------------------------------> tP2:R(x)1P2:R(x)0 R(x)1а)а) Строго консистентная памятьб) Память без строгой консистентностиБ)6.3.2Последовательная консистентность.Строгая консистентность представляет собой идеальную модельдля программирования, но ее, к сожалению программистов,невозможно реализовать для распределенных систем.

Однако,практический опыт показывает, что в некоторых случаях можнообходиться и более «слабыми» моделями. Все эти методыопираются на то, что должна соблюдаться последовательностьопределенных событий записи и чтения.Последовательную консистентность впервые определил Lamportв 1979 г.Поегоопределению,модельпоследовательнойконсистентности памяти должна удовлетворять следующемуусловию: «Результат выполнения должен быть тот же, как еслибы операторы всех процессоров выполнялись бы в некоторойпоследовательности,вкоторойоператорыкаждогоиндивидуального процессора расположены в порядке,определяемом программой этого процессора»Последовательная консистентность не гарантирует, что операциячтения возвратит значение, записанное другим процессомнаносекундой или даже минутой раньше, в этой модели толькоточно гарантируется, что все процессы должны «видеть» одну и туже последовательность записей в память.Результат повторного выполнения параллельной программы всистеме с последовательной консистентностью (как, впрочем, ипри строгой консистентности) может не совпадать с результатомпредыдущего выполнения этой же программы, если в программенет регулирования операций доступа к памяти с помощьюмеханизмов синхронизации.Два примера правильного выполнения одной программы.

В примерахиспользуются следующие обозначения:W(x)1 - запись значения 1 в переменную x;R(x)0 - чтение значения 0 из переменной x.P1:W(x)1W(y)1P2:W(z)1P3:R(x)0R(y)0R(z)1R(y)0P4:R(x)0R(y)1R(z)1R(x)1В этом примере процессы «видят» записи в порядке W(z)1, W(x)1,W(y)1или W(x)1, W(z)1,W(y)1.P1:W(x)1W(y)1P2:W(z)1P3:R(x)0R(y)1R(z)0R(y)1P4:R(x)1R(y)1R(z)0R(x)1В этом примере процессы «видят» записи в порядке W(x)1, W(y)1,W(z)1.Два примера неправильного выполнения той же программы.P1:W(x)1W(y)1P2:W(z)1P3:R(x)0R(y)0R(z)1R(y)0P4:R(x)0R(y)1R(z)0R(x)1Процессы Р3 и Р4 «видят» записи W(y)1 и W(z)1 в разном порядке.P1:W(x)1W(y)1P2:W(z)1P3:R(x)1R(y)0R(z)1R(y)1P4:R(x)0R(y)1R(z)1R(x)0Процесс Р4 «видит» записи W(x)1 и W(y)1 не в том порядке,как они выполнялись в процессе Р1.Описанныйранеемиграционныйпоследовательную консистентность.алгоритмреализуетПоследовательная консистентность может быть реализованагораздо более эффективно следующим образом.

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

Процесс посылает координаторузапрос на модификацию переменной и ждет от него указания опроведении этой модификации. Такое указание координаторрассылает сразу всем владельцам копий этой переменной.Каждый процесс выполняет эти указания по мере их получения.Поскольку сообщения от координатора приходят каждомупроцессу в том порядке, в котором они были им посланы, то всепроцессы корректируют свои копии переменных в этом единомпорядке.Децентрализованный алгоритм. Процесс посылает посредствоммеханизма упорядоченного широковещания (неделимыешироковещательные рассылки) указание о модификациипеременной всем владельцам копий соответствующей страницы(включая и себя) и ждет получения этого своего собственногоуказания.6.3.3Причинная консистентность.Причинная модель консистентности памяти представляет собойболее «слабую» модель по сравнению с последовательноймоделью, поскольку в ней не всегда требуется, чтобы все процессы«видели» одну и ту же последовательность записей в память, апроводитсяразличиемеждупотенциальнозависимымиоперациями записи, и независимыми.Рассмотримпример.Предположим,чтопроцессP1модифицировал переменную x, затем процесс P2 прочитал x имодифицировал y.

В этом случае модификация x и модификация yпотенциально причинно зависимы, так как новое значение y моглозависеть от прочитанного значения переменной x. С другойстороны, если два процесса одновременно изменяют значенияодной и той же или различных переменных, то между этимисобытиями нет причинной связи. Операции записи, которыепричинно не зависят друг от друга, называются параллельными.Причинная модель консистентности памяти определяетсяследующим условием: «Последовательность операций записи,которые потенциально причинно зависимы, должна наблюдатьсявсеми процессами системы одинаково, параллельные операциизаписи могут наблюдаться разными узлами в разном порядке».Пример.(а) Нарушение модели причинной консистентностиP1:P2:W(x)1R(x)1W(x)2P3:R(x)2R(x)1P4:R(x)1R(x)2(б) корректная последовательность для модели причинной консистентности.P1:W(x)1W(x)3P2:R(x)1W(x)2P3:R(x)1R(x)3R(x)2P4:R(x)1R(x)2R(X)3При реализации причинной консистентности в случаеразмножения страниц выполнение записи в общую память требуетожидания выполнения только тех предыдущих операций записи,от которых эта запись потенциально причинно зависит.Параллельные операции записи не задерживают выполнение другдруга (и не требуют неделимости широковещательных рассылоквсем владельцам копий страницы).Реализация причинной консистентности может осуществлятьсяследующим образом:все модификации переменных на каждом процессоренумеруются;всем процессорам вместе со значением модифицируемойпеременной рассылается номер этой модификации наданном процессоре, а также номера модификаций всехпроцессоров, известных данному процессору к этомумоменту;выполнение любой модификации на каждом процессорезадерживается до тех пор, пока он не получит и невыполнит все те модификации других процессоров, окоторыхбылоизвестнопроцессоруавторузадерживаемой модификации.6.3.4 PRAMконсистентностьконсистентность.ипроцессорнаяPRAM (Pipelined RAM) консистентность определяется следующимобразом: «Операции записи, выполняемые одним процессором,видны всем остальным процессорам в том порядке, в каком онивыполнялись, но операции записи, выполняемые разнымипроцессорами, могут быть видны в произвольном порядке».Пример допустимой последовательности событий в системе сPRAM консистентностью.P1:P2:W(x)1R(x)1W(x)2P3:R(x)1R(x)2P4:R(x)2R(x)1Преимущество модели PRAM консистентности заключается впростоте ее реализации, поскольку операции записи на одномпроцессоре могут быть конвейеризованы: можно продолжатьвыполнение процесса и выполнять другие операции с общейпамятью не дожидаясь завершения предыдущих операций записи(модификации всех копий страниц, например), необходимо толькобыть уверенным, что все процессоры увидят эти записи в одном итом же порядке.PRAM консистентность может приводить к результатам,противоречащим интуитивному представлению.

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

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

Список файлов лекций

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