Создание математических моделей, механизмов и инструментальных средств разработки параллельных программ для больших вычислительных комплексов
Целью работы является создание перспективных технологий, средств параллельного программирования и распределенной обработки данных для новых поколений вычислительных систем с набором из следующих свойств и конкурентных преимуществ (предлагаемые к реализации перспективные технологии и средства параллельного программирования должны поддерживать сочетания из нескольких этих свойств):
• совместимость с отраслевыми стандартами, стандартными платформами и программными средствами;
• универсальность: предлагаемые решения должны быть применимы к широкому классу прикладных областей;
• радикальное сокращение трудоемкости создания параллельного кода;
• радикальное улучшение таких характеристик кода, как надежность (вероятность ошибок) и управляемость кода;
• значительная автоматизация процесса разработки и исполнения параллельных приложений (разгрузка программистов);
• высокая масштабируемость предлагаемого решения в широком диапазоне числа процессоров;
• создание эффективных приложений для компьютерных систем с высокой степенью параллелизма, обеспечение работы приложений с терафлопным уровнем реальной производительности;
• качественное изменение свойства переносимости параллельного кода: один и тот же код можно использовать в различных установках (в идеале «один код для любой платформы»: многоядерные системы, кластеры, SMP-системы, вычислительные среды и GRID-подобные системы) под управлением разных ОС (Linux, коммерческие UNIX-системы, системы семейства MS Windows и др.)
• увеличение времени жизни кода: при модернизации аппаратной платформы код не потребуется сильно изменять, обеспечение преемственности в развитии вычислительной техники при смене поколений компьютеров;
• поддержка устойчивости к частичному выходу из строя оборудования и другие перспективные функциональные характеристики.
Соисполнители
Этапы проекта
по 3-ому этапу работ по государственному контракту
от 18 мая 2007 г. № 02.514.11.4037
Наименование темы: (2007-4-1.4-00-07-090) «Создание математических
моделей, механизмов и инструментальных средств разработки
параллельных программ для больших вычислительных комплексов»
Наименование этапа: Экспериментальные исследования поставленных перед
НИР задач.
Исполнитель:Механико-математический факультет МГУ
имени М. В. Ломоносова
На 3-ом этапе выполнения государственного контракта исполнителем были
получены следующие основные результаты.
1. Предложены механизмы, обеспечивающие устойчивость к частичному
выходу из строя оборудования, а также алгоритмы отключения узлов в
процессе счета. На их основе разработана подсистема ядра NewTS,
обеспечивающая автоматическое добавление подключающихся узлов в
процессе счета, а также перезапуск Т-функций при аварийном либо
плановом отключении части узлов, составляющих вычислительное
поле.
2. Разработан набор инструментов для моделирования работы
параллельных приложений, включающий в себя снятие трассы
приложения и последующий ее анализ. На основе этих инструментов
создана система, эмулирующая работу параллельного приложения в
последовательном режиме, разработан модуль, генерирующий
«подсказки» для подсистемы планирования.
3. Проведены работы по программированию и отладке разработанных
средств с использованием методов исполняемой спецификации,
принципа сокрытия информации и методов объектно-
ориентированного программирования. При отладке были использованы
такие стандартные средства отладки и профилировки приложений, как
strace, gdb, valgrind, oprofile и др.
4. Разработан ряд приложений, распараллеленных с помощью NewTS. В
их числе программа построения фотореалистичных изображений,
приложение для обсчета обтекания тел потоком вязкой несжимаемой
среды, задача для поиска подграфа в графе, возникающая при
обработке полуструктурированных данных и некоторые другие.
И. о. декана механико- проф., д.ф.-м.н. В.Н. Чубариков
математического факультета
МГУ имени М. В. Ломоносва
Руководитель работ проф., д.ф.-м.н. В.А. Васенин