Параллельные вычисления в ИММ УрО РАН
 
 

Информационно-вычислительная структура суперкомьютерного вычислительного центра ИММ УрО РАН

В.В.Самофалов, А.С.Игумнов, А.В.Коновалов, С.В.Шарф.

Институт математики и механики УрО РАН

{svs, igumnov, avkon, scharf}@imm.uran.ru

Работа выполнена при частичной поддержке грантов РФФИ № 99-07-90078, № 00-15-96042.

Суперкомпьютерный вычислительный центр ИММ УрО РАН с самого начала создавался как центр коллективного использования для институтов Академии наук и высших учебных заведений Уральского региона. На сегодняшний день его услугами пользуются Уральский государственный университет, Уральский технический университет и институты Уральского отделения РАН.

Такой подход к созданию центра, кроме освоения и эксплуатации соответствующих вычислительных мощностей и их программного обеспечения
(в нашем случае это МВС-100 и МВС-1000, кластеры рабочих станций на 100 Мбитной сети; ОС ЛИНУКС, языки C и Фортран), предполагает решение нескольких дополнительных задач:

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

Рассмотрим пути решения некоторых из этих задач более подробно.

Идентификация пользователей и защита информации

При реализации всякой системы ограничения доступа, помимо важных технических вопросов, встают вопросы создания для пользователя внятной психологической модели иерархии прав. В качестве основы такой модели в нашем случае взята система, использовавшаяся ранее на БЭСМ-6 и Эльбрус-Б. А именно, организована 2-уровневая иерархия - всякий пользователь принадлежит к некоторому отделу, в каждом отделе выделен администратор, при этом login-имена пользователей формируются не на основе фамилии (что обычно для, например, Unix), а в виде u<номер отдела><номер пользователя> (в традициях БЭСМ). Помимо очевидных преимуществ частичного делегирования администраторских полномочий, такая схема позволяет сделать акцент не на людях, а именно на ролях, под которыми подчас выступает один и тот же человек.

Технически защита организована достаточно традиционно, на основе межсетевых экранов и парольной защиты. Пароли открытым текстом по сети не передаются, происходит переход к централизованном проверке паролей доступа ко всем ресурсам на специализированном сервере (на основе SMB).

Обучение и консультации пользователей

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

Помимо решения исследовательских и прикладных задач, СКЦ используется и как вычислительная база Кафедры параллельных компьютерных технологий Уральского госуниверситета. Возникающий поток пользователей-студентов позволяет проверить на прочность используемые нами механизмы управления ресурсами. Кроме того, молодые пользователи подчас выявляют весьма неочевидные и тонкие стороны поведения вычислительных установок, к примеру, неразумно большое время загрузки исполняемых программ некоторыми версиями ОС МВС-100, или любопытные аномалии во временах передачи сообщений. Подобная деятельность идет на пользу как студентам, так и МВС.

Распределенная разработка и отладка параллельных программ, поддержка нескольких платформ параллельного программирования

Феномен суперЭВМ обязан своим существованием тому, что эра универсальных ("больших") машин закончилась. Это значит, что любая осмысленная организация работы с суперЭВМ должна учитывать существование машин иных классов, и в первую очередь - PC. Основной принцип распределения нагрузки прост - суперЭВМ должна делать только то, что может делать только она. Совершенно очевидный первый шаг в этом направлении - вынос на сервисные машины любых задач (трансляция, обработка текстов и пр.), кроме собственно счёта. Более интересным является освобождение МВС и от решения небольших отладочных задач. Чтобы пользователи поступали таким образом, в первую очередь их необходимо обеспечить средой исполнения, максимально сходной с тем, что есть на суперЭВМ. Процессу миграции отладочного счёта способствовала значительно более дружественная, чем на целевой машине, среда выполнения и отладки. Некоторую специфику нашему СВЦ придаёт существование выделенных Alpha-станций с теми же трансляторами, что и для МВС-1000. Это делает отладку и профилирование особенно гибкими.

Стандартом в области API передачи сообщений к настоящему времени стал MPI, унаследованным интерфейсом МВС-100 являются вызовы ОС Router. Из-за размера и хаотичности стандарта возникают значительное число скользких мест и при реализации MPI, и при его практическом использовании прикладными программистами. Временным решением стала интеграция вызовов Router'а в MPI, ведутся исследования новых механизмов взаимодействия параллельных процессов, которые позволят вовсе избежать указанных проблем.

Информационная поддержка вычислительного процесса, бюджетирование пользователей, приоритеты пакетная обработка

Как и большинство систем коллективного доступа к общим ресурсам, системы запуска задач ЭВМ МВС‑100/1000 поддерживают очередь запросов. Интересно, что хотя на МВС-1000 минимальным вычислительным ресурсом является процессор, а не секция, эксплуатация системы запуска задач в ИПМ РАН им. Келдыша показала целесообразность введения логических секций при обслуживании очереди и на МВС‑1000. Логическое деление вычислительных ресурсов будет поддержано путем перехода к планированию на базе виртуальных ресурсов и характеристик, изменяющих значение по заданному расписанию.

Развитие вычислительных серверов - магия больших чисел

В 1999 г. мощность МВС-100 в ИММ УрО РАН была доведена до 128 вычислительных модулей. МВС управляется двумя хост-машинами, 128 процессоров поделены на 8 логических полей, синхронизацию обеспечивает симметричный пакетный режим. Данная конфигурация МВС-100 является уникальной.

Естественно, что практическая демонстрация известного утверждения о идеальной масштабируемости масс-параллельных систем не оказалась простой. Наибольшие проблемы вызвала надёжность как вычислительных модулей (в первую очередь), так и связей между ними. Стандартная методика деления пополам в сочетании с разработанными средствами автоматической генерации загружаемых модулей позволила не только запустить машину, но и достигнуть весьма высоких параметров надёжности (порядка месяца без сбоев). Интересно отметить, что надёжность использованного в МВС-100 счётного и коммуникационного оборудования такова, что для проверки работоспособности вполне достаточно простых пересылок больших массивов – без более сложных тестов вполне можно обойтись.

Оптимизация информационных потоков внутри центра

Помимо управляющих машин МВС-100/1000, в ИММ УрО РАН действуют и другие вычислительные и файл-серверы. Так возникают задачи оптимизации информационных потоков и унификации системы именования дисковых ресурсов. Для разрешения этих проблем на общеинститутском файл-сервере выполняется монтирование (средствами AMD) всех совместно используемых ресурсов по протоколу NFS (существенно, что все серверы работают под Unix), а затем эти ресурсы реэкспортируются на PC пользователя через SMB. В этом случае все удаленные дисковые ресурсы выглядят как каталоги сетевого диска MS-DOS. Если же пользователя не устраивает производительность схемы с реэкспортом, есть возможность напрямую монтировать диски удаленного сервера на PC по SMB.