Pull to refresh
141.88
Rating

Проблемы суперкомпьютера в средней полосе

Intel corporate blog
Третья серия программы «5 недель с компанией Intel» посвящена высокопроизводительным вычислениям (high-performance computing, HPC) — так на профессиональном жаргоне называются суперкомпьютеры и расчеты, которые на них производятся.

image
Эта картинка имеет отношение к посту


Константин Замков Константин Замков, специалист по корпоративным технологиям, занимается в Intel тем, что называется presale, его основная задача — технические консультации крупных заказчиков по процессорам, платформам и технологиям как в сфере HPC, так и в традиционной IT-среде. Константин помогает заказчику интегрировать эти решения в своей IT-инфраструктуре. На фотографии до ката Константин вспоминает детство :)

image

Андрей Семин Андрей Семин — технический директор Intel по высокопроизводительным вычислениям в регионе EMEA. Занимается HPC в Intel более 10 лет, с 1999 года. До 2004 года работал в в московском офисе, а затем переехал в Мюнхен, чтобы руководить группой инженеров, которые помогают использовать и применять технологии HPC на базе платформ Intel как разработчикам, продавцам и пользователям программного обеспечения (например, многие коммерческие компании самостоятельно разрабатывают суперкомпьютерное ПО для своих нужд), так и конечным пользователям HPC-систем — от корпоративные клиентов из автопрома или нефтегаза до государственных организаций типа метеорологических служб.

Андрей, раз у Вас такая большая и серьезная должность, Вы можете взглянуть назад и попробовать сформулировать, что поменялось за последние 5-7 лет в области высокопроизводительных вычислений в России?

Андрей Семин: Российский рынок мне ближе, чем любой другой в Европе, поэтому я довольно внимательно слежу за тем, что с ним происходит. В начале 2000-х Россия практически не была представлена в суперкомпьютерной индустрии, был всего один крупный центр, МСЦ РАН, который занимается HPC лет 20. Были центры поменьше, например, в сибирском отделении Академии наук и в Курчатовском институте, но это были инициативы меньших масштабов, не попадавшие в суперкомпьютерный список Top500.

Ближе к середине 2000-х произошел переломный для отрасли момент, и российские системы начали появляться в Top500: сначала их было 2-3, затем 6-8, в последнем, июньском списке таких суперкомпьютеров 11. Во многом это заслуга того, что государственное финансирование суперкомпьютерной программы стало более целенаправленным. В 2002-м была создана программа СКИФ, которая стала постепенно финансировать создание кластеров в университетах: в Томском государственном, Южно-уральском, Московском государственном и так далее.

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

Любопытно, что в последней редакции списка Top500 в российском академическом секторе оказалось 5 систем, а остальные 6 систем — больше половины из российских — оказались в коммерческом секторе: в банках и в других компаниях, использующих HPC для ведения бизнеса. Это говорит о том, что, с одной стороны, появились специалисты, которые умеют эксплуатировать суперкомпьютерные системы, а с другой стороны, в коммерческом секторе стали появляться люди, которые понимают важность использования высокопроизводительных систем. Например, в банковском секторе HPC обычно используются для оценки рисков инвестиционных портфелей.

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

Есть примеры высокотехнологичных заказчиков?

Константин Замков: Да, например, российская компания Rock Flow Dynamics, занимающаяся созданием специализированного ПО для нефтегазовой промышленности. Мы очень хорошо дружим с RFD, они всегда пробуют наши самые последние разработки, в частности — самые новые процессоры.

Rock Flow Dynamics — российская команда из 20 математиков, физиков и инженеров, разрабатывающая tNavigator — специализированный продукт для компьютерного моделирования нефтегазовых месторождений.

image

RFD — уникальный случай и в отечественной, и в мировой практике; за пять лет работы над tNavigator бывшие выходцы из «Юкоса» создали передовое программное обеспечение, запросто конкурирующее с ПО лидера отрасли Шлюмберже (80 тыс. человек в штате и годовой оборот за 2009 год более $20 млрд). tNavigator — интерактивное визуальное приложение, радикально отличающееся от принятых в нефтесервисной отрасли программ, работающих в режиме командной строки. Впрочем, растущий к tNavigator интерес объясняется и тем, что пакет хорошо оптимизирован для многоядерных настольных систем на базе процессоров Intel. Василий Шелков, руководитель RFD:

image

Мы познакомились с Intel в самом начале нашего пути, в 2005 году, и сотрудники компании убедили нас, что будущее за многоядерными процессорами и параллельным программированием, так что мы начинали разработку, уже исходя из того, что наш пакет будет работать на многоядерном оборудовании. ПО наших конкурентов, таких, как Шлюмберже, к тому моменту существовало на рынке уже 20-30 лет. Понятно, что вычислительные реалии тогда и сейчас заметно различаются, так что даже при всей мощи и параллельности их решений на практике они теряют коэффициент 2 на современных системах из-за того, что они не используют все технологии, которые можно использовать в разработке ПО.

