Кирилл Фаенов о суперкомпьютерах и Microsoft

Автор: Юрий Ильин

Опубликовано 23 декабря 2010 года

- Вы возглавляете подразделение Microsoft Technical Computing. Как оно возникло? Насколько приоритетным является направление HPC и параллельных вычислений для Microsoft и почему?

- Компания Microsoft внимательно следит за рынком HPC с 2000 года, когда в суперкомпьютерах начали использоваться индустриально-стандартные процессоры Intel и AMD и стали появляться более дешёвые и доступные суперкомпьютерные устройства на базе локальных сетей обычных серверов. Мы увидели перспективы этого направления и в 2003 г. создали группу HPC. Её задачей было создание решения под ключ для ИТ-профессионалов, которые используют высокопроизводительные вычисления для решения математических задач и обработки массивов данных. Это направление является для нас успешным, мы выпустили три версии HPC-сервера.

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

Основные пользователи HPC - инженеры, учёные, аналитики. Они не программисты, не разработчики. Им нужны более удобные средства для обработки больших массивов данных, создания математических программ, которые, с одной стороны, могут отражать модели тех разработок, которые ими ведутся, с другой стороны, очень быстро масштабироваться на параллельные мощности.

Задача, которую мы поставили перед собой два года назад, когда создавали Technical Сomputing, - создание комплексных системных решений для всех участников рынка. Речь идёт не только об ИТ-профессионалах, которые создают HPC-мощности, но и о параллельных программистах, и о пользователях этих ресурсов, для которых важно облегчить процесс создания новых математических задач, новой аналитики на базе огромных массивов данных, распараллеливание этих задач и затем их эксплуатацию как внутри учреждений на собственных локальных мощностях, так и на новых облачных решениях, которые с большей эффективностью донесут мощности до более широкого круга пользователей.

Сейчас мы значительно увеличили объём инвестиций в это направление. HPC теперь - это часть Technical Сomputing. В него также включены решения для программистов, которым нужно облегчить задачу распараллеливания вычислений как на многоядерных и графических процессорах, так и на кластерах. В рамках Technical Сomputing есть и новое направление: это создание для учёных, инженеров и других пользователей HPC пакетов типа Excel, Mathlab, то есть решений, которые направлены на анализ математических данных, а не программирование.

- Какова, если угодно, "конечная цель" инициативы Technical Computing в Microsoft? Чего корпорация намеревается достичь этим? Кто в России является "адресатом" этой разработки?

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

Наши заказчики - это все компании, которые вынуждены управляться с огромными массивами данных, и те, кто строит математические модели для принятия решений, например рисков или погоды. Это уже не столько обработка данных, сколько построение прогнозов. Другой пример - расчёт прочности устройства в машиностроении. Например, с помощью таких расчётов нет необходимости постоянно проводить физические испытания, их заменяет математическая модель. В результате - бОльшая скорость разработки и меньшие затраты при создании продукта.

В центре того, о чём мы говорим, находятся математические модели. Мы анализируем данные, потом наше понимание того, что стоит за этими данными, облекается в математические модели, и затем эта модель используется для прогноза в будущем. Это новый виток в повышении эффективности принятия решений, когда принимаются во внимание гораздо более сложные массивы данных, а вычисления проводятся не просто по таблицам, например KPI, а с учётом значительно более сложных данных. Для этого необходима, с одной стороны, высокая компетенция сотрудников, привлечение математиков, статистиков и встраивание их в процесс работы, а также использование параллельных высокопроизводительных мощностей.

- Сейчас в мире чрезвычайно распространены кластеры на Linux. Насколько, как Вы считаете, Windows HPC Server способен их будет потеснить в Top500?

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

Они изначально использовали системы на базе Unix, и когда уже появились кластеры, то наиболее простым и оптимальным путём для них была миграция на Linux, ведь у них уже были специалисты для этого и вся необходимая инфраструктура. С точки зрения программного обеспечения сегодня Linux и Windows обеспечивают одинаковые показатели скорости работы. Другой вопрос, что существуют и другие рынки - не Top500, а Top500000 суперкомпьютеров или кластеров, которые не стоят миллионы долларов. Мы нацелены именно на этот рынок, а также на новые организации, которые разворачивают суперкомпьютеры.

Следует отметить, что очень многие научные учреждения из списка Top500 также используют Windows на своих суперкомпьютерных мощностях, когда речь идёт не о достижении максимальной производительности, а о работе в каждодневном режиме. Нередко суперкомпьютеры, которые фигурируют в рейтинге, практически не используются как единая система.

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

