Главная » Просмотр файлов » Диссертация

Диссертация (1148255), страница 8

Файл №1148255 Диссертация (МАКС DSM Система распределённой общей памяти для мультиагентных систем в IoT) 8 страницаДиссертация (1148255) страница 82019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

С этой задачей си­стема справилась, однако производительность решения была не очень высока.Для ликвидации этого недостатка были разработаны системы Munin и Midway(см. ниже), которые просят разработчика явно указывать, где допустимы бо­лее слабые модели консистентности – таким образом, изначальное ПО в случаеэтих систем приходится не сильно, но всё же модифицировать.1.6.3. MuninMunin [14, 17, 18] создавался в качестве заменя IVY, ставя перед собой теже цели, но стараясь достичь гораздо более высокой производительности.

Ор­ганизация памяти, как и в IVY, в Munin страничная (с использованием MMU),однако Munin умеет размещать отдельные переменные (точнее структуры дан­ных) на разных страницах, что создает видимость DSM основанной на перемен­ных.С целью повышения производительности вместо последовательной конси­44стентности реализует модель консистентности по выходу (см. раздел 1.4.5), икаждый выход из критической секции сопровождает рассылкой по узлам си­стемы дельты изменений соответствующих страниц. Другой способ повышенияпроизводительности – требование к программисту явным образом указывать ка­тегорию (одну из четырех предопределенных: read only, migratory, write-shared,conventional) каждой из общих переменных, с целью применения к ним наиболееэффективных алгоритмов.Обладая высокой производительностью, Munin все же оказался сложенв использовании (программисту сложно контролировать у какой переменнойкакая должна быть категория и какие на каждой из переменных из-за этогоограничения), а программирование с ним должно вестись очень аккуратно – кпримеру, доступ к общим переменным разрешен и за пределами критическихсекций, что может приводить к сложноуловимым ошибкам, так как консистент­ность памяти для такого доступа моделью не обеспечивается.1.6.4.

MidwayMidway [15, 16] появился чуть позже Munin, с той же целью, но иными под­ходами. В отличие от Munin, имеющего четыре категории общих переменныхи одну модель консистентности, Midway имеет только одну категорию перемен­ных, зато поддерживает три модели консистентности. Для корректной работыпрограммисту необходимо явным образом связать общие переменные с синхро­низационными.Недостатком у Midway стало то, что если программист не выполнит требо­ваний системы (маркировка переменных как общих, связывание с синхрониза­ционной переменной, доступ к общим переменным только внутри критическихсекций) – на этапе компиляции никаких ошибок выдано не будет, и, как и вслучае с Munin, система будет работать некорректно при крайне затрудненныхвозможностях для обнаружения причин такого поведения.451.6.5.

OrcaOrca [12] представляет собой систему параллельного программирования собщением между узлами через DSM, организованную в виде объектов. Системасостоит из языка программирования (причем не надстройки, а принципиальнонового, хотя и похожего на Modula-2), соответствующего компилятора и систе­мы выполнения. Последняя при этом независима и может использоваться вразличных языках. Объекты в системе похожи на структуры языка Си – в нихесть и члены, и методы, наследование же отсутствует.Система немного похожа на Linda, но только на первый взгляд – объектыOrca гораздо богаче, а алгоритмы сложнее.

Так как объекты Orca могут содер­жать методы, для возможности их удаленного вызова Orca поддерживает RPCпротокол. В Orca имеется множество интересных алгоритмов. Например, Orcaумеет работать как в сетях, поддерживающих надежные широковещательныесообщения, так и в сетях их не поддерживающих – в последнем случае Orcaреализует этот функционал самостоятельно, поверх функционала сообщенийточка-точка.

Решение же о том, реплицировать ли ту или иную переменнуюили хранить локально, принимает компилятор, основываясь на своих расчетахсоотношения операций записи и чтения соответствующего объекта (учитываяи циклы и наличие широковещательных сообщений в системе).В целом, система очень мощная, но, следовательно, и «тяжелая» – Orcaтребует наличия собственного компилятора (соответственно имеет сложности спортированием на другие платформы) и изучения довольно экзотического посовременным меркам языка программирования.1.6.6. TreadMarksTreadMarks [47, 48] пошел иным путём чем Orca и постарался стать для раз­работчика максимально понятным за счет API, очень схожего с POSIX Threads.TreadMarks – страничная DSM для Unix систем, написанная на Си и реализую­46щая модель ленивой консистентности по выходу (см.

раздел 1.4.6), причём сразутри разновидности этой модели (lazy invalidate, lazy hibrid, eager invalidate). По­добно Munin, TreadMarks обнаруживает обращения к страницам через MMU,и, подобно, Munin рассылает затем дельту изменений. Однако так как модельленивой консистентности не требует выполнять рассылку сразу же, системаожидает запросов с других узлов, зачастую накапливая дельту за нескольковходов-выходов из критической секции.Вероятно благодаря эффективной модели консистентности, качественнойреализации, распространенной платформе (Unix) и удобстве для программиста,система стала очень популярна.1.6.7.

