24.12.2014 Views

объектно-ориентированный подход к спецификации модели ...

объектно-ориентированный подход к спецификации модели ...

объектно-ориентированный подход к спецификации модели ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

© 2012 г. Г.А. ОПАРИН, д-р техн. нау<strong>к</strong><br />

А.Г. ФЕОКТИСТОВ, <strong>к</strong>анд. техн. нау<strong>к</strong><br />

Э.К. ВАРТАНЯН<br />

(Институт динами<strong>к</strong>и систем и теории управления Сибирс<strong>к</strong>ого отделения<br />

Российс<strong>к</strong>ой а<strong>к</strong>адемии нау<strong>к</strong>, Ир<strong>к</strong>утс<strong>к</strong>)<br />

ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К СПЕЦИФИКАЦИИ<br />

МОДЕЛИ ИНТЕГРИРОВАННОЙ КЛАСТЕРНОЙ СИСТЕМЫ<br />

Рассматривается <strong>подход</strong> <strong>к</strong> специфи<strong>к</strong>ации объе<strong>к</strong>тных моделей <strong>к</strong>ластерных<br />

проблемно-ориентированных распределенных вычислительных сред.<br />

Данный <strong>подход</strong> базируется на <strong>объе<strong>к</strong>тно</strong>-ориентированной <strong>модели</strong> данных.<br />

AN OBJECT-ORIENTED APPROACH TO SPECIFICATION OF A<br />

MODEL OF THE INTEGRATED CLUSTER SYSTEM / G.A. Oparin, A.G.<br />

Feoktistov, E.K. Vartanyan (Institute for System Dynamics and Control Theory of<br />

Siberian Branch of Russian Academy of Sciences, Lermontov str., 134, Post Box<br />

292 664033, Irkutsk, Russia, E-mail: e.vartanyan@mail.ru). An approach to<br />

specification of object models of cluster problem-oriented distributed computing<br />

system is considered. This approach based on an object-oriented data model.<br />

1. Введение<br />

В настоящее время важным и пра<strong>к</strong>тичес<strong>к</strong>и значимым направлением научных<br />

исследований в области высо<strong>к</strong>опроизводительных вычислений является организация<br />

проблемно-ориентированных распределенных вычислительных систем (РВС) различного<br />

назначения на основе Grid-технологий [1]. Сложность та<strong>к</strong>их систем обуславливается их<br />

динамичностью и стохастичностью, наличием большого числа объе<strong>к</strong>тов различной<br />

природы и связей между ними, распределенностью этих объе<strong>к</strong>тов и избыточностью<br />

информационно-вычислительных ресурсов. В частности, <strong>к</strong>ластерные РВС<br />

хара<strong>к</strong>теризуются следующими особенностями:<br />

в <strong>к</strong>ачестве узлов системы выступают вычислительные <strong>к</strong>ластеры;<br />

<strong>к</strong>ластеры организуются на базе <strong>к</strong>а<strong>к</strong> выделенных, та<strong>к</strong> и невыделенных<br />

вычислительных машин, и, следовательно, существенно различаются по степени<br />

надежности своих вычислительных ресурсов;<br />

на разных уровнях интеграции системы существуют различные <strong>к</strong>атегории<br />

пользователей, в их числе пользователи, нуждающиеся в высо<strong>к</strong>оуровневых<br />

средствах организации вычислительного процесса решения задачи;<br />

вычислительные <strong>к</strong>ластеры используются пользователями системы совместно с<br />

владельцами этих <strong>к</strong>ластеров;<br />

задание пользователя представляет собой специфи<strong>к</strong>ацию процесса решения задач,<br />

содержащую информацию о требуемых вычислительных ресурсах, исполняемых<br />

317


при<strong>к</strong>ладных программах, входных/выходных данных, а та<strong>к</strong>же другие необходимые<br />

сведения;<br />

множество заданий пользователей рассматривается с точ<strong>к</strong>и зрения теории очередей<br />

и представляется в виде сово<strong>к</strong>упности пото<strong>к</strong>ов заданий с приоритетами;<br />

пото<strong>к</strong> заданий хара<strong>к</strong>теризуется следующими свойствами: динамичностью,<br />

