Святный В.А., Цайтц М., Аноприенко А.Я.

РЕАЛИЗАЦИЯ СИСТЕМЫ МОДЕЛИРОВАНИЯ ДИНАМИЧЕСКИХ ПРОЦЕССОВ НА ПАРАЛЛЕЛЬНОЙ ЭВМ В СРЕДЕ СЕТЕВОГО ГРАФИЧЕСКОГО ИНТЕРФЕЙСА


  • Три этапа в развитии инженерного и научного программного обеспечения
  • Система моделирования ISRSIM
  • Реализация ISRSIM в среде сетевого графического интерфейса XWindows
  • Заключение
  • Литература

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

    К настоящему времени существует целый ряд программных систем, ориентированных на моделирование динамических процессов и работающих на персональных ЭВМ в среде MS-DOS. К их числу относится и разработанная под руководством профессора М.Цайтца в институте системной динамики и управляющей техники (ISR) Штутгартского университета блочно-ориентированная система ISRSIM, которая была выбрана в качестве прототипа для реализации моделирующей среды на параллельной ЭВМ Symmetry фирмы Sequent, работающей под управлением UNIX-совместимой операционной системы DYNIХ с сетевым графическим интерфейсом X-Windows.
    Основная часть работы была выполнена в институте параллельных и распределенных суперЭВМ (IPVR), в связи с чем авторы выражают свою признательность директору IPVR профессору А.Ройтеру за предоставленное оборудование и оказанное содействие.  В целом необходимо отметить, что представленные в статье результаты явились одним из итогов развивающегося на протяжении ряда лет научного сотрудничества между институтами Штутгартского университета и факультетом вычислительной техники Донецкого политехнического института.
     

    Три этапа в развитии инженерного и научного программного обеспечения


    Первый этап: 60-е и 70-е годы.
    Начальной точкой отсчета в развитии инженерного и научного программного обеспечения можно считать появление в конце 50 -х годов языка Фортран, определившего на последующие два десятилетия практически неизменный, несмотря на бурное развитие аппаратных средств, облик прикладных программных разработок.  Последние, естественно, также с годами подвергались изменениям, возрастало постепенно их количество и качество, но практически неизменной оставалась суть: организация в виде библиотеки подпрограмм и ориентация на текстовый диалог. Характерным для этого этапа стало также появление разного рода Фортран-подобных специализированных языков, среди которых одними из наиболее известных являются языки моделирования ACSL и GPSS, на многие годы определившие “текстовый стиль” в области моделирования непрерывных и дискретных систем соответственно.

    Второй этап: 80-е годы.
    Только в 80-х годах, в основном благодаря феномену персональных ЭВМ и достижениям в области интерактивной машинной графики, начались широкомасштабные качественные изменения в развитии программного обеспечения, суть которых можно свести к следующему: во-первых, переход от исключительно текстового взаимодействия к развитым пользовательским интерфейсам, и, во-вторых, переход от простой “подпрограммной организации” к интегрированным системам. Одними из наиболее характерных для этого этапа являются программные продукты фирмы Borland International. Основным инструментом и “носителем” для программного обеспечения второго этапа являются персональные ЭВМ, качество которых определяется в основном двумя факторами: характеристиками пользовательского интерфейса и вычислительной мощностью, отношение пользователей и разработчиков программного обеспечения к которым достаточно точно определяется фразой “чем больше, тем лучше”. Однако, если первое в большинстве случаев используется с максимальной эффективностью, то вычислительная мощность основную часть времени остается задействованной лишь частично. С развитием вычислительных сетей появляется возможность для устранения этого противоречия разделением указанных факторов: реализация качественного пользовательского интерфейса в рабочих станциях, и концентрация вычислительной мощности в т.н. сетевых серверах.

    Третий этап: 90-е годы.
    Основу аппаратных средств вычислительной техники следующего десятилетия вероятнее всего составят мощные графические рабочие станции и высокопроизводительные сетевые серверы, реализованные в виде ЭВМ с параллельной архитектурой [1, 2]. Учитывая, что разрабатываемое до настоящего времени программное обеспечение было ориентировано в основном на классическую однопроцессорную архитектуру, на новом этапе потребуется очередной качественный скачок в развитии программного обеспечения, призванный преодолеть разрыв между возможностями новых архитектур и консерватизмом последовательного программирования.  Предполагается также, что новое программное обеспечение будет отличаться ориентацией на сетевое использование, стандартизированные графические интерфейсы и реализацию принципов искусственного интеллекта.
     

    Система моделирования ISRSIM

    Первые два из перечисленных выше этапов система моделирования ISRSIM в своем развитии уже практически прошла. Представленные в данной статье результаты можно рассматривать как первый шаг ее эволюции на третьем этапе.
    Выбор системы ISRSIM в качестве прототипа для разработки программного обеспечения, обеспечивающего моделирование динамических процессов в среде сетевого графического интерфейса на параллельных ЭВМ, был обусловлен следующими факторами:
  • ISRSIM - блочно-ориентированная, сравнительно компактная и функционально развитая система - достаточно хорошо апробирована за несколько лет эксплуатации, в т.ч. в Донецком политех-ническом институте, и продолжает развиваться в рамках Штут-гартского университета, отвечая самым современным требованиям к программному обеспечению такого класса;
  • языком реализации системы является Fortran 77, специаль-ные компиляторы которого, позволяющие параллелизацию, имеются практически для всех параллельных ЭВМ.
  • Прототипом для ISRSIM послужила моделирующая программа THTSIM, разработанная в 1981 году на языке Fortran 4 [3].  Первая версия ISRSIM была завершена в 1984 году и была ориентирована на миниЭВМ PDP11. В 1986 году разрабатывается версия для персональных ЭВМ [4], а в 1990 году - усовешенствованная версия для персональных ЭВМ с цветным экраном высокого разрешения и меню-ориентированной оболочкой пользователя.  Общий объем исходных текстов ISRSIM достигает 5 тыс. строк языка Fortran 77, при этом существенными недостатками, затруднившими работу по модификации системы, явились недостаточная структурированность программ и наличие большого числа фрагментов, написанных на Ассемблере.
     
     

    Реализация ISRSIM в среде сетевого графического интерфейса XWindows


    В качестве основной вычислительной среды использовалась параллельная ЭВМ Symmetry фирмы Sequent [7] - многопроцессорная система с общей шиной и общей памятью, отличающаяся высокой производительностью (десятки МFLOPS) при относительно небольшой стоимости. Параллельные системы с архитектурой такого типа в ближайшем будущем станут, вероятней всего, наиболее распространенными [2]. В перспективе подобная архитектура должна стать основной для параллельных систем с числом процессоров порядка нескольких десятков.
    Система Symmetry может включать от 2-х до 30-ти процессоров, каждый из которых имеет кэш-память емкостью 64 К. Объем общей памяти составляет в зависимости от комплектации от 60-ти до 240-ка Мбайт. Виртуальное адресное пространство каждого процессора достигает 256 Мбайт. В качестве элементной базы для построения процессоров используются 32-разрядные микропроцессоры Intel 80386 + 80387 (80486). Операционная система: DYNIX, совместимая с UNIX System V и поддерживающая в режимах мультипрограммирования и мультизадачности до 256-ти пользователей.
    Специфика решаемой задачи определила следующие требования к рабочей станции:

  • возможность работы с UNIX-совместимой операционной системой, т.к. данный тип ОС является основным для большинства сетей , в т.ч. система такого типа (DYNIX) реализована в параллельной системе Symmetry;
  • возможность работы с операционной системой MS DOS, т.к.  прототип - система моделирования ISRSIM - реализован именно в среде MS DOS;
  • возможность одновременной работы с указанными операционными системами с возможностью оперативного обмена файлами между ними, что весьма важно для эффективного выполнения работ по переносу ISRSIM из одной операционной среды в другую.
  • Исходя из указанных требований выбор был сделан в пользу песональной ЭВМ PS/2-70, включенной фирмой IBM в семейство средств вычислительной техники, поддерживающих новую UNIX-совместимую операционную систему AIX, объявленную в качестве основной системы для большинства ЭВМ фирмы в 90-х годах.  Как DYNIX, так и AIX поддерживают работу с сетевым графическим интерфейсом XWindows [8], ориентированным на работу с цветными растровыми графическими дисплеями и реализующим в сетевой среде концепцию “клиент - сервер”, при этом в качестве т.н. Х-клиента может быть любая прикладная программа, выполняемая на одной из ЭВМ, подключенных к сети, а в качестве Х-сервера - рабочая станция пользователя. Средства XWindows позволяют организовать на экране одной рабочей станции множество интерактивных окон, соответствующих различным ЭВМ сети.  В процессе модернизации и переноса ISRSIM кроме внесения многочисленных изменений, вызванных несовместимостью компиляторов языка Fortran, было также реализовано следующее: аппаратнозависимые библиотеки подпрограмм ISRSIM, организующие визуализацию информации, были заменены на независящие от особенностей аппаратных средств модули, использующие возможности XWindows, что позволило резко сократить объем соответствующих программных средств и обеспечить их переносимость в рамках UNIX-совместимых операционных систем.
    При работе с ISRSIM на параллельной системе были проведены эксперименты с различными вариантами параллелизации, в т.ч.:
  • на уровне автоматического распределения и запуска зада-ний при проведении комплексного исследования, например для за-данных диапазонов параметров;
  • “структурное распараллеливание”, обусловленное возмож-ностью параллельного расчета независимых фрагментов моделей, в частности, т.н. блоков с памятью - интеграторов и блоков на их базе;
  • распараллеливание в рамках циклов Do.
  • С точки зрения пользователя перенос ISRSIM в среду XWindows-Unix позволил существенно повысить эффективность работы с ней в процессе проведения исследований, что обеспечивается за счет следующих возможностей:
  • организация многооконного интерфейса, причем расположение, количество и размеры окон определяются пользователем;
  • формирование для каждого процесса моделирования отдельного окна произвольного расположения и размера, при этом учет фактических экранных размеров окон и соответствующее масштаби-рование при выводе результатов моделирования осуществляются автоматически;
  • использование дополнительных сервисных возможностей XWindows, в т.ч. наблюдение за степенью загрузки процессоров параллельной системы с помощью организации окна xload, многократное увеличение при необходимости интересующих пользователя фрагментов полученных в результате моделирования графиков.
  • Реализованная на системе Symmetry версия ISRSIM получила название “Х-версия”, чем подчеркнуто ее основное отличие от прототипа с точки зрения пользователя.
     

    Заключение

    В результате работы по модернизации и переносу в среду сетевого графического интерфейса системы моделирования ISRSIM, получена качественно новая ее версия, использующая преимущества сетевых средств, системы UNIX и графического интерфейса XWindows. На базе Х-версии проведены эксперименты по распараллеливанию вычислительных процессов на многопроцессорной параллельной системе с общей памятью Symmetry фирмы Sequent, а так-же выполнено исследование шахтной вентиляционной сети.

    Опыт проведения экспериментов по распараллеливанию и результаты исследований разработанной системы позволили сделать следующие выводы:

  • состав аппаратных и программных средств среды моделирования явился чрезвычайно удобным и эффективным для выполнения работ по разработке и отладке программных средств и проведения экспериментальных исследований, позволяющим существенно поднять производительность работы;
  • система ХWindows является мощным средством организации графического интерфейса, обеспечивающим переносимость, компактность и широкие функциональные возможности соответствующего прикладного программного обеспечения ;
  •  Х-версия ISRSIM может служить прототипом для разработки систем моделирования нового поколения, ориентированных на использование параллельных ЭВМ и реализацию развитого графического интерфейса;
  • возможность эффективного распараллеливания должна быть предусмотрена на самых ранних стадиях разработки программных средств, что должно найти отражение как в их структурной организации, так и в организации вычислительных процессов на всех уровнях.
  • Основными направлениями дальнейшей работы могут быть следующие:
  • использование Х-версии ISRSIM для проведения исследования динамических систем как на параллельных, так и на однопроцессорных ЭВМ, работающих с UNIX-подобной операционной системой и XWindows, для чего в ряде случаев потребуются некоторые доработки, связанные с особенностями конкретных версий языка Fortran;
  • разработка системы моделирования нового поколения, рассчитанной на эффективную реализацию в среде параллельных ЭВМ с различной архитектурой и содержащей по сравнению с ISRSIM ряд новых возможностей, в т.ч. иерархическую организацию структуры моделей, организацию библиотек моделей и блоков различных уровней, ориентированных на конкретные области применений, модульность системы моделирования, позволяющая легко модифицировать ее в зависимости от конкретных функциональных требований и состава аппаратных средств, и т.д.;
  • проведение исследований, направленных на разработку интегрированных программных систем с элементами искусственного интеллекта для исследовательских и обучающих целей, содержащих в качестве ядра развитую систему моделирования.
  • Литература


    1. Dyksen W.R., Gritter C.R. Elliptic Expert: an Expert System for Elliptic Partial Differential Equations. - Mathematics and Computers in Simulation, 31, 1989, 333-342.
    2. Houstis E.N., Rice J.R., Paratheodorou T.S. Parallel Ellpack: an Expert System for Parallel Processing of Partial Differential Equations. - Mathematics and Computers in Simulation, 31, 1989, 497-507.
    3. Meermann J.W. THTSIM, software for the simulation of continuous dynamic systems on small and very small computer systems. - International Journal of Modeling and Simulation, 1, 1981, 52-56.
    4. Juen G., Kramer W., Zeitz M. ISRSIM, Version 3, Simulationssystem fur dynamische Systeme, Bedienungsanleitung.  Institut fur Systemdynamik und Regelungstechnik, Universitat Stuttgart, 1986, 55.
    5. Kramer W., Pauschinger Th., RothfuB E., Zeitz M. ISRSIM, Version 5.0, Simulationssystem fur dynamische Systeme mit graphischer Bedienoberflache. Institut fur Systemdynamik und Regelungstechnik, Universitat Stuttgart, 1990, 60.
    6. Kramer W., Zeitz M. Simulation einer Hydraulischen Lageregelung mit Hilfe der Blockorientierten Simulationssprache ISRSIM. - Simulationstechnik, 1986, 170-175.
    7. Gifford P. Sequent’s Symmetry Series. - VLSI Systems Design, June, 1988, 1-13.
    8. Stumpf M. X-Window System, Version 11, Release 4 - eine Ubersicht. - Design & Elektronik, 9, 1990, 50-60.


    Святный В.А., Цайтц М., Аноприенко А.Я. Реализация системы моделирования динамических процессов на параллельной ЭВМ в среде сетевого графического интерфейса. "Вопросы радиоэлектроники", серия ""ЭВТ", вып. 2, 1991, с. 85 - 94.


     

     


    © Аноприенко А.Я.Первая инсталляция страницы: декабрь 1997 г. Основные модификации: март 1999 г., октябрь 1999 г.