image

Примером работы tNavigator на последних Intel Xeon серии 7500 может являться проект для компании ВолгоУралНИПИгаз: модель месторождения, которую выполняло прошлое поколение оборудования и другое ПО, обсчитывалась более 12 часов; tNavigator в связке с Xeon 7500 решает эту же задачу за час и двадцать минут.

image

Кто в России занимается разработкой и внедрением HPC-решений?

Андрей Семин: В России есть две основные компании, занимающиеся разработкой собственного дизайна суперкомпьютеров: компания Т-Платформы и РСК СКИФ. Есть и несколько компаний, которые делают высокопроизводительные кластеры на базе стандартных компонентов, такие, как R-Style, Сторус, Aquarius и Kraftway. Они тоже оказывают влияние на рынок, хотя и используют в своих решениях стандартные компоненты.

Недавно компания Intel обновила свои линейки серверных процессоров. Складывается впечатление, что для высокопроизводительных решений Intel старается максимально сохранить и процессорные разъемы, и прочую обвязку на материнских платах. Насколько новинки совместимы со старым оборудованием?

Константин Замков: Сокет действительно совместим, но с материнскими платами есть нюансы, связанные, например, с регуляторами напряжения процессоров. Поскольку производителей достаточно много, то кто-то из них лучше, а кто-то хуже следует тем рекомендациям или референс-дизайнам, которые дает Intel. У тех, кто более аккуратно следует нашим рекомендациям, с совместимостью лучше. К сожалению, этого нельзя сказать о всех производителях.

В конечном итоге получается, что одни производители обходятся обновлением BIOS, после которого новое оборудование прекрасно работает, а вот другим приходится выпускать новые ревизии материнских плат. Вопрос в том, что это будет означать для конечного заказчика? Если он уже закупил системы и просто хочет заменить в них процессоры, что само по себе не такой уж и распространенный случай, все будет зависеть от конкретного производителя решения.

Среди обновленных Xeon был представлен отказоустойчивый процессор, который в случае критического сбоя не обрушивает систему.

Константин Замков: Да, это Xeon серии 7500 c кодовым названием Nehalem-EX. Одно из применений процессоров этого семейства — то, что называется mission critical приложения.

А есть примеры применения mission critical решений?

Константин Замков: Классическим примером можно назвать системы биллинга. Взять, допустим, биллинг операторов сотовой связи — как известно, технология обмена данными между операторами о стоимости услуг роуминга несколько несовершенна, так что если система биллинга отдельного оператора падает, то это означает, что такие данные уйдут в никуда и компания будет терять деньги. Я могу только догадываться о масштабах проблемы, но час простоя такой системы может означать потерю сотен тысяч долларов.

Андрей Семин: К слову, платформа Xeon 7500 интересна не только для mission critical, но и для HPC-приложений потому, что по сравнению с предыдущей платформой, построенной на базе Xeon 7400, пропускная способность памяти на то же количество процессоров у Xeon 7500 выросла в 8 раз.

Но ведь это узкое место многих HPC-систем?

Андрей Семин: Да, для приложений в сфере HPC производительность памяти очень важна, потому что объемы обрабатываемых данных огромны, так что восьмикратное увеличение пропускной способности памяти очень позитивно отражается на производительности приложений.

Существует много вертикальных рынков применения HPC-решений: химическая промышленность, биоинформатика, финансы, нефтегаз и так далее. Внутри некоторых вертикалей есть области, где альтернатив применению платформ вроде Xeon 7500 нет. Примерами тут могут быть некоторые задачи в производственной сфере, моделирование аэродинамических или газодинамических свойств, потоков жидкостей и так далее. Создание сеток, как правило, не параллелится на кластер из нескольких узлов. Как правило, наиболее эффективно использовать одну систему с достаточно большим количеством памяти — до терабайтов памяти в одном сервере. При этом создание сетки, само время счета может занимать несколько часов или даже дней, в зависимости от модели. Соответственно если в процессе этой работы сервер отказывает — вылетает диск, вылетает модуль памяти, просто что-то происходит, то всю работу приходится начинать сначала. В таких случаях требуется комбинация свойств отказоустойчивости вместе с другими показателями (например, все те же объемы памяти).

Другая область, где применяются отказоустойчивые системы — в химической промышленности, где некоторые пакеты моделирования написаны достаточно давно. Этим программным продуктам по 20–25 лет. Они проверены, опробованы в течение последних десятков лет и имеют большое количество сертификатов, их очень сложно поменять по бизнес-критериям. Такие пакеты, как GAUSSIAN, эффективно используют до 32 ядер, а после 32 ядер на большинстве моделей не дают прироста производительности, но зато требуют большие объемы памяти (терабайты), а время счета моделей длится несколько дней или даже десятков дней.

