Главными вопросами, которые обсуждавшимися на прошедшей в Москве в последних числах июня первой конференции Microsoft “Инновации для развития”, стали тенденции развития ИТ и перспективные направления исследований в области высокопроизводительных вычислений (High Performance Computing, HPC) как во всем мире, так и в России. HPC — это раздел прикладной информатики, который занимается в основном поиском путей решения задач, требующих значительных вычислительных ресурсов. Как известно, многие такие задачи можно решать методом параллельных вычислений, когда любой отдельно взятый процесс выполняется независимо от результатов выполнения других процессов. А для этого можно воспользоваться несколькими относительно небольшими системами (узлами), сгруппированными в вычислительные кластеры. Наиболее широко подобный подход применяется в финансовом моделировании, проектировании и компьютерной анимации.
Вычислительные кластеры позволяют быстро и с относительно небольшими затратами решать комплексные задачи. Об основных возможностях кластеров, работающих под управлением системы Windows Compute Cluster Server (WCCS), а также о том, насколько востребовано направление HPC в России, научному редактору PC Week/RE Ольге Павловой во время конференции рассказал генеральный директор по высокопроизводительным вычислительным системам корпорации Microsoft Кирилл Фаенов.
PC Week: Каковы сегодня основные направления развития технологии высокопроизводительных вычислений в деятельности Microsoft?
Кирилл Фаенов: В настоящее время основная проблема внедрения высокопроизводительных вычислений — это высокая сложность таких решений. Не хватает специалистов, которые могли бы из отдельных частей вручную создавать функционирующий кластер и потом его поддерживать. Приведу такое сравнение. В 1998 г. в Microsoft Data Center для поддержания веб-сайта Microsoft.com использовалось всего 20 компьютеров, которые обслуживала группа из десяти человек. А сегодня 20 компьютеров для высокопроизводительных вычислений может позволить себе любая лаборатория. Поэтому нужно дать системным администраторам возможность быстрее и проще устанавливать системы и собирать в единое целое все необходимые части.
Сегодня основное внимание Microsoft приковано к вопросам повышения продуктивности. В этой связи мы даже употребляем термин “HPC++”, т. е. не только performance computing, но и productivity computing. Наша главная задача — не просто повысить производительность системы WCCS, а сделать ее удобной в использовании как для администраторов, так и для конечных пользователей. Именно поэтому мы, например, встраиваем поддержку кластера непосредственно в такие пользовательские приложения, как Access или MathLab. Благодаря этому не нужно делать дополнительные шаги для того, чтобы передать задачу в кластер, а можно прямо из пакета запустить там нужные расчеты.
При этом наше основное внимание в сфере HPC уделяется академической среде. Исторически сложилось так, что значительная часть физических и математических пакетов работает под Unix, но вместе с тем большинство научных работников используют Windows. Поэтому мы хотим предоставить им возможность применять разрабатываемые ими модели не только на ПК, но и на больших кластерах. Предполагается, что этот проект отчасти будет реализовываться с применением Linux, что позволит максимально увеличить количество пользователей.
PC Week: Ощущаете ли вы давление со стороны Linux в сфере высокопроизводительных вычислений?
К. Ф.: Говорят, использовать Linux дешевле, если не ценишь свое время. Я считаю, что в чем-то это соответствует действительности. Кластерные решения настолько сложны, что они могут потребовать огромных ресурсов. Ведь в случае использования Linux-системы нужно выделять специального человека, который будет выполнять функции системного интегратора — отслеживать разные процессы, интегрировать их, т. е. создавать сложную систему. В крупных вычислительных центрах есть команды, которые могут позволить себе заниматься этим. Но здесь возникает вопрос, а стоит ли им заниматься базовыми вещами — скажем, отладкой какого-то драйвера для какой-то версии. Может быть, имеет смысл в большей мере сосредоточиться на насущных прикладных проектах? Даже используя Linux, наверное, стоит обратиться к компаниям, которые осуществляют коммерческую поддержку решения. Таким образом, это выбор руководителей, зависящий о того, как они хотят распорядиться своими ресурсами.
PC Week: Как вы оцениваете уровень использования технологии высокопроизводительных вычислений в России? Насколько широко в нашей стране применяется Compute Cluster Server?
К. Ф.: Отрадно видеть, с какой скоростью развивается технология HPC в нашей стране. Список суперкомпьютеров здесь в последние два года расширялся значительно быстрее, чем в других странах. Это говорит о том, что интерес к высокопроизводительным вычислениям существует, и теперь вопрос стоит об их эффективном внедрении в экономику.
Технология HPC позволяет коренным образом менять конструкторские процессы. На Западе с помощью полностью цифрового моделирования в кратчайшие сроки создаются новые автомобили, новые версии каких-то сложных деталей. И при этом не делается ни одного физического прототипа. Внедрение такого подхода позволяет не только ускорить проектирование, но и добиться значительной экономии ресурсов. Но здесь надо помнить, что для этого нужно изменить стиль работы людей, их привычки, а это всегда очень сложно.
В настоящее время мы уже можем говорить о продуктивном использовании WCCS в таких российских вузах, как Санкт-Петербургский политехнический университет, Томский госуниверситет, Нижегородский университет им. Н.И. Лобачевского, МИЭТ, ГУ-ВШЭ и многие другие.
Здесь я хотел бы отдельно упомянуть долгую историю сотрудничества Microsoft с Нижегородским университетом в плане подготовки специалистов. В 2006 г. там был открыт центр компетенции в области высокопроизводительных вычислений на основе технологий Microsoft. Работа центра связана с обучением, исследованиями и разработками, проведением научных и технических семинаров и конференций, а также с оказанием услуг в сфере HPC организациям Приволжского федерального округа. Кроме того, в центре был разработан учебный курс по параллельному программированию в среде Microsoft WCCS 2003, который сегодня распространяется бесплатно по территории всей России.
Еще один пример — Институт космических исследований РАН, где установлен кластер под управлением WCCS для обработки архивов наблюдений за изменением климата, собранных за последние 15 лет. Иметь дело с такими массивами информации немыслимо без привлечения технологии HPC. Важным фактором здесь также является простота использования и сопровождения кластеров под управлением WCCS.
А в мае нынешнего года стартовал совместный проект ГУ-ВШЭ, Microsoft и HP, в рамках которого будут разрабатываться новые методы решения задач в области финансовой инженерии и риск-менеджмента. Для этой цели в ГУ-ВШЭ будет установлен высокопроизводительный кластер HP на базе HP BladeSystem c3000 под управлением Windows Computer Cluster Server (Windows HPC Server 2008).
PC Week: Раз уж вы упомянули HPC Server 2008, то расскажите немного о новой версии этой системы. В чем ее особенности?
К. Ф.: Самая главная особенность новой версии — это то, что мы сделали систему “под ключ”, которая обладает технологиями, облегчающими задачу создания кластеров. Например, с ее помощью можно создать кластер из 256 узлов (оцениваемый примерно в 1 млн. долл. и входящий в Top100 суперкомпьютеров мира) всего за один час. Это практически невозможно ни с одной другой системой. Потому что то, что предлагают другие компании — IBM, HP, поставщики Linux, — это отдельное ПО для каждого узла, т. е. аналог Windows Compute Cluster Edition. А надстройки, которые позволяют сделать из этого кластер, продаются отдельными компаниями по частям.
Мы же собрали всё это воедино в одной системе WCCS 2008. Например, эта версия включает средства диагностики. После установки большого кластера основная сложность заключается в том, что незначительные отклонения в одном из узлов являются препятствием для достижения максимальной производительности кластера в целом. И этот узел необходимо выявить. Обычно для этого нужно вручную писать код для проведения диагностики или приобретать его отдельно.
Или, скажем, система отчетов. Департамент покупает кластер за полмиллиона долларов, и ему нужно отчитаться, насколько эффективно он его использует. С другими системами опять же надо искать какие-то открытые коды или покупать специализированные пакеты. А у нас это уже встроено в систему WCCS 2008, где можно раз в день или в неделю просто нажать кнопку и получить всю необходимую информацию.
Еще одно новшество связано с облегчением создания систем, в которых используются параллельные вычисления. В принципе их отладка занимает много лет, а в банковской сфере с ее высокой конкурентностью новые модели нужно создавать в течение нескольких дней и сразу же запускать их в действие. Поэтому мы дали научным работникам и аналитикам возможность писать обычные серийные программы, а уже потом распределять задачи на уровне нашей кластерной системы. Для этого в WCCS 2008 появилась специальная интегрированная система. В результате программистам не надо специально писать параллельные программы, что требует особых навыков, которыми располагают очень немногие. Данное новшество уже вызвало интерес у банковских учреждений, которые хотят разрабатывать модели для кредитных вычислений.
Второе важное отличие новой версии — это совместимость с корпоративными системами. Например, если предприятие, где используется Active Directory (это очень типично для машиностроения, банковской сферы), ставит кластерную систему Linux, то доступ к ней невозможен с помощью тех же паролей, что и для всех других ресурсов. В отличие от этого мы позволяем прямо из настольных приложений, например из Excel, включить работу на кластере, который потом может взять данные из любого хранилища, используя те же регистрационные данные, что были введены пользователем при запуске задачи. Кроме того, такая интеграция облегчает работу администраторов, которые должны отслеживать, какие работы выполняются в кластерах.
И наконец, третье отличие Compute Cluster Server 2008: мы сделали возможным 30%-ное повышение производительности средней системы. В середине июня в Дрездене мы объявили о том, что кластерная система из 1200 узлов, созданная на базе WCCS 2008, вошла в список Top25. Есть также система в Швеции, которая по производительности опережает все аналогичные решения в мире.
PC Week: И когда же появится WCCS 2008?
К. Ф.: Выпуск релиз-кандидата намечен на начало июля, а это значит, что мы уже написали всё, что собирались, а также выловили все ошибки. Теперь мы работаем с клиентами в разных странах, которые внедряют новую версию уже в производство. И мы будем ждать три месяца, чтобы получить от них отчеты о начальных внедрениях. Возможно, это поможет выявить еще какие-то ошибки. А затем в начале осени мы выпустим окончательный вариант. А до тех пор все желающие могут получить релиз-кандидат с нашего веб-сайта и начать пользоваться этим продуктом.
PC Week: Спасибо за беседу.