- В интервью "Компьютерре" представители компании "Т-Платформы" говорили о том, что в России рынка HPC как такового в общем-то и не существует. Какова Ваша точка зрения на этот вопрос? Согласны Вы с этим тезисом или нет и почему?

- На мой взгляд, нужно чётко представлять, что именно понимается под рынком HPC. Если его рассматривать только с точки зрения существующих пользователей больших суперкомпьютеров, то рынок этот небольшой. Причём это характерно не только для России, но и для мира в целом. И этот рынок практически не увеличивается. Так сложилось исторически.

Вопрос в другом: есть ли спрос на использование математического моделирования и какие стоят преграды к созданию более широкого рынка, который мог бы обеспечить эти требования и восполнить их не только большими суперкомпьютерами, но и другими решениями, например персональными кластерами, облачными решениями и т.д. На мой взгляд, потенциал для использования математических систем принятия решений в России огромен. Если посмотреть на успехи научного подхода в Советском Союзе, заделы были гигантские. Существовали целые институты кибернетического подхода к системному моделированию и планированию экономики всей страны. Если обратить внимание на использование математического аппарата в самых разных областях, СССР и Россия делали огромные успехи в этой области.

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

- Как Вы оцениваете перспективы параллельных и высокопроизводительных вычислений в мире в целом? Останутся ли они, если угодно, привилегией научно-исследовательской сферы? Возможно ли, что со временем параллельные и/или высокопроизводительные вычисления станут таким же повседневным явлением, каким стал интернет?

- Интернет, как и суперкомпьютеры, вышел из научных и военных лабораторий. Сегодня интернет доступен всем. Мне кажется, то же самое произойдёт и с высокопроизводительными вычислениями. Такие решения очень востребованы самими разными предприятиями - я уже описывал задачи расчёта рисков. Понятно, что практически любое предприятие сможет при наличии доступных прикладных пакетов и дешевых мощностей использовать высокопроизводительные вычисления. И для конечных пользователей HPC очень интересны, например, решение всевозможных задач "по требованию". Например, мы все смотрим прогноз погоды по ТВ. И он часто совершенно не соответствует тому, что происходит на самом деле.

Когда я спросил у коллег из японского института, где мы построили петафлопный суперкомпьютер, для чего он им нужен, они ответили: для расчёта погоды на сетке размером меньше километра.

Это значит, что разрешение этой модели позволит предсказать погоду на каждый квадратный километр. Это очень важно для Японии - когда идет тайфун, можно будет предсказать, в какой деревне пройдет ливень, который может привезти к оползням и селевым потокам. Теперь каждая деревня может рассчитать для себя свою собственную погоду.

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

И сегодня это активно используется. Например, "Яндекс.Карты" показывают загруженность движения. Я думаю, что в течение следующих двух-пяти лет появится возможность рассчитать оптимальный путь по Москве с учетом динамически развивающейся ситуации на дорогах. Если говорить о медицине и более сложных комплексных обработках, о которых я говорил, все это станет возможным примерно через десять лет.

А в ближайшие пять лет студентам, инженерам и учёным благодаря облачным вычислениям станут доступны фантастические компьютерные мощности. Правда, чтобы это стало возможным, необходимо снять два барьера: увеличить количество людей, способных не только в отдельных областях заниматься научными решениями, но и выражать их в математических моделях на компьютерах.

По всему миру это наиболее востребованные специалисты, и их сейчас не очень много. Вторая задача - создание новых бизнес-моделей; например, очень пригодился бы сервис расчёта наиболее оптимального пути по загруженной Москве. Нужно понять, как вы будете за это платить, кто эту услугу сможет предоставлять.

Облако станет одним из двигателем HPC. Облачные решения откроют возможности больших мощностей любому пользователю. Следующая задача - чтобы пользователи смогли работать с этими мощностями. Для этого нужно, чтобы создание программ, которые способны к масштабным обработкам данных или масштабным расчётам, было облегчено.

Именно поэтому мы создали группу Technical Сomputing. Мы понимали, что, развивая только HPC, мы делали огромные мощности всё более доступными. Но, как показывает практика, они остаются отчасти не загруженными, так как не хватает новых программ, которые смогут их использовать.

Поэтому одновременно с решением задачи предоставить мощности через облачные решения необходимо облегчить создание параллельных математических моделей. Вот один из примеров: наш новый HPC Server 2008 R2 позволяет работать с Excel. Таким образом, мы расширили число специалистов, которые смогут задействовать большие мощности без необходимости обращаться к профессионалам, которые знают, как распараллеливать эти решения. Благодаря такой интеграции страховые компании - у нас уже есть примеры - за несколько часов могут сделать расчёт риска страховых полисов, что раньше занимало несколько дней.