Один из примеров, о которых мы можем говорить публично — случай с немецкой химической компанией BASF. У них были программные пакеты, которые работали на одном сервере не переставая в течение нескольких дней от начала приложения и до получения результата. Соответственно, любая остановка в течение этих полутора месяцев приводила к тому, что нужно было начинать работу заново. Мы с BASF проводили мероприятия по оптимизации их ПО и сократили время счета примерно до одного дня, но даже один день для сервера, работающего под полной нагрузкой, это достаточно стрессовый режим работы, так что все компоненты такой системы должны быть отказоустойчивы, обрабатывать ошибки и самовосстанавливаться.

Приложение не могло адекватно масштабироваться на большое количество ядер?

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

А как твердотельные диски (SSD) используются в HPC?

Андрей Семин: SSD имеет несколько преимуществ, прежде всего — высокое количество операций ввода/вывода, что важно, поскольку в HPC достаточно много приложений, реально использующих активный ввод/вывод — пример BASF тут показателен. Во многих других областях та же картина: реальные приложения используют большие объемы данных. Эти объемы данных создаются либо каким-то физическим экспериментом, либо методом моделирования на рабочей станции, и затем обрабатываются в программном пакете.

SSD пока не всегда являются эффективным способом решения проблем хранения данных, потому что по цене за бит хранения информации SSD пока дороже обычных дисков. Но многие HPC-приложения получают достаточно большой прирост производительности за счет использования SSD. У нас был пример такого использования для приложений типа NASTRAN, такие приложения занимаются задачами структурной механики. NASTRAN — программный пакет для анализа устойчивости конструкций к различного рода механическим деформациям. C использованием SSD на платформе Nehalem мы получили порядка 20% прироста производительности — и все это не меняя процессоры, только засчет SSD.

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

Как HPC-программы, которыми занимается Intel, соединяются с академическим миром?

Андрей Семин: Intel в России вкладывает довольно много усилий в поддержку HPC. У нас уже сложилась HPC-инфраструктура, так Intel свою роль видит в большей демократизации HPC, в том, чтобы высокопроизводительные вычисления стали доступными более широкому кругу пользователей.

Сейчас вопрос состоит в том, чтобы расширить область применения HPC за пределы типичных отраслей — нефтегаз, моделирование погоды и т.д. Есть несколько таких инициатив в академической области, например, использование HPC в лингвистике для анализа текстов, для анализа человеческой речи и так далее. Кроме того, мы проводим различные конкурсы для понимания того, в каких областях могут применяться HPC. В частности, проводится уже третий конкурс под названием «Невозможное стало возможным: реальные приложения для HPC», его основная цель — найти и поддержать разработку приложений в тех областях науки и техники, в которых есть определенные задачи, раннее считавшиеся нерешаемыми. В этом году конкурс проходит при поддержке Роснано и консорциума СКИФ уже в третий раз. Стоит сказать, что к приличному призовому фонду добавляется еще и полтора миллиона процессорных часов на суперкомпьютере, чтобы победители имели возможность обсчитывать свои прикладные задачи на ведущих суперкомпьютерах России. За первое место автор получит 250 000 рублей от компании Intel, как и не исключены подарки от других партнеров.

image

Почему вы занимаетесь HPC?

Андрей Семин: Для меня высокопроизводительные вычисления (HPC) это инструмент, который позволяет решать задачи, которые раньше считались абсолютно нерешаемыми. Только представьте можно привести пример, что такое большой суперкомпьютер: большой суперкомпьютер Jaguar, занимающий первое место в списке Top500, за каждую секунду выполняет такое количество операций, на которое шести миллиардам человек, работающим без остановки круглые сутки, потребовалось бы 47 лет. Это огромная вычислительная мощность, которая позволяет находить численное решение для задач, которое невозможно найти аналитически, с помощью научных методов. Результат всех этих вычислений означает повышение качества жизни людей: создание и применение новых лекарств, создание более безопасных и быстрых автомобилей, удешевление разного рода материалов и продуктов.

Какого рода вопросы вам будет интересно обсудить с читателями?
NB: большое количество технических вопросов по процессорам Xeon регулярно обсуждается в онлайновых чатах со специалистами Intel. Возможно, исчерпывающий ответ на ваш вопрос уже есть.

Константин Замков: С удовольствием поговорю о серверных процессорах, платформах, решениях и серверах различных производителей. Но можно затронуть и другие темы: настольные ПК и ноутбуки, и то, что связано с процессорной технологией Intel vPro.

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

+ Кстати, на прошлой неделе, посвященной рассказу о Intel Labs, «победителем» стал пользователь Rule, с чем мы его и поздравляем.
Не забывайте подключаться к блогу компании на Хабре!
Автор иконок — Yusuke Kamiyamane

Продолжение следует.
Tags:IntelHPC
Hubs: Intel corporate blog
Total votes 59: ↑41 and ↓18+23
Views15K
Comments Comments 70

Information

Founded
Location
США
Website
www.intel.ru
Employees
5,001–10,000 employees
Registered
Representative
Victoria Zhislina

Habr blog