PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 17 окт 19 0:24

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
СообщениеДобавлено: 29 июл 08 15:19 
Не в сети

Зарегистрирован: 29 июл 08 14:42
Сообщения: 1
Уважаемые коллеги!

Задача такова: необходимо создать софт для обработки данных. Софт будет состоять из:
(1) ядер - т.е., вычислительных программ, которые могут использовать внутреннее распараллеливание, а могут и нет,
(2) - терминальных станций которые обеспечивают возможность визуализации данных и результатов их обработки, а также формирование заданий на обработку.

Вычислительная система - неоднородный кластер, где различные машины с очень разными ресурсами могут работать под разными ОС всё сшито через Ethernet, причём на любом узле могут запускаться и локальные задачи. Естественно, выделяется минимум один управляющий узел и файл-серевер.

Ядра могут быть написаны на С/С++/Fortran (команда разработчиков очень неоднородна), естественно все используют общий интерфейс данных и соглашения по параметрам запуска и протоколу сообщений. Терминальные станции написаны на C++ и Qt.

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

Понятно, что это комплекс проблем. Принципиально возможно реализовать всё это на основе Qt, но не хотелось бы изобретать велосипед. После первого просмотра сети в голову приходит связка MPI+Cleo. Буду весьма призналелен за любые подсказки "куда копать".

С уважением,
Сергей.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июл 08 19:13 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 872
Откуда: НИВЦ МГУ
chihocki писал(а):
Вычислительная система - неоднородный кластер, где различные машины с очень разными ресурсами могут работать под разными ОС всё сшито через Ethernet, причём на любом узле могут запускаться и локальные задачи. Естественно, выделяется минимум один управляющий узел и файл-серевер.


Мда... Тут с одним запуском будут проблемы. Хотя, если не допускать запуска одного параллельного ядра на разных ОС, то можно выкрутиться.

Цитата:
Ядра могут быть написаны на С/С++/Fortran (команда разработчиков очень неоднородна), естественно все используют общий интерфейс данных и соглашения по параметрам запуска и протоколу сообщений.


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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 30 июл 08 7:14 
Не в сети

Зарегистрирован: 12 янв 06 11:26
Сообщения: 98
Откуда: Хабаровск, ВЦ ДВО РАН
MPI вполне подойдет, но возможно стоит рассмотреть связку CORBA плюс OpenMP (pThraeds, ...) для многопоточности. В продолжении темы SOA: например, на базе части компонентов Globus Toolkit система будет вполне работоспособна, к тому же там решены многие из задач, которые придется решать самим (доставка данных и удаленный запуск приложения, возвращение результатов, разграничение доступа, безопасность передачи, контроль статуса с прерыванием работы задания и т.д.). Если дать "ядрам" по web-сервису на каждый узел, то остается решить только взаимодействие ядер на 1 узле и, возможно, написать/заточить планировщик под вашу задачу.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB