Текущие Проекты

Open Modeler & Visualizer



Параллельная реализация программного обеспечения

    Разработанное программное обеспечение может использоваться на различных высокопроизводительных параллельных машинах, включая системы с массовым параллелизмом, типа PowerMANNA, персональных компьютерах, а также на кластерах рабочих станций. Мобильность программного обеспечения обеспечивается стандартным интерфейсом MPI.

    Разработанное программное обеспечение позволяет использовать два уровня параллелизма, доступных в задачах визуализации:

    • Coarse grain parallelism (распараллеливание на уровне заданий)
    • Fine grain parallelism (распределенные данные и алгоритмы)


    Рассмотрим соответствующие стратегии распараллеливания использующие общую объектно-ориентированную архитектуру программного обеспечения (объекты, данные, алгоритмы, концепции сцены).

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

    Важным сецифическим случаем является динамическая визуализация семантически эквивалентных наборов данных. Для этого случая реализован сценарий распараллеливания. Один и тот же сценарий загружается на каждый из узлов и затем периодически применяется к повторяющимся входным наборам данных.

    Другой тип распараллеливания называется распараллеливанием с распределенными данными и алгоритмами применяющийся в визуализационном программном обеспечении. Для представления распределенных параллельных научных данных и параллельных методов визуализации была реализована библиотека классов.

    Описанные стратегии распараллеливания выполнены в разработанном программном обеспечении использующем схему взаимодействия "master-slave" (ведущий-ведомый). Визуализационное программное обеспечение включает программу "master" и программу "slave", которые запускаются на разных узлах процессоров, выполняя управление и параллельную обработку соовтетственно. Программа "master", как и программа "slave" имеют тоже самое объектно-ориентированное ядро и различающются только способами управления. Процесс "master" управляет всем визуализационным приложением, выполняя команды пользователя, планирование, распределение задач пользователя и рассылку управляющих сообщений "slave" процессам. "slave" процессы принимают команды от программы "master" и необходимые данные для обработки их в соответствии с специфической задачей визуализации в контексте всего сценария визуализации.

    Для обеспечения разных стратегий распараллеливания программа "master" сохраняет весь визуализационный сценарий целиком, включая свои собственные сценарии, удаленные и распределенные объекты. Для манипулирования удаленными и распределенными объектами "master" сохраняет виртуальные копии таких объектов с информацией о реально использованных узлах. Распределенные данные и алгоритмы формально загружены на всех узлах, хотя их реальные атрибуты хранятся только на выбранных узлах.

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

    В настоящее время параллельное программное обеспечение отлажено и исследовано на различных задачах визуализации.


<НАЗАД>  <В НАЧАЛО>  <ДАЛЬШЕ>



Главная - Проекты - Файлы - Состав - Адрес - Статьи - Ссылки - Партнеры
1997-1999 Группа Научной Визуализации  
Если у вас возникли трудности с получением информации, то пишите на 3D@ispras.ru