С 250-летием Московского государственного университета им. М.В. Ломоносова совпала дата другого весьма значимого для информационных технологий в России события: ровно полвека назад при МГУ был создан Научно-исследовательский вычислительный центр (НИВЦ МГУ).
Прародители
Рис. 1 АЦВМ «Стрела» в зале ВЦ МГУ |
Этому предшествовала организация в 1949 г. кафедры вычислительной математики при механико-математическом факультете университета, на которой по существу началась в СССР вузовская подготовка специалистов, которых тогда было принято называть вычислителями. Интересно, что, как и в США, их первыми учителями стали представители специальностей, в которых много считают: баллистика и небесная механика (Грейс Хоппер и Б. М. Щиголев). К 1954 г. уже появились советские вычислительные машины (МЭСМ, БЭСМ, «Стрела», М-2 и др.) и сформировались такие направления в технике, науке и образовании, как математические (вычислительные) машины, вычислительная математика и программирование. До 1952 г. обучение студентов новой специальности предполагало усвоение ими не только традиционных навыков вычислений, но и инженерных знаний по радио и электротехнике, теории механизмов и машин, а также азов конструкторского черчения. Практику студенты проходили главным образом по численным методам вычислений с использованием клавишных машин (типа «Феликс» и «Рейнметалл») и даже аналоговой машины гидроинтегратора. Существенные перемены произошли в 1952 г., когда С.А. Лебедев стал приглашать студентов на практику в Институт точной механики и вычислительной техники АН, где шли работы над проектом машины БЭСМ. В это же время кафедру возглавил известный математик акад. С.Л. Соболев, который принимал активное участие в национальных ядерном и термоядерном проектах. Он привлек к работе на кафедре видных математиков Л.А. Люстерника, А.А. Ляпунова, создавшего в эти годы свой замечательный курс «Принципы программирования», М.В. Келдыша, Б.Н. Делоне, М.Р. Шура-Бура, К.А. Семендяева, конструктора машины М-2 М.А. Карцева и др.
Рождение и жизнь ВЦ
В начале 50-х годов на кафедре выделяются самостоятельные исследовательские специализации по вычислительным методам и программированию, которые в дальнейшем составят ядро будущей науки computer science. При кафедре в 1954 г. был создан отдел вычислительных машин во главе с И.С. Березиным. Вычислительные средства, которыми располагал отдел, состояли из упомянутых выше клавишных счетных машин и счетно-аналитических — табуляторов, перфораторов и сортировок. В связи с переездом механико-математического факультета на Ленинские горы уже в августе 1954 г. правительство страны приняло постановление о создании в МГУ вычислительного центра, и в следующем году ректор акад. И.Г. Петровский преобразовал отдел в ВЦ. Его первым заведующим стал И.С. Березин.
На начальном этапе ВЦ эксплуатировал также ЭЦВМ М-2 в Энергетическом институте АН, а уже через год в центре устанавливают АЦВМ «Стрела».
Дальнейшее оснащение ВЦ МГУ вычислительными машинами шло в соответствии с развитием парка отечественных компьютеров. На протяжении первых тридцати лет существования ВЦ здесь появились «Сетунь», М-20, БЭСМ-4, «Минск-32», БЭСМ-6, ЕС ЭВМ 1020, «Эльбрус» и др. С 1959 г. находился в эксплуатации опытный экземпляр машины «Сетунь», спроектированной Н.П. Брусенцовым в ВЦ МГУ в 1957—1958 гг. Ее отличительной особенностью стало использование феррит-транзисторных ячеек, работающих в троичной логике. В дальнейшем эта машина была сдана в серийное производство. Машина «Стрела» была заменена в 1968 г. на БЭСМ-6. К 80-м годам их было в НИВЦ уже четыре.
В 60-х годах ВЦ МГУ становится одним из крупнейших вычислительных центров страны, его штат достигает четырехсот человек. Для удовлетворения потребности сотрудников и студентов университета в вычислительных ресурсах ВЦ с середины 70-х годов начинается создание системы коллективного пользования (СКП ЭВМ МГУ). Теперь большинство «считающих» факультетов и институтов университета — мехмат, НИИ механики, ВМК, ГАИШ, физфак, НИИ ядерной физики и др. — становятся пользователями вычислительных ресурсов НИВЦ. Во второй половине 80-х годов межвузовскую программу автоматизации научных исследований уже поддерживает СКП-2. К этому времени в НИВЦ МГУ в эксплуатации находится ряд машин серии ЕС ЭВМ и два двухмашинных высокопроизводительных вычислительных комплекса «Эльбрус».
После организации в 1970 г. факультета вычислительной математики и кибернетики ВЦ преобразуется в самостоятельный институт в составе факультета — НИВЦ, что делает его работу еще более значимой. Кроме научной и вычислительной деятельности НИВЦ теперь ведет многочисленные проекты по созданию автоматизированных информационных систем различной направленности, которые должны способствовать организационной, учебной и научной работе в университете. Некоторые из этих проектов имеют масштабируемый характер и переносятся в другие университеты страны.
Разумеется, бурное перестроечное время сказалось на деятельности НИВЦ не лучшим образом. Пришлось уделить больше внимания образовательным проектам — так появилась Высшая компьютерная школа (ВКШ). Парк вычислительных средств был существенно обновлен, а результатом бума, связанного с распространением ПК, которые далеко не всегда отвечали потребностям вычислительных задач, стало серьезное ослабление интереса к вычислениям. Благодаря усилиям последних лет НИВЦ МГУ удалось достойно вступить в эпоху высокопроизводительных вычислений, в том числе с использованием распараллеливания алгоритмов. И неслучайно в список суперкомпьютеров России Top50 за 2004 г. вошли четыре кластера НИВЦ, из них три — собственной сборки (один включает 82 процессора и два по 32), а один — разработки компании Hewlett-Packard (160 процессоров). Они предназначены для научных исследований и образовательных целей, в частности для развития Grid-технологий.
Основные направления деятельности ВЦ
Рис. 2. ЭЦВМ «Сетунь» |
Еще первым директором НИВЦ проф. И.С. Березиным в качестве основных целей, выдвигаемых перед ним как организацией, и форм их реализации были определены следующие: центр должен стать сильным научным учреждением, оснащенным современной вычислительной техникой, способным принимать активное участие в подготовке научных кадров и решать необходимые теоретические и практические задачи. В 60-х годах структура НИВЦ состояла из подразделений, среди которых основным являлась лаборатория систем автоматического программирования и математического обеспечения (зав. В.В. Воеводин), включавшая отделы: теории автоматического программирования, алгоритмических языков и трансляции, операционных систем, обработки символьной информации, численного анализа, методов решения дифференциальных уравнений с частными производными, методов решения дифференциальных и интегральных уравнений, методов решения экстремальных задач, математической статистики и массового обслуживания.
Еще одна лаборатория прикладных математических задач (зав. Г.С. Росляков) включала отделы методов решения задач аэродинамики, газовой динамики, электродинамики и группу структурного анализа.
Создание ЭЦВМ «Сетунь» стало замечательной демонстрацией возможностей потенциала ВЦ и выдающейся творческой заявкой ее разработчика Н.П. Брусенцова. Машина, работавшая в троичной логике, была реализована на современной (для того времени) элементной базе и имела ряд других преимуществ, прежде всего по стоимости для заказчика, значительно более низкой, чем у существовавших тогда ЭВМ. Система программирования была проще (даже если иметь в виду только объем программ), чем на обычных двоичных машинах. Требования к габаритам эксплуатационных помещений также в большей мере устраивали пользователей. Но, к сожалению, судьба не благоволила к ней и ее более совершенной модели «Сетунь-70», для серийного производства которой не нашлось места в планах.
Разумеется, в 50—60-е годы ВЦ и НИВЦ приняли участие в советской космической программе, выполняя расчеты орбит и участвуя в численном моделировании конструктивных элементов ракет и двигателей, а также в обработке различной информации о полетах космонавтов и космических кораблей.
Перечисленными направлениями НИВЦ МГУ, конечно, не ограничивался. Автору данной статьи пришлось в конце 60-х годов воспользоваться программным продуктом отдела решения экстремальных задач (руководитель направления Б.Т. Поляк), когда понадобилось провести обратный анализ на основе данных в пробах вулканических газов, т. е. рассчитать состав их устойчивой смеси на основе критерия минимума свободной энергии. В программе был реализован метод решения экстремальных задач выпуклого программирования. Тогда мне удалось выполнить на БЭСМ-4 весьма значительный объем вычислений для ГЕОХИ АН и вместе с соавтором в 1971 г. на Международном геохимическом конгрессе в Москве доложить их результаты. В 70-е годы при выполнении работ по локализации пакета научных программ SSP (Scientific Subroutines Package) автор статьи неоднократно консультировался с сотрудниками отдела О.Б. Арушаняна, которые имели хороший опыт вычислений с помощью этого пакета.
Персоналии
Рис. 3. Иван Семенович Березин, первый директор НИВЦ МГУ |
История НИВЦ неотделима от судеб связанных с ним людей. Это не только рядовые сотрудники, но и лидеры. Такие известные ученые, как С.Л. Соболев, А.Н. Тихонов, Г.И. Петров, Л.А. Люстерник, Б.Н. Делоне и др., прошедшие вместе с кафедрой, отделом и центром путь от студенческой скамьи до академических высот и составили славу и гордость отечественной науки.
Общее научное руководство НИВЦ МГУ осуществлял акад. А.Н. Тихонов, а среди тех, кто определял деятельность отдельных направлений, были Г.И. Петров, С.С. Лавров, Н.С. Бахвалов, А.А. Самарский, В.В. Воеводин и др.
Важно отметить роль акад. Г.И. Петрова, выдающегося механика, замечательного организатора науки и одного из видных руководителей космической программы СССР, который на своем семинаре в МГУ, объединив усилия многих участников, в том числе из НИВЦ МГУ, в течение тридцати лет способствовал созданию вычислительной аэро- гидродинамики. Исключительно высока его роль в интеграции научных и практических знаний в механике, математике, ВТ с развитием вычислительной методологии и глубокой профессиональной экспертизой результатов машинных экспериментов. По существу он создал школу, в которой блистательно, отвечая научным требованиям строгости и практической значимости, решались вопросы выбора достаточных математических моделей для вычислительных экспериментов, а также критериев для оценки результатов расчетов. Как признание высокого уровня работы школы, ряд ее участников, в том числе и сотрудники НИВЦ МГУ, за выполненные исследования были награждены премией им. Н.Е. Жуковского, Государственной премией Правительства СССР и Ленинской премией.
Рассматривая в целом «иконостас великих сотрудников» НИВЦ МГУ, отмечаешь незначительное присутствие программистов. Оказание услуг при решении задач, конечно, повлияло на более активное развитие тех направлений, на которых ищут методы решения и дают оценку их качества. Но вместе с тем относительное дистанцирование от создателей ВТ и позднее формирование НИВЦ как самостоятельного института, а также отношения с университетом, настоятельно требующим оказания вычислительных услуг, не препятствовали развитию программирования в ряду основных видов деятельности НИВЦ подобно разработке численных методов.
Отдельно в истории НИВЦ МГУ необходимо отметить роль И.С. Березина, который был не только замечательным организатором, определившим основные принципы его становления. Он также стал инициатором нового направления в работе, связанного с вычислительной аэродинамикой, что в дальнейшем привело к созданию самостоятельного научного подразделения. С самых первых шагов в МГУ И.С. Березин принимал активное участие в учебном процессе на мехмате и факультете ВМК. А подготовленная совместно с Н.П. Жидковым на основе многократно читавшихся курсов книга по приближенным методам вычислений (в двух томах) на протяжении нескольких десятков лет служила пособием для студентов и аспирантов, причем не только в нашей стране.
С надеждой в будущее
Завершая рассказ о полувековой истории НИВЦ МГУ, хочется еще раз подчеркнуть: он имеет полное право гордиться тем, как были прожиты эти годы. Поэтому сегодня у него есть все основания надеяться на успехи и в следующие полвека.
Какие задачи решали в свое время на «Стреле»
Очень популярны были типичные вычислительные задачи, например нахождение обратных матриц, возникающие при многих инженерных расчетах. Даже Джону фон Нейману в ряде первых работ, связанных с использованием вычислительных машин, пришлось заниматься выбором алгоритма и программной реализацией данной задачи, решение которой существенно зависело от конструкции ЭВМ. В чем же была привлекательность использования более мощных машин? Прежде всего, они позволяли решать задачи большей размерности и за меньшее время. Вот что рассказала выпускница вычислительной кафедры Н.И. Егорова, в то время только что приступившая к работе в ВЦ: «Я получила задание посчитать обратную матрицу порядка 30Ё30. Работа была выполнена в течение нескольких дней, включая подготовку данных на перфокартах. И когда заказчику было предложено забрать результаты счета, он решил, что с ним шутят. Еще больше он удивился, что собственно расчет занял всего 12 минут машинного времени. Свое изумление он подкрепил свидетельством, что на аналогичную работу они обычно затрачивают до полугода работы и для надежности выполняют ее «в три руки». Благодарность заказчика была столь велика, что сотрудники моей группы неделю пили чай с шоколадными конфетами».
НИВЦ: семидесятые годы (Воспоминания акад. РАН В.В. Воеводина)
Период моего директорства в НИВЦ МГУ пришелся на 70-е годы прошлого столетия. В то время интерес к использованию вычислительной техники (ВТ) для решения крупных научных и прикладных задач в нашей стране был огромен. Наиболее мощной ВТ, сосредоточенной в относительно небольшом числе организаций, явно не хватало. Доступ к ней был ограничен, что создавало серьезные проблемы в деле подготовки высококвалифицированных кадров. Цели, поставленные перед НИВЦ И.С. Березиным, сохранялись и в 70-е годы. Тогда этот самый крупный в стране вузовский ВЦ был одновременно наиболее важным научно-исследовательским учреждением в области вычислительной и прикладной математики.
Подобное совмещение науки и ВТ в одной вузовской организации не было характерным. Чаще всего ВЦ в вузах представляли собой слабо оснащенные счетные подразделения, с напряжением обеспечивающие решение задач по программам, написанным сторонними пользователями. Такие центры не могли соответствовать достижениям вычислительной науки и серьезно влиять на формирование учебного процесса и подготовку научных кадров.
Деятельность НИВЦ МГУ затрагивала многие направления, в первую очередь касающиеся развития численного анализа, системного программирования, численного решения задач газовой и гидродинамики, математической статистики и массового обслуживания и, конечно, ВТ. Особо следует отметить проводившиеся в НИВЦ МГУ работы по созданию информационных систем, ориентированных на обеспечение учебного процесса. В это время начали успешно функционировать системы «Абитуриент», «Студент» и др. Это были первые системы в стране, работающие в больших вузах. Наиболее узким местом стало обеспечение научных и учебных подразделений университета машинным временем для решения их задач. Так, для университета пришлось создавать систему коллективного пользования вычислительным ресурсом (СКП МГУ).
Сотрудники НИВЦ МГУ всегда принимали активное участие в учебном процессе в университете. Высокий уровень выполняемых в центре исследований позволял внедрять в образование передовые знания, связанные с вычислениями. Показательно, что в первые годы становления факультета ВМК сотрудники НИВЦ обеспечивали более половины всех занятий, включая потоковые лекции.
Одной из существенных функций, выполняемых НИВЦ, являлось обеспечение подразделений МГУ различными вычислительными услугами при решении задач. Поскольку их тематика была различна, НИВЦ поддерживал на своих вычислительных машинах функционирование многих пакетов программ. Большая их часть создавалась собственными силами. В частности, в НИВЦ была разработана самая большая в стране и одна из самых представительных в мире библиотека программ по численному анализу. Кстати, она успешно функционирует до сих пор.
Около тридцати лет назад в МГУ развернулись работы по созданию СКП. Головным исполнителем по этому проекту был определен НИВЦ МГУ. Предполагалось связать в единую сеть вычислительные машины НИВЦ МГУ, машины на факультетах и в подразделениях, а также в учебных компьютерных классах. Намечалась перспектива оснащения НИВЦ МГУ мощным векторным процессором и комплексом машин нового поколения. В итоге должен был получиться очень большой по тому времени неоднородный распределенный многомашинный вычислительный комплекс, который в настоящее время принято называть распределенной неоднородной сетью. Так в НИВЦ МГУ возник интерес к параллельным вычислениям.
Следует подчеркнуть, что в тот период практически отсутствовал научный фундамент в области параллельных вычислений. Поэтому после многих неудачных попыток получить из имеющейся литературы ответы на постоянно возникающие при проектировании вопросы стало ясно, что, если мы хотим активно работать в области параллельных вычислений и тем более использовать неоднородную распределенную технику, следует самим начинать создавать научный фундамент и четко понимать, что мы изучаем, как и зачем. И конечно, необходимо внедрять новую технику и знания в учебный процесс университета. Так в НИВЦ МГУ стала формироваться научная школа «Параллельные вычисления и неоднородные сети».
Научные исследования и учебный процесс являются основой работы школы. За прошедшие годы сделано довольно много. Постоянно работают семинары и читаются курсы лекций. Защищено десять кандидатских диссертаций и одна докторская. Опубликовано более 80 работ и семь книг, среди которых имеются учебные пособия. Наиболее известное из них — «Параллельные вычисления» (на эту книгу была рецензия в журнале «Открытые системы», № 3/03, с. 75 — Прим. ред.). Она представляет собой фундаментальный итоговый труд, в котором научные основы строго систематизированы. Это первое учебное пособие по параллельным вычислениям, рекомендованное Министерством образования для студентов вузов, обучающихся по направлению «Прикладная математика и информатика». За цикл научно-образовательных изданий для высшей школы «Высокопроизводительные вычисления» авторам данной книги в 2003 г. присуждена премия Правительства РФ в области образования. Работы школы поддерживаются многими грантами Минпромнауки, РФФИ, РГНФ и РАН, а также международными.
В школе уделяется большое внимание практическим разработкам, облегчающим освоение ВТ с параллельной архитектурой. На основе собственных разработок создана программная система V-Ray, предназначенная для изучения свойств параллельности алгоритмов, записанных на последовательных языках программирования. В НИВЦ МГУ разработан и с 1998 г. стал доступным для широкого круга пользователей в Интернете общероссийский информационно-вычислительный центр PARALLEL.RU, деятельность которого посвящена параллельным вычислениям. Создано программное обеспечение для поддержки режима метакомпьютинга, когда в единую сеть через Интернет объединяются сотни компьютеров для решения отдельных задач.
НИВЦ МГУ является организатором постоянной общероссийской конференции «Научный сервис в сети Интернет», которая ежегодно собирает около 200 участников.
Работы по численным методам решения задач аэрогидродинамики
(На основе беседы с проф. В.М. Пасконовым)
Семинар академика Г. И. Петрова |
Толчок к развитию механики сплошной среды в МГУ был связан с приходом в 1957 г. в вычислительный центр Г.И. Петрова. Он возглавил руководство направлением вычислительной аэрогидродинамики и организовал соответствующий университетский семинар, оказавший значительное влияние на работу отдела, исследующего численные методы в аэрогидродинамике. В дальнейшем на базе этого подразделения на факультете ВМК создаются лаборатории вычислительных методов газодинамики и моделирования процессов тепломассопереноса, работающие до настоящего времени. Очень важно, что семинар сформировал идеологию не только его участников, но и сотрудников отдела. Идеология эта базировалась на обязательном учете взгляда на проблему со стороны механиков, математиков и программистов. В частности, много внимания уделялось постановке задачи и детальному обсуждению вычислительных схем. Так, в отделе были развиты метод сеток применительно к задачам аэродинамики, созданы вычислительные схемы метода характеристик и разработана автоматизированная система стандартных программ модульной структуры. С ее помощью выполнены расчеты сверхзвуковых течений в соплах различных конфигураций, диффузорах и струях. Исследования по профилированию сверхзвуковых сопел, обеспечивающих равномерный поток, в 1963 г. были удостоены премии. В дальнейшем расчеты сопел стали постоянной проблематикой. Точно так же уделялось значительное внимание сверхзвуковым струям. Вот некоторые аспекты исследований, представлявших наибольший интерес: модели течений, численные методы анализа струй, взаимодействие с телами, акустика струй и др.
Другой класс проблем, исследовавшихся в отделе, связан с задачами о пограничном слое. В частности, в ВЦ МГУ впервые в стране была разработана методика расчета двухмерных уравнений стационарного пограничного слоя. По результатам расчетов двухмерного и пространственного обтекания затупленных конусов и клиньев совершенным газом и равновесным потоком воздуха разработаны и изданы в 1971 и 1974 гг. подробные таблицы газодинамических функций. В дальнейшем выполнялись исследования и вычислительные эксперименты на ЭВМ по другим разделам аэрогидродинамики и на более сложных моделях.