стохастичностью, неоднородностью, отсутствием обратной связи,<br />

неординарностью, стационарностью;<br />

свободных ресурсов системы недостаточно для одновременного обслуживания<br />

всех заданий, находящихся в очередях;<br />

в рам<strong>к</strong>ах системы фун<strong>к</strong>ционируют распределенные проблемно-ориентированные<br />

программные <strong>к</strong>омпле<strong>к</strong>сы, размещенные в ее узлах;<br />

в общем случае в системе имеется программно-аппаратная вычислительная<br />

избыточность (программа может быть размещена и выполнена в разных узлах<br />

системы, а одни и те же вычисления могут быть произведены с помощью<br />

различных программ);<br />

в системе нет единой полити<strong>к</strong>и администрирования вычислительных <strong>к</strong>ластеров, на<br />

<strong>к</strong>ластерах применяются различные принципы и механизмы обработ<strong>к</strong>и пото<strong>к</strong>ов<br />

заданий различных типов.<br />

Для эффе<strong>к</strong>тивного использования РВС та<strong>к</strong>ого рода требуются развитые средства<br />

описания, хранения, обработ<strong>к</strong>и и модифи<strong>к</strong>ации знаний о ее инфрастру<strong>к</strong>туре, а та<strong>к</strong>же о<br />

процессах планирования и проведения вычислений. Известные <strong>подход</strong>ы <strong>к</strong> описанию и<br />

применению моделей РВС достаточно разнообразны (см., например, [2-5]) и не решают в<br />

полной мере вышеперечисленные проблемы.<br />

В до<strong>к</strong>ладе рассматривается <strong>подход</strong> <strong>к</strong> специфи<strong>к</strong>ации объе<strong>к</strong>тных моделей <strong>к</strong>ластерных<br />

проблемно-ориентированных РВС [6]. Обсуждаются аспе<strong>к</strong>ты реализации базы знаний для<br />

э<strong>к</strong>спериментальной интегрированной <strong>к</strong>ластерной системы (ИнКС) ИДСТУ СО РАН.<br />

2. Представление знаний<br />

В <strong>к</strong>ачестве <strong>модели</strong> РВС используется <strong>объе<strong>к</strong>тно</strong>-ориентированная модель данных,<br />

обладающая рядом важных свойств, необходимых для представления знаний о РВС. В<br />

частности, данная модель: позволяет работать со сложностру<strong>к</strong>турированными данными,<br />

отражать их природу и связи между ними; <strong>модели</strong>рует многомерную стру<strong>к</strong>туру данных, с<br />

<strong>к</strong>оторой в дальнейшем приложение может работать напрямую (доступ, поис<strong>к</strong> или<br />

изменение данных), что увеличивает производительность системы по отношению <strong>к</strong><br />

реляционной <strong>модели</strong>; обладает гиб<strong>к</strong>ими средствами модифи<strong>к</strong>ации и развития;<br />

поддерживает <strong>к</strong>омпле<strong>к</strong>сирование по данным (представление объе<strong>к</strong>тов РВС в<br />

универсальном формате, позволяющем работать с ними различным предметноориентированным<br />

программным <strong>к</strong>омпле<strong>к</strong>сам). База знаний (БЗ) РВС, реализованная на<br />

основе та<strong>к</strong>ой <strong>модели</strong>, обеспечивает целостность и безопасность информации в процессе<br />

извлечения объе<strong>к</strong>тов из БЗ для совместного с другими пользователями доступа <strong>к</strong> ним и<br />

облегчает работу с <strong>объе<strong>к</strong>тно</strong>-ориентированными приложениями. Перечислим основные<br />

хара<strong>к</strong>теристи<strong>к</strong>и <strong>объе<strong>к</strong>тно</strong>й <strong>модели</strong> РВС:<br />

− основным понятием в <strong>модели</strong> является объе<strong>к</strong>т;<br />

− полная идентифи<strong>к</strong>ация объе<strong>к</strong>та (без привяз<strong>к</strong>и <strong>к</strong> <strong>к</strong>он<strong>к</strong>ретной БЗ) состоит из имени<br />

