Интернет-университет суперкомпьютерных технологий

В 2008 году в компьютерной индустрии был преодолен петафлопный рубеж производительности – пиковая производительность RoadRunner, первой системы такого уровня, составила 1,376 PFLOPS. Другим знаковым событием стал переход разработчиков компьютерного оборудования на выпуск многоядерных процессоров, что коренным образом изменило ситуацию; если ранее при повышении тактовой частоты процессора программы начинали автоматически работать быстрее, то теперь для максимального использования вычислительного потенциала процессоров программное обеспечение требуется переработать. Для одновременного использования нескольких вычислительных ядер необходимо «параллельное» обобщение традиционной (последовательной) технологии компьютерного решения задач. Так, численные методы в случае многоядерных процессоров должны проектироваться как системы параллельных и взаимодействующих между собой процессов, допускающих исполнение на независимых ядрах. Алгоритмические языки и системное ПО должны помогать в создании параллельных программ, организации синхронизации и взаимоисключении асинхронных процессов и т.п. Параллельные вычисления, относившиеся к компетенции узкого круга программистов, стали приобретать массовый характер, что выдвинуло на повестку дня проблему подготовки специалистов в области суперкомпьютерных технологий [1, 2].

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

Использование обычных, «классических» форм обучения в сфере современных суперкомпьютерных технологий необходимо, и такие формы нужно активно внедрять, однако сейчас это затруднительно в силу необходимости обеспечения оперативности и массовости обучения – на начальных этапах организации массовой подготовки будет просто не хватать опытных квалифицированных преподавателей. В этой связи поучителен опыт Интернет-университета информационных технологий ИНТУИТ.РУ, созданного для дистанционного обучения в области ИТ.

Сегодня на портале www.intuit.ru представлено более 250 различных учебных курсов, в разработке которых принимают участие наиболее известные специалисты России. Курсы в виде учебных материалов, разделенных на последовательно изучаемые лекции, доступны для всех желающих, а после изучения каждой лекции обучаемые должны пройти автоматизированное тестирование – доступ к следующей лекции возможен только после успешного прохождения тестирования по материалам предыдущей. О результативности данной технологии обучения свидетельствует количество слушателей: на начало 2009 года на портале университета было зарегистрировано 250 тыс. человек.

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

Как совместить на первый взгляд несовместимое – ограниченное количество высококвалифицированных преподавателей (особенно по новым направлениям обучения) и необходимость массовой подготовки? Учебные занятия можно проводить в режиме видеоконференций, позволяющих получить практически полную классическую форму обучения на новом «компьютеризированном» уровне. Именно такая «расширенная» форма организации дистанционного обучения и была положена в основу решения проблемы массовой и оперативной подготовки специалистов в Интернет-университете суперкомпьютерных технологий (www.hpcu.ru).

Идея

Идея создания Интернет-университета суперкомпьютерных технологий была сформулирована и реализована Интернет-университетом информационных технологий, Научно-исследовательским вычислительным центром МГУ им. М.В. Ломоносова и Нижегородским государственным университетом им. Н.И. Лобачевского. Идея была поддержана и стала составляющей деятельности созданного в 2008 году Суперкомпьютерного консорциума университетов России (www.hpc-russia.ru), к работе Интернет-университета на данный момент подключились Санкт-Петербургский и Южно-Уральский университеты, Институт математического моделирования РАН и Институт прикладной математики РАН.

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

Двухуровневая система обучения включает в себя:

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

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

Чему и как учить

Анализ состояния дел в сфере образовательных программ показал, что часто суперкомпьютерные технологии трактуются слишком узко, и это сводит обучение к освоению технологий разработки параллельного программного обеспечения (MPI, OpenMP и т.п.). Очевидно, что специалист в области суперкомпьютерных технологий должен иметь более широкие знания об архитектуре параллельных вычислительных систем, моделях и методах анализа сложности вычислений, информационной структуре программ и алгоритмов, параллельных методах вычислений и параллельном программировании (языки, среды разработки, библиотеки) и т.п. Кроме того, создание параллельного программного обеспечения невозможно без профессионального владения «обычным» последовательным программированием. И очень важно также понимать, что в большинстве случаев разработка эффективных суперкомпьютерных программ для решения сложнейших научно-технических проблем невозможна без хорошего знания математики.

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

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

Определение необходимого набора знаний еще предстоит осуществить, и масштабность такой задачи, несомненно, привлечет внимание многих ученых, преподавателей, специалистов. Возможный подход может состоять в творческом использовании методики подготовки рекомендаций Computing Curricula 2001 международных ассоциаций ACM и IEEE [3]. Следует отметить, что попытки формирования комплексного подхода к подготовке специалистов в области суперкомпьютерных технологий предпринимались и ранее [4].

Первый блин не комом

Официально о создании Интернет-университета суперкомпьютерных технологий было объявлено в сентябре 2008 года на Всероссийском семинаре инновационных университетов России, проводимом в рамках Приоритетного национального проекта «Образование».

Интернет-университет суперкомпьютерных технологий

Перед пилотной частью проекта (сентябрь 2008 – июнь 2009) были поставлены задачи отработки технологии организации учебного процесса, распространения информации о проекте и подготовки образовательных программ для последующей деятельности Университета. В качестве фокусной категории обучаемых на этом этапе были выделены студенты физико-математических специальностей, а целью их обучения была поставлена задача начального ознакомления с проблематикой суперкомпьютерных вычислений.

Проведение учебных занятий было начато в октябре 2008 года, и, несмотря на то что сообщений о пилотном проекте почти не было, на обучение зарегистрировалось 450 человек, а к видеозанятиям подключалось 20-30 человек. Все проведенные видеозанятия были записаны и размещены на портале Интернет-университета суперкомпьютерных технологий.

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

Дорогу осилит идущий

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

Литература

  1. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. – СПб.: БХВ-Петербург, 2002.
  2. Гергель В.П. Теория и практика параллельных вычислений. – ИНТУИТ, Бином. Лаборатория знаний, 2007.
  3. Терехов А.Н., Терехов А.А. Computing Curricula: Software Engineering и российское образование//Открытые системы. –2006. – № 8.
  4. Тихонов А.Н., Скуратов А.К., Домрачеев В.Г., Ретинская И.В. Новый этап развития и использования высокопроизводительных ресурсов в научно-образовательной среде //Новости искусственного интеллек-та. – 2002. – № 4.

Владимир Воеводин (voevodin@parallel.ru) – зам. директора НИВЦ МГУ, Виктор Гергель (gergel@unn.ru) – декан факультета вычислительной математики и кибернетики ННГУ, Анатолий Шкред (anatoli@shkred.ru) – руководитель проекта ИНТУИТ.РУ.


Свод суперкомпьютерных знаний

Основываясь на подходе Computing Curricula, можно предложить начальную редакцию свода суперкомпьютерных знаний.

Математические вопросы суперкомпьютерных технологий

  1. Математические основы параллельных вычислений.
  2. Алгоритмы и анализ сложности параллельных вычислений.
  3. Вычислительная математика и методы параллельных вычислений. Информационные технологии и суперкомпьютерные вычисления.
  4. Архитектура и организация высокопроизводительных вычислительных комплексов.
  5. Операционные системы и системы управления высокопроизводительными вычислительными комплексами.
  6. Распределенные вычисления и технологии grid.
  7. Организация человеко-машинного взаимодействия при выполнении суперкомпьютерных вычислительных экспериментов.
  8. Компьютерная графика и визуализация результатов суперкомпьютерных вычислений.
  9. Управление информацией при выполнении суперкомпьютерных вычислительных экспериментов.

Методы и технологии суперкомпьютерных вычислений

  1. Основы параллельного программирования.
  2. Языки и технологии параллельного программирования.
  3. Программная инженерия программного обеспечения суперкомпьютерных вычислений.
  4. Программные системы суперкомпьютерных вычислительных экспериментов.
  5. Социальные и профессиональные вопросы суперкомпьютерных технологий.

Учебный план

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

Учебные видеокурсы

  • Основы параллельного программирования (лектор Гергель В.П., ННГУ).
  • Параллельное программирование с MPI (лектор Немнюгин С.А., Санкт-Петербурский университет).
  • Параллельное программирование с OpenMP (лекторы Крюков В.А., Бахтин В.А., Институт прикладной математики им. М.В. Келдыша РАН).
  • Введение в параллельные алгоритмы (лектор Якобовский М.В., Институт математического моделирования РАН).
  • Курсы дистанционного обучения
  • Параллельное программирование с использованием OpenMP (автор курса Левин М.П., Московский исследовательский центр корпорации Samsung Electronics).
  • Параллельное программирование с использованием технологии MPI (автор курса Антонов А.С., НИВЦ МГУ).
  • Вычислительное дело и кластерные системы (авторы курса Воеводин В.В., Жуматий С.А., НИВЦ МГУ).