Главная страница « Научно-исследовательский семинар «

Заседание научно-исследовательского семинара. 15 марта 2006 г.

Доклад: «Система написания параллельных программ „Parus“»
Докладчик: Сальников Алексей Николаевич, научный сотрудник лаборатории вычислительной электродинамики факультета ВМК МГУ.

Предыдущее заседание « | 15.3.2006 | » Следующее заседание

Новости
Информация
Преподаватели и сотрудники
Студенты и аспиранты
Спецсеминары
Просеминар
Спецкурсы
Проекты
Ссылки
Поиск

Наиболее популярный способ написания параллельных программ – это создание параллельного программного кода с использованием таких библиотек как MPI и OpenMP. Эти библиотеки позволяют создавать высокоэффективные параллельные программы. Однако при написании параллельной программы для обеспечения эффективности работы полученной реализации и достижения сбалансированности нагрузки на процессоры и коммуникационную среду многопроцессорной системы приходится учитывать массу деталей. C целью облегчения человеку написания параллельной программы популярен подход создания программных надстроек над MPI и OpenMP. К таким средствам можно отнести DVM, Cilk, PETSc, а также создаваемое автором в коллективе разработчиков инструментальное средство для написания программы как графа зависимости по данным „Parus“.

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

Система „Parus“ была протестирована на следующих многопроцессорных системах: MBC-1000M (768 процессоров Alpha), IBM pSeries690 (16 процессоров Power4+ ), Sun Fujitsu PRIMEPOWER 850 Server (12 процессоров SPARC64-V). На данных машинах были созданы: параллельная реализация 3-слойного перцептрона, параллельная реализация Window-sync частотного фильтра звуковых сигналов, параллельная реализация программы, осуществляющей множественное выравнивание нуклеотидных последовательностей на основе пакета MUSCLE (http://www.drive5.com/muscle). Проведено исследование эффективности полученных реализаций.

Приглашаются аспиранты и стажеры программистских кафедр.

  

© Кафедра системного программирования ВМК МГУ.

Обновлено: 7.3.2006