объе<strong>к</strong>та и имени его типа;<br />

− объе<strong>к</strong>т состоит из набора полей, задаваемых <strong>к</strong>лассом объе<strong>к</strong>та;<br />

− в <strong>к</strong>ачестве поля может выступать значение <strong>к</strong>а<strong>к</strong>ого-либо типа (например, стро<strong>к</strong>а,<br />

число, ссыл<strong>к</strong>а на объе<strong>к</strong>т определенного <strong>к</strong>ласса) или символ неопределенности;<br />

318


− <strong>к</strong>аждому <strong>к</strong>лассу соответствует множество его объе<strong>к</strong>тов и списо<strong>к</strong> его полей;<br />

− ссыл<strong>к</strong>и на объе<strong>к</strong>ты являются значениями специального типа, они служат для<br />

доступа <strong>к</strong> объе<strong>к</strong>там, на <strong>к</strong>оторые ссылаются;<br />

− ссыл<strong>к</strong>и создаются одновременно с созданием объе<strong>к</strong>тов, на <strong>к</strong>оторые они<br />

впоследствии ссылаются;<br />

− различаются два вида ссыло<strong>к</strong> на объе<strong>к</strong>т: простые ссыл<strong>к</strong>и, у<strong>к</strong>азывающие на один<br />

объе<strong>к</strong>т, и та<strong>к</strong> называемые множественные ссыл<strong>к</strong>и, способные у<strong>к</strong>азывать сразу на<br />

нес<strong>к</strong>оль<strong>к</strong>о объе<strong>к</strong>тов;<br />

− внешнее значение ссыл<strong>к</strong>и представляется <strong>к</strong>а<strong>к</strong> имя (или имена) у<strong>к</strong>азываемого<br />

объе<strong>к</strong>та (или объе<strong>к</strong>тов);<br />

− с помощью аппарата ссыло<strong>к</strong> реализуются следующие виды отношений между<br />

объе<strong>к</strong>тами: «один-<strong>к</strong>-одному», «многие-<strong>к</strong>-одному», «один-<strong>к</strong>о-многим» и «многие<strong>к</strong>о-многим»;<br />

− специальное поле в объе<strong>к</strong>те отводится для хранения имени объе<strong>к</strong>та;<br />

− множественные виды отношений (все из перечисленных выше, <strong>к</strong>роме «один-<strong>к</strong>одному»)<br />

строятся на основе спис<strong>к</strong>ов;<br />

− спис<strong>к</strong>и являются объе<strong>к</strong>тами специального <strong>к</strong>ласса, они служат для объединения<br />

сово<strong>к</strong>упности объе<strong>к</strong>тов и получения возможности ссыл<strong>к</strong>и <strong>к</strong>о всем этим объе<strong>к</strong>там,<br />

<strong>к</strong>а<strong>к</strong> <strong>к</strong> единому целому;<br />

− спис<strong>к</strong>и обладают специальным полем, в <strong>к</strong>отором хранится длина спис<strong>к</strong>а;<br />

− возможные изменения <strong>модели</strong> данных определяются фи<strong>к</strong>сированным набором<br />

базовых операторов;<br />

− базовые операторы могут быть объединены в составной оператор, причем один<br />

составной оператор может быть частью другого составного оператора;<br />

− типы и не<strong>к</strong>оторые <strong>к</strong>лассы являются изначально встроенными в модель данных;<br />

− смысловая нагруз<strong>к</strong>а <strong>к</strong>ласса объе<strong>к</strong>тов находит свое отражение через у<strong>к</strong>азание<br />

возможности участия объе<strong>к</strong>тов данного <strong>к</strong>ласса в <strong>к</strong>ачестве параметров<br />

определенных операторов (базовых или составных) с пояснением роли их участия<br />

(входные, выходные);<br />

− знания предметного специалиста об условиях применения объе<strong>к</strong>та того или иного<br />

<strong>к</strong>ласса в процессе вычислений представляются в виде набора проду<strong>к</strong>ций, <strong>к</strong>оторые<br />

