77346

МЕТОДЫ РАСПРЕДЕЛЁННЫХ ВЫЧИСЛЕНИЙ НА ОСНОВЕ МОДЕЛИ ПОТОКА ДАННЫХ. ПРОТОТИП СИСТЕМЫ

Научная статья

Информатика, кибернетика и программирование

Ему необходимо заботиться о распределении вычислительных задач синхронизации обмене данными и так далее. С другой стороны создаются среды для решения определённых классов задач в основном это касается задач для которых применим параллелизм по данным. Методика базируется на понятиях хранилища задач и правил. Задачей называется программа которая во время исполнения считывает данные с определёнными именами из хранилища и в результате своего исполнения формирует новые данные которые записываются в хранилище.

Русский

2015-02-02

21.5 KB

0 чел.

МЕТОДЫ РАСПРЕДЕЛЁННЫХ ВЫЧИСЛЕНИЙ НА ОСНОВЕ МОДЕЛИ ПОТОКА ДАННЫХ. ПРОТОТИП СИСТЕМЫ.

М.О. Бахтерев, П.А. Васёв

ИММ УрО РАН, Екатеринбург 

Популярные средства параллельного программирования, такие как MPI и OpenMP, требуют от программиста подробного описания большого количества сущностей. Ему необходимо заботиться о распределении вычислительных задач, синхронизации, обмене  данными и так далее. Существуют различные подходы к упрощению процесса программирования и исполнения параллельных вычислений. С одной стороны, создаются универсальные средства автоматического распараллеливания программ (как для исполнения в системах с общей памятью, так и в многомашинных конфигурациях). С другой стороны, создаются среды для решения определённых классов задач (в основном это касается задач, для которых применим параллелизм «по данным»). Также разрабатываются универсальные инструменты, пытающиеся упростить технические аспекты процесса программирования параллельных и распределённых систем.

Иногда при создании подобных средств разработчики пытаются использовать нестандартные парадигмы вычислений. Одной из таких парадигм является поток данных – Dataflow [1]. В различных вариантах методики, основанные на парадигме потока данных, применяются для создания процессорных архитектур, суперкомпьютеров в целом, для программной организации вычислительных потоков в рамках одного процесса и взаимодействия процессов в распределённой вычислительной среде.

В настоящей работе описывается разработанная авторами методика и технические средства для программирования в параллельных распределённых средах. Методика основана на анализе различных, в том числе и собственных, моделей потока данных. Цель данной разработки – упростить процесс создания параллельных программ, и сделать это не в ущерб эффективности исполнения вычислительных кодов. Предлагаемая методика вычислений возникла в результате продолжительной теоретической работы над архитектурой операционной системы для распределённых вычислений [2].

Методика базируется на понятиях хранилища, задач и правил. Хранилище содержит в себе именованные данные, по отношению к которым доступны три операции – запись (создание), чтение и удаление. Хранимые данные являются самодостаточными - это не очереди, но некие единицы информации с уникальными именами. Задачей называется программа, которая во время исполнения считывает данные с определёнными именами из хранилища и в результате своего исполнения формирует новые данные, которые записываются в хранилище. Правилом называется такая конструкция, которая определяет условия и параметры запуска задач. Правило содержит в себе:

  1.  Список имён данных, которые необходимы для выполнения задачи.
  2.  Список соответствия глобальных имён данных (находящихся в хранилище) локальным именам (с которыми и будет работать задача).
  3.  Список задач (программ), которые необходимо запустить.
  4.  Действия, совершаемые в случае успешного выполнения задач (3).

Правило считается готовым к исполнению, когда в хранилище присутствуют все данные c именами из списка (1). После успешного исполнения правило удаляется из списка выполняемых правил.

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

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

Предлагаемая методика позволяет достаточно просто и эффективно реализовать проведение вычислительного эксперимента на гибридных архитектурах, динамическое изменение количества вычислительных узлов во время самого вычисления, работу в глобально-распределённых условиях, автоматическое создание контрольных точек, приостановку и продолжение вычисления прозрачным для программиста образом, использование распределённые хранилищ данных, а также обеспечивает ряд других преимуществ.

На основе предложенной методики авторами в рамках проекта RIDE разрабатывается прототип среды параллельного программирования. Первые версии показывают реализуемость предлагаемых идей и лаконичность программных конструкций для описания правил. Можно надеяться, что в результате развития этой среды удастся достичь главной цели – сделать процесс создания распределённых вычислительных программ более простым и эффективным.

Список литературы.

  1.  Dennis J., Data Flow Supercomputers // Computer, Vol.13, No.11, pp.48-56, 1980.
  2.  Бахтерев М.О., Описание параллельных вычислений при помощи замыканий // Тезисы 10-го Международного семинара "Супервычисления и Математическое моделирование", РФЯЦ-ВНИИЭФ, Саров, с. 31-32, 2008.


 