GrappaGrappa [26] - современный DSM фреймворк для программирования кла­стеров, осуществляющих большие объемы вычислений в памяти и активно ра­ботающих с данными. Система исполнения реализована на Си++. Поддержи­вается оптимизация работы с общими переменными на уровне компилятора.Поддерживает модель последовательной консистентности (в случае отсутствиятак называемых «гонок», англ. data-race, иначе говоря, в отсутствие в ПО фраг­ментов, зависящих от порядка выполнения кода относительно других узлов).Доступ к общей памяти осуществляется через операции делегирования – дан­ные не обязательно перемещаются на узел, совершающий операцию записи,возможно перемещение самой операции в узел, владеющий данными.

Для по­вышения эффективности использования каналов передачи данных, агрегируетотдельные сообщения в блоки.В целом перспективно выглядящая система с четкой областью примене­ния.471.6.8. Перечень известных DSM решенийВ таблице 1.1 представлен список существующих DSM решений. Переченьдалеко не полон (в него не вошли Amber, Piranha, Mirage+, Samhita и мно­гие другие). Однако в нём представлены наиболее известные решения1 . Длябольшей наглядности список расположен в хронологическом порядке2 . Реше­ния сопровождаются отсылками на соответствующие работы, а также краткимкомментарием3 .1.6.9.

ЗаключениеМы кратко рассмотрели наиболее известные системы, реализующие кон­цепцию DSM. Первыми решениями стали своеобразные эксперименты – попыт­ки популризации DSM за счет облегчения миграции ПО для мультипроцессоровв распределённую вычислительную среду. Решения постепенно усложнялись впоисках «золотой середины» между удобством использования и производитель­ностью.

Вершиной на этом пути, стало, пожалуй, решение TreadMarks, но и ононе оказалось абсолютным. Развитие концепции сделало виток, и, обладая ужегораздо большим опытом, сегодняшние исследователи (по-прежнему замечая вDSM не полностью раскрытый потенциал) создают решения, как и на заре воз­никновения этой концепции – узконаправленные, но максимально эффективнорешающие конкретные задачи в конкретном окружении.1На субъективный взгляд автора. К тому же известность наиболее «молодых» решений оценивать покарано.2Следует учесть, что год создания того или иного решения довольно затруднительно определить точнои обычно в его качестве используется год ключевой публикации по теме.3Который, пожалуй, более полезен для автора, так как позволяет быстро вспомнить решение, но ни вкоем случае не является его исчерпывающей характеристикой.48Год Название, публикации Комментарий1985 Linda [24]Языковая надстройка для работы с кортежами1986 IVY [32]Последовательная консистентность, странич­ная DSM1987 Emerald [22]Объектная DSM1989 Mirage [23]Страничная, как расширение UNIX System V1990 Munin [14, 17, 18]DSM на переменных1991 Midway [15, 16]DSM на переменных1991 Orca [12]Отказоустойчивая, объектная, язык програм­мирования, построена на Amoeba1992 Mermaid [27]Гетерогенная DSM1994 TreadMarks [47, 48]Unix, lazy release, Pthreads, команда Munin1995 Calypso [13]Простая DSM, расширяющая Си++1999 JIAJIA [28]DSM для расширения памяти2006 VODCA [50]Реализует view-based модель консистентности2014 Grappa [26]DSM система для разработки ПО кластеров2015 Tardis [53]DSM протокол, не требующий широковеща­тельных рассылок2017 Naplus [39]Система DSM-коммуникации виртуальных ма­шин (используется JIAJIA)Таблица 1.1 – Известные DSM решения491.7.

ВыводыВ данной главе были рассмотрены предпосылки возникновения концепцииDSM, приведено её описание, история развития, а также проанализированыисследования других авторов.Развитие вычислительных систем привело к широкому распространениюмногопроцессорных архитектур. От архитектур с общей памятью, характерныхдля тесносвязанных систем, наблюдается движение к слабосвязанным или рас­пределённым системам, представляющим собой совокупность независимых вы­числительных устройств, объединённых для решения некоторой задачи и фор­мирующих таким образом мультиагентную систему, устройства которой общейпамяти уже не имеют.

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

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

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

Тип файла
PDF-файл
Размер
806,38 Kb
Высшее учебное заведение

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

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