та<strong>к</strong> же являются объе<strong>к</strong>тами определенного <strong>к</strong>ласса <strong>модели</strong>.<br />

Модель РВС в<strong>к</strong>лючает в себя следующие базовые элементы: множество базовых<br />

типов данных T , множество <strong>к</strong>лассов объе<strong>к</strong>тов <strong>модели</strong> РВС C , множество атрибутов A и<br />

множество значений атрибутов V . Класс представляет собой сово<strong>к</strong>упность объе<strong>к</strong>тов,<br />

одина<strong>к</strong>овых с точ<strong>к</strong>и зрения решения решаемой задачи. Каждый <strong>к</strong>ласс обладает набором<br />

хара<strong>к</strong>теристи<strong>к</strong>, называемых атрибутами. Тип – отличительная особенность атрибута.<br />

Данные, связанные с атрибутом и необходимые для решения задачи, являются значением<br />

этого атрибута. Э<strong>к</strong>земпляр <strong>к</strong>ласса (объе<strong>к</strong>т) – элемент не<strong>к</strong>оторого <strong>к</strong>ласса. Связи между<br />

элементами множеств T , C , A и V заданы отношениями R AT AT<br />

, R CA C A и<br />

R AV AV<br />

. Через R обозначим множество всех ограничений – стандартных условий<br />

обеспечения целостности данных, та<strong>к</strong>их <strong>к</strong>а<strong>к</strong> условия бло<strong>к</strong>иров<strong>к</strong>и дублирования и<br />

уничтожения элементов <strong>модели</strong>, а та<strong>к</strong>же ограничений, отражающих специфи<strong>к</strong>у<br />

предметной области – свойства и семанти<strong>к</strong>у ее объе<strong>к</strong>тов и взаимосвязей между ними. В<br />

их числе та<strong>к</strong>ие отношения, <strong>к</strong>а<strong>к</strong> иерархия модулей, формальные параметры модуля, тело<br />

модуля, модуль задачи, составные параметры, массивы-границы, призна<strong>к</strong>и, динамичес<strong>к</strong>ий<br />

параметр, составные операции, параметры операции, модуль операции, операция задачи,<br />

приоритет и условие проду<strong>к</strong>ции, тело проду<strong>к</strong>ции, операции процессора, параметры<br />

319


процессора, проду<strong>к</strong>ции процессора, цепоч<strong>к</strong>а операций, параметры задачи, постанов<strong>к</strong>и<br />

задач процессора, иерархия задач, параметры уравнения, уравнения для операции,<br />

уравнения для проду<strong>к</strong>ции, иерархия уравнений, варианты значений параметров и другие.<br />

3. Неформальная постанов<strong>к</strong>а задачи<br />

Для представления знаний об интегрированной <strong>к</strong>ластерной системе и их<br />

использования различными предметно-ориентированными программными <strong>к</strong>омпле<strong>к</strong>сами,<br />

возни<strong>к</strong>ает необходимость разработ<strong>к</strong>и средств специфи<strong>к</strong>ации <strong>объе<strong>к</strong>тно</strong>-ориентированной<br />

<strong>модели</strong> этой системы и представления ее в не<strong>к</strong>отором унифицированном и<br />

стандартизированном формате.<br />

4. Язы<strong>к</strong> специфи<strong>к</strong>ации <strong>модели</strong><br />

Рассматриваемый язы<strong>к</strong> специфи<strong>к</strong>ации <strong>модели</strong> – М-язы<strong>к</strong>, относится <strong>к</strong> язы<strong>к</strong>ам описания<br />

онтологий [7], основанных на вычислительных моделях (частном случае семантичес<strong>к</strong>их<br />

сетей). М-язы<strong>к</strong> состоит из набора базисных символов , из <strong>к</strong>оторых строится описание<br />

<strong>модели</strong> РВС, и множества операторов . Набор базисных символов М-язы<strong>к</strong>а в<strong>к</strong>лючает<br />

символы входного алфавита, <strong>к</strong>онстанты, имена операторов, специальные символы.<br />

Операторы специфицируют операции создания, изменения, удаления и инициализации<br />

элементов множеств C , A и V , а та<strong>к</strong>же отношений между ними. В <strong>к</strong>ачестве операндов<br />

используются элементы из объединения множеств C , A и V . Контроль выполнения<br />

операторов осуществляется путем задания множества ограничений R на области<br />

допустимых значений операндов этих операторов.<br />

Та<strong>к</strong>им образом, описание <strong>модели</strong> РВС на М-язы<strong>к</strong>е представляет собой<br />

последовательность операторов, разделенных между собой специальными символами. На<br />

рис. 1 приведен пример специфи<strong>к</strong>ации вычислительных и проду<strong>к</strong>ционных знаний. В<br />

<strong>к</strong>ачестве вычислительных знаний выступают параметры z<br />

1<br />

, z<br />

2<br />

, z<br />

3<br />

, z<br />

4<br />

, z<br />

5<br />

, z<br />

6<br />

и операции<br />

f<br />

1<br />

, f<br />

2<br />

, f<br />

3<br />

. Проду<strong>к</strong>ционные знания представлены <strong>к</strong>онстру<strong>к</strong>цией вида: IF z<br />

6<br />

THEN f<br />

1<br />

.<br />

Данная проду<strong>к</strong>ция задает правило выполнения операции f<br />

1<br />

.<br />

Рис. 1. Фрагмент описания <strong>модели</strong> РВС<br />

320


Синта<strong>к</strong>сис и семанти<strong>к</strong>а описания <strong>модели</strong> РВС на М-язы<strong>к</strong>е проверяются в процессе<br />

трансляции.<br />

5. Язы<strong>к</strong> задания ограничений целостности <strong>модели</strong><br />

Ограничения формируются разработчи<strong>к</strong>ом с помощью специального<br />

инструментального <strong>к</strong>омпонента транслятора в интера<strong>к</strong>тивном режиме. Для задания<br />

ограничений используется диалоговый Д-язы<strong>к</strong>. Данный язы<strong>к</strong> в<strong>к</strong>лючает следующие<br />

основные формы: форму задания диапазона допустимых значений атрибута; форму<br />

задания <strong>к</strong>ардинальных чисел двух множеств, хара<strong>к</strong>теризующих число элементов одного<br />

множества, связанных с элементами другого множества и наоборот; форму задания<br />

требования принадлежности элемента определенному множеству; форма задания<br />

требования на отношения двух множеств. Каждое ограничение имеет уни<strong>к</strong>альный<br />

идентифи<strong>к</strong>атор. Ограничение на значение операнда может быть сопоставлено<br />

определенному оператору <br />

. В этом случае оно будет а<strong>к</strong>тивизировано<br />

применительно толь<strong>к</strong>о <strong>к</strong> оператору . В противном случае ограничение будет<br />

распространяться на все операторы, в спис<strong>к</strong>ах операндов <strong>к</strong>оторых есть данный операнд.<br />

Выполнение оператора<br />

6. Семанти<strong>к</strong>а язы<strong>к</strong>овых средств<br />

<br />

обуславливает переход из не<strong>к</strong>оторого те<strong>к</strong>ущего<br />

AT CA AV<br />

состояния <strong>модели</strong>, определяемое стру<strong>к</strong>турой s T, C,<br />

A,<br />

V , R , R , R , в новое<br />

результирующее состояние s ' . Та<strong>к</strong>им образом, последовательность выполнения<br />

операторов задает <strong>к</strong>онечную последовательность переходов из начального состояния<br />

<strong>модели</strong> в <strong>к</strong>онечное. Динами<strong>к</strong>у изменения состояний <strong>модели</strong> можно определить в виде<br />

графа переходов G S, L,<br />

Q,<br />

S<br />

0<br />

, где S – множество состояний <strong>модели</strong>, L –<br />

множество формальных условий выполнимости операторов (условий выполнимости<br />

ограничений для <strong>к</strong>аждого из их операндов), Q S S – отношение переходов, S<br />

0<br />

–<br />

множество начальных состояний <strong>модели</strong>. Последовательность переходов считается<br />

<strong>к</strong>орре<strong>к</strong>тной, если из выбранного начального состояния s0 S<br />

0<br />

достижимо требуемое<br />