А также другие работы, которые могут Вас заинтересовать

28776. Место Средневековья во всемирно-историческом процессе 28.35 KB
  Место Средневековья во всемирноисторическом процессе. Как видно в оценке средневековья присутствуют крайности. Поразному определяются и временные рамки Средневековья. К тому же внутри тысячелетнего периода Средневековья принято выделять три этапа: Раннее Средневековье Vв.
28777. Формирование древнерусской государственности. Принятие христианства и его влияние на дальнейшее развитие страны 111.82 KB
  Это тем более очевидно что классовые общества и государства в Скандинавии сложились позже чем на Руси и серьезно повлиять на формирование НовгородскоКиевской Руси варяги не могли.Роль варяжского элемента в ранних государственных структурах Древней Руси 4. И пошли за море к варягам к руси. Сказали Руси чудь славяне кривичи и весь: Земля велика и обильна а порядка в ней нет.
28778. Эволюция древнерусской государственности в XI-XII вв. Международные связи древнерусских земель 25.18 KB
  Международные связи древнерусских земель. Ее причинами были: раздел территории на уделы между наследниками различных ветвей Дома Рюриковичей происходил в результате действовавшего принципа по старшинству к старшему в роду; постоянные княжеские усобицы в основе которых часто лежали политические амбиции тех или иных конкретных лиц не согласных с лествичным правом; рост крупного землевладения укреплявший чувство уверенности в своих силах у крупных владетелей обладавших значительными материальными ресурсами; натуральный характер...
28779. Борьба народов Руси с иноземными захватчиками в XII в. 66.86 KB
  Борьба народов Руси с иноземными захватчиками в XII в. XIII век в истории Руси это время вооруженного противостояния натиску с востока монголотатары и северозапада немцы шведы датчане. Встают два важных вопроса: почему русские княжества проявив героизм и мужество не смогли дать отпор завоевателям Какие последствия имело для Руси иго Ответ на первый вопрос очевиден: конечно имело значение военное превосходство монголотатар жесткая дисциплина отличная конница прекрасно налаженная разведка и др. Другие подчеркивают...
28780. Держава Чингисхана и монгольские завоевания. Иго и дискуссия о его роли в становлении Русского государства 29.73 KB
  Влияние монголотатарского ига на развитие русских земель. Упомянув кратко о зависимости русских князей от ханских ярлыков и сбора налогов Соловьев отмечал что нет причины признавать значительное влияние монголов на русскую внутреннею администрацию поскольку мы не видим никаких его следов. произошло не благодаря а вопреки Орде с точки зрения на монгольское иго в современной исторической науке: Традиционная история рассматривает его как бедствие для русских земель. Нашествие кочевников сопровождались массовыми разрушениями русских городов...
28781. Начало самодержавия в России. Внутренняя и внешняя политика Ивана IV. Альтернативы развития страны: «Избранная Рада » и опричнина 17.93 KB
  Внутренняя и внешняя политика Ивана IV. Царствование Ивана Грозного принято условно делить на две части сильно отличающиеся друг от друга по внутренней политике. Это знаменовало формирование на Руси нового типа традиционного общества сословнопредставительной монархии Постоянным же совещательным органом при царе служила еще со времен Ивана III Боярская дума состоявшая из бояр. Первый Земский собор орган сословного представительства обеспечивающий связь центра и мест речь Ивана IV с лобного места: осуждение неправильного боярского...
28782. Смута: социальная катастрофа или время альтернатив? Причины и последствия смутного времени. Начало династии Романовых 18.58 KB
  Смутное время началось после смерти Федора Ивановича последнего царя из рода Рюрика 6 января 1598 г. Русская армия в это время готовилась выйти на помощь Смоленску который с сентября 1609 года был осаждён войсками польского короля Сигизмунда III. Поляки и запорожцы овладели городами северской земли; население Стародуба и Почепа полностью погибло во время вражеского штурма; Чернигов и НовгородСеверский сдались.
28783. Понятие модернизации, ее виды и циклы. Особенности петровской модернизации 14.86 KB
  Первым этапом такой модернизации в России стали реформы Петра I Великого Основными предпосылками реформ были: 1 тупик развития 2 необходимость выхода к морям для развития экономики. Именно с этой даты ведется отсчет истории России как великой державы. Превращение России в великую и морскую державу символизировало принятие Петром Великим наследственного императорского титула.
28784. Реформы Петра I. Каково соотношение модернизационных и традиционных начал в политике Петра 13.47 KB
  Каково соотношение модернизационных и традиционных начал в политике Петра Модернизация в России догоняющая.