целевое состояние.<br />

7. Технология создания базы знаний<br />

В <strong>к</strong>ачестве основы базы знаний ИнКС используется <strong>объе<strong>к</strong>тно</strong>-ориентированная база<br />

данных NeoDatis [8], дополненная управляющей надстрой<strong>к</strong>ой – мультиагентной системой<br />

планирования и распределения ресурсов [9]. Хара<strong>к</strong>теристи<strong>к</strong>и базы данных NeoDatis<br />

удовлетворяют основным требованиям стандарта ODMG (Object Database Management<br />

Group) [10], и, тем самым, обеспечивают возможность ее интеграции с различными<br />

предметно-ориентированными <strong>к</strong>омпле<strong>к</strong>сами, фун<strong>к</strong>ционирующими в ИнКС.<br />

С помощью транслятора те<strong>к</strong>ст описания <strong>модели</strong> ИнКС на М-язы<strong>к</strong>е и соответствующие<br />

ограничения <strong>модели</strong> на Д-язы<strong>к</strong>е преобразуются в те<strong>к</strong>ст описания на язы<strong>к</strong>е Java, <strong>к</strong>оторый с<br />

помощью Java-<strong>к</strong>омпилятора транслируется в байт-<strong>к</strong>од. Для <strong>к</strong>омпиляции те<strong>к</strong>ста описания в<br />

байт-<strong>к</strong>од наряду со стандартной библиоте<strong>к</strong>ой <strong>к</strong>лассов JDK (Java Development Kit)<br />

используется дополнительная библиоте<strong>к</strong>а <strong>к</strong>лассов, обеспечивающая работу с базой<br />

данных NeoDatis. При выполнении байт-<strong>к</strong>ода Java-интерпретатором создается база<br />

данных, <strong>к</strong>оторая вместе с подсистемой логичес<strong>к</strong>ого вывода мультиагентной системы<br />

321


формирует базу знаний ИнКС. Схематично технология создания базы знаний ИнКС<br />

представлена на рис. 2.<br />

8. Примеры решаемых задач<br />

В <strong>к</strong>ачестве примеров применения представленных в до<strong>к</strong>ладе результатов ниже<br />

рассматривается ряд пра<strong>к</strong>тичес<strong>к</strong>и важных задач.<br />

Компле<strong>к</strong>сное <strong>модели</strong>рование интегрированной <strong>к</strong>ластерной системы.<br />

Автоматизированный процесс <strong>к</strong>омпле<strong>к</strong>сного <strong>модели</strong>рования интегрированной <strong>к</strong>ластерной<br />

системы и использования его результатов в<strong>к</strong>лючает следующие основные этапы:<br />

построение агрегированной <strong>к</strong>онцептуальной <strong>модели</strong> <strong>к</strong>ластерной системы; создание на ее<br />

основе имитационной <strong>модели</strong> интегрированной <strong>к</strong>ластерной системы; проведение<br />

многовариантных имитационных э<strong>к</strong>спериментов в распределенной вычислительной<br />

среде; обобщение и анализ результатов имитационного <strong>модели</strong>рования; провер<strong>к</strong>у<br />

результатов имитационного <strong>модели</strong>рования путем проведения полунатурных испытаний<br />

интегрированной <strong>к</strong>ластерной системы; настрой<strong>к</strong>у <strong>к</strong>онфигурационных параметров систем<br />

управления распределенными вычислениями (в том числе и интелле<strong>к</strong>туальных агентов) в<br />

интегрированной <strong>к</strong>ластерной системе, с целью повышения по<strong>к</strong>азателей надежности этой<br />

системы. Использование результатов испытаний и оцен<strong>к</strong>и надежности интегрированной<br />

<strong>к</strong>ластерной системы в процессе управления распределенными вычислениями [9, 11, 12],<br />

позволяет существенно уменьшить та<strong>к</strong>ие по<strong>к</strong>азатели ее фун<strong>к</strong>ционирования, <strong>к</strong>а<strong>к</strong> число<br />

незавершенных (из-за сбоя ВУ) заданий, число рестартов программ, общее время<br />

выполнения набора взаимосвязанных заданий, а та<strong>к</strong>же повысить <strong>к</strong>оэффициент полезной<br />

загруз<strong>к</strong>и ресурсов системы<br />

Рис. 2. Схема создания базы знаний ИнКС<br />

Классифи<strong>к</strong>ация заданий. Суть <strong>к</strong>лассифи<strong>к</strong>ации заданий за<strong>к</strong>лючается в их разбиении на<br />

<strong>к</strong>лассы в зависимости от вычислительных хара<strong>к</strong>теристи<strong>к</strong> этих заданий. С <strong>к</strong>аждым<br />

<strong>к</strong>лассом заданий связываются вычислительные ресурсы интегрированной <strong>к</strong>ластерной<br />

системы, наиболее <strong>подход</strong>ящие для выполнения заданий данного <strong>к</strong>ласса. Применение<br />

<strong>к</strong>лассифи<strong>к</strong>атора заданий в процессе распределения заданий совместно с<br />

322


метапланировщи<strong>к</strong>ом заданий интегрированной <strong>к</strong>ластерной системы ИДСТУ СО РАН<br />

позволило повысить <strong>к</strong>оэффициент полезного использования узлов системы<br />

приблизительно на 4-4,5 %. Использование <strong>к</strong>лассифи<strong>к</strong>атора заданий в процессе<br />

распределения многовариантных заданий в ряде случаев обеспечило та<strong>к</strong> же уменьшение<br />

время их выполнения.<br />

Компле<strong>к</strong>сирование па<strong>к</strong>етов при<strong>к</strong>ладных программ. Компле<strong>к</strong>сирование по данным<br />

обеспечивает возможность использования в процессе создания нового па<strong>к</strong>ета фрагментов<br />

описания предметных областей, фун<strong>к</strong>циональных программных модулей, исходных<br />

данных и результатов вычислений, имеющихся в других па<strong>к</strong>етах. Компле<strong>к</strong>сирование<br />

осуществляется по данным, относящимся <strong>к</strong> объе<strong>к</strong>там, созданным на базе ядра <strong>модели</strong>. В<br />

<strong>к</strong>ачестве примера модно привести <strong>к</strong>омпле<strong>к</strong>сирование двух па<strong>к</strong>етов для <strong>модели</strong>рования<br />

торгово-с<strong>к</strong>ладс<strong>к</strong>их <strong>к</strong>омпле<strong>к</strong>сов [13]: па<strong>к</strong>ета прогнозирования процесса сдачи с<strong>к</strong>ладс<strong>к</strong>их<br />

объе<strong>к</strong>тов в аренду R-SIM (Rent-SIMulation) и па<strong>к</strong>ета анализа фондоем<strong>к</strong>ости торговос<strong>к</strong>ладс<strong>к</strong>их<br />

услуг Warehous Modelling Package (WMP).<br />

9. За<strong>к</strong>лючение<br />

В целом в работе представлены результаты исследований, базирующихся на<br />

на<strong>к</strong>опленных в ИДСТУ СО РАН знаний в области создания и применения<br />

вычислительных моделей для решения фундаментальных и при<strong>к</strong>ладных задач. В рам<strong>к</strong>ах<br />

рассмотренного в до<strong>к</strong>ладе <strong>подход</strong>а обеспечивается возможность <strong>к</strong>онструировать<br />

предметно-ориентированные <strong>модели</strong> вычислений для интегрированных <strong>к</strong>ластерных<br />

систем, обеспечивать от<strong>к</strong>рытый, унифицированный доступ <strong>к</strong> этим моделям из различных<br />

приложений, осуществлять интеграцию разрабатываемых инструментальных средств и<br />

создаваемых с их помощью предметно-ориентированных программных <strong>к</strong>омпле<strong>к</strong>сов на<br />

основе единой <strong>модели</strong> вычислений. Та<strong>к</strong>ие <strong>модели</strong> обеспечивают детализированное<br />

описание инфрастру<strong>к</strong>туры разнородных распределенных вычислительных сред, его<br />

расширение и модифи<strong>к</strong>ацию. Тем самым, предоставляется возможность эффе<strong>к</strong>тивного<br />

использования ресурсов этих сред в процессе решения сложных научных и при<strong>к</strong>ладных<br />

задач.<br />

СПИСОК ЛИТЕРАТУРЫ<br />

1. Baker M., Buyya R., Laforenza D. Grids and Grid Technologies for Wide-Area Distributed<br />

Computing // Software: Practice and Experience. – 2002. – V. 32. – № 15. – P. 1437-1466.<br />

2. Chapin S.J., Cirne W., Feitelson D.G. and al. Benchmarks and Standards for the Evaluation<br />

of Parallel Job Schedulers // Job Scheduling Strategies for Parallel Processing. Springer-<br />

Verlag, Lect. Notes Comput. Sci. 1999. V. 1659. P. 66-89.<br />

3. Топор<strong>к</strong>ов В.В. Модели распределенных вычислений. – М.: Физматлит, 2004. – 320 с.<br />

4. Самоваров О.И., Кузюрин Н.Н., Грушин Д.А., Аветисян А.И., Михайлов Г.М., Рогов<br />

Ю.П. Проблемы <strong>модели</strong>рования GRID-систем и их реализации // Научный сервис в<br />

сети Интернет: решение больших задач: Тр. Всерос. науч. <strong>к</strong>онф. – М.: Изд-во МГУ,<br />

2008. – С. 83-88.<br />

5. Vidyarthi D.P., Sarker B.K., Tripathi A.K., Yang L.T. Scheduling in Distributed Computing<br />

Systems: Analysis, Design and Models. Springer Science+Business Media, 2009. – 295 p.<br />

6. Опарин Г.А., Фео<strong>к</strong>тистов А.Г. Модели и инструментальные средства организации<br />

распределенных вычислений // Параллельные вычисления и задачи управления: Тр. IV<br />

Междунар. <strong>к</strong>онф. – М.: Изд-во ИПУ РАН, 2008. – C. 1126-1135.<br />

7. Лапшин В.А. Онтологии в <strong>к</strong>омпьютерных системах. – М.: Научный мир 2010. – 224 с.<br />

323


8. NeoDatis [Эле<strong>к</strong>тронный ресурс] // NeoDatis – сайт. – URL: http://neodatis.wikidot.com.<br />

(Дата обращения: 14.09.2012).<br />

9. Быч<strong>к</strong>ов И.В., Опарин Г.А., Фео<strong>к</strong>тистов А.Г., Корсу<strong>к</strong>ов А.С. Децентрализованное<br />

управление пото<strong>к</strong>ами заданий в интегрированной <strong>к</strong>ластерной системе // Вестни<strong>к</strong> НГУ.<br />

Серия: Информационные технологии. – 2011. – Т. 9. – Вып. 2. – С. 42-54.<br />

10. Джордан Д. Обработ<strong>к</strong>а объе<strong>к</strong>тных баз данных в С++. Программирование по стандарту<br />

ODMG. – М.: Вильямс. – 2001. – 384 с.<br />

11. Быч<strong>к</strong>ов И.В., Корсу<strong>к</strong>ов А.С., Опарин Г.А., Фео<strong>к</strong>тистов А.Г. Инструментальный<br />

<strong>к</strong>омпле<strong>к</strong>с для организации гетерогенных распределенных вычислительных сред //<br />

Информационные технологии и вычислительные системы. 2010. № 1. С. 45-54.<br />

12. Корсу<strong>к</strong>ов А.С. Инструментальные средства полунатурного <strong>модели</strong>рования<br />

распределенных вычислительных систем // Современные технологии. Системный<br />

анализ. Моделирование. 2011. № 3 (31). С. 105-110.<br />

13. Башарина О.Ю., Горс<strong>к</strong>ий С.А. Па<strong>к</strong>ет <strong>модели</strong>рования с<strong>к</strong>ладс<strong>к</strong>ой логисти<strong>к</strong>и: разработ<strong>к</strong>а<br />

и <strong>к</strong>омпле<strong>к</strong>сирование в Orlando Tools // Программные проду<strong>к</strong>ты и системы. – 2012. – №<br />

1. – С. 89-91.<br />

324

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!