Servers in a data center

4 вещи, которым руководители центров обработки данных могут научиться у самых быстрых суперкомпьютеров

Если бы вы спросили прохожих на улице, что такое, по их мнению, суперкомпьютер, большинство из них, вероятно, ответили бы, ссылаясь на примеры из популярных фильмов — и, как правило, на примеры со скверной репутацией. От HAL 9000 из фильма «2001 год: Космическая одиссея» до VIKI из «Я, робот», и даже до Скайнет из фильма «Терминатор»; поп-культура часто упоминает суперкомпьютеры как разумные системы, которые развились и обратились против человечества.

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

Сегодня суперкомпьютеры имеют множество применений, которые находятся на переднем крае технического прогресса: от поисков месторождений нефти и газа до прогнозов погоды, финансовых рынков и разработки новых технологий. Суперкомпьютеры — это Lamborghini или Bugatti в компьютерном мире, и в компании Kingston мы уделяем большое внимание достижениям, которые расширяют границы компьютерных технологий. От использования и настройки DRAM (dynamic random access memory — динамическая память с произвольным доступом) до усовершенствования микропрограммного обеспечения в управлении массивами хранения данных и даже акцента на согласованность скорости передачи и задержек вместо пиковых значений — ультрасовременные возможности суперкомпьютеров глубоко повлияли на наши технологии.

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

Вычисления в режиме реального времени
1. Суперкомпьютеры специально созданы для обеспечения согласованности

В отличие от большинства платформ для облачных вычислений, таких как Amazon Web Services или Microsoft Azure, предназначенных для ускорения различных приложений, которые могут использовать общие ресурсы и инфраструктуры, большинство суперкомпьютеров специально созданы для конкретных нужд. В последнем обновлении списка TOP500 самых быстрых суперкомпьютеров в мире (общеизвестных и рассекреченных) отмечены не только местоположение и скорость установок, но и основная область их применения.

Одиннадцать из дюжины лучших машин предназначены для исследований в области энергетики, ядерных испытаний и применения в оборонном секторе. Единственным исключением является Frontera, новая финансируемая NSF (National Science Foundation — Национальный научный фонд (США)) система петафлопсных вычислений в Техасском центре передовых вычислений при Техасском университете, которая предоставляет академические ресурсы для партнеров по научным и инженерным исследованиям. Из следующих 20 суперкомпьютеров, включенных в список TOP500, почти все предназначены для правительственного применения в области обороны и разведки. Машины под номерами 30–50 в списке в основном предназначены для прогнозов погоды. Последние 50 из 100 являются сочетанием корпоративных вычислений (NVIDIA, Facebook и др.), прогнозов погоды среднего уровня, космических программ, поиска месторождений нефти и газа, академических и специфических задач правительства.

Эти машины не являются универсальным решением. Они специально разработаны совместно с такими производителями, как Intel, Cray, HP, Toshiba и IBM, для выполнения определенных типов вычислений с очень конкретными наборами данных — в режиме реального времени или асинхронных вычислений.

Они определили приемлемые пороги задержки:

  • Предварительно установить вычислительные ресурсы, использующие миллионы процессорных ядер.
  • Обеспечить тактовую частоту от 18 000 до 200 000 терафлопсов.

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

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

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

Кроме того, необходимо подумать о том, как добиться согласованной производительности, не требуя пользовательских сборок. Такие компании, как Amazon, Google и Microsoft, имеют бюджеты на разработку пользовательских хранилищ или вычислительных инфраструктур, но большинство поставщиков услуг должны быть более разборчивы в выборе готового оборудования.

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

сервер со светящимися линиями, представляющими сеть
2. Ваше реальное время — не мое реальное время

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

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

Возьмем, к примеру, прогнозы суперкомпьютера Национального управления океанических и атмосферных исследований (NOAA — National Oceanographic and Atmospheric Administration). Изменения метеорологических факторов происходят постоянно, будь то осадки, температура воздуха и земли, атмосферное давление, время суток, солнечные эффекты, ветер и даже то, как он проходит над местностью. Все эти факторы меняется каждую секунду и сообщаются как поток информации в реальном времени. Но Национальная метеорологическая служба (NWS — National Weather Service) NOAA не нуждается в необработанных данных вечно. Вам нужны модели прогнозирования! По мере формирования модели глобальной системы прогнозирования (ГСП) через нее проходят новые данные, формируя более точные и обновленные прогнозы.

Более того, местным метеорологам, которые обмениваются и получают данные от NWS, не нужен доступ ко всему глобальному набору данных о погоде. Они просто ограничивают свои модели местными районами. Это позволяет им дополнять данные NWS сведениями с местных метеорологических станций, таким образом предоставляя информацию о микроклиматах и ускоряя более точные локальные прогнозы путем создания партий данных, на которых производятся вычисления (будь то среднее значение, статистическая модель или алгоритм), и сохраняется именно результат.

То же самое можно сказать о торговле акциями или о финансовых моделях, которые работают со скользящими средними показателями — каждый с определенными индикаторами и встроенными триггерами действия, основанными на конкретных параметрах для приемлемых порогов поведения рынка. Система, спроектированная для использования данных «в реальном времени», не должна хранить все, что она принимает, а должна использовать энергонезависимую память с произвольным доступом (NVRAM — non-volatile random access memory) и динамическую память с произвольным доступом (DRAM) для кэширования и обработки промежуточных данных, а затем доставлять вычисленный результат в хранилище.

иллюстрация микросхемы флэш-памяти со светящимися печатными проводниками
3. Пороги задержки, флэш-память NAND и настройка DRAM

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

Суперкомпьютеры работают с предполагаемым бременем уровня обслуживания — будь то задержка, вычислительные ресурсы, хранилище или пропускная способность. В большинстве из них используются отказоустойчивые вычисления, благодаря которым система может перенаправлять потоки данных для оптимальных условий задержки (на основе 𝛱 синхронизации +Δmax), переход к асинхронным вычислительным моделям или расстановка приоритетов вычислительных ресурсов для обеспечения достаточной вычислительной мощности или пропускной способности для рабочих мест.

Независимо от того, работаете ли вы с передовыми рабочими станциями, железными серверами или выполняете HPC (high-performance computing — высокопроизводительные вычисления) и научные работы, большие компьютеры и большие данные требуют огромного объема DRAM. Суперкомпьютеры, такие как Tianhe-2, используют огромный объем ОЗУ в сочетании со специализированными платами ускорителей. Способы, с помощью которых суперкомпьютеры точно настраивают аппаратную часть и структуру контроллера, уникальны для дизайна приложения. Часто конкретные вычислительные задачи, когда доступ к диску создает очень узкие места по сравнению с требованиями к ОЗУ, делают DRAM непрактичной, но достаточно малы, чтобы поместиться во флэш-память NAND. Кластеры ППВМ также дополнительно настраиваются для каждой конкретной задачи, чтобы гарантировать, что большие наборы данных будут иметь огромные потери производительности, если им придется использовать традиционные носители для извлечения данных.

Сотрудничающие команды Университета Юты, Лаборатории Лоуренса Беркли, Университета Южной Калифорнии и Аргоннской национальной лаборатории, продемонстрировали новые модели автоматической настройки производительности (или автонастройки) в качестве эффективного средства обеспечения переносимости производительности между архитектурами. Вместо того, чтобы зависеть от компилятора, который может обеспечить оптимальную производительность на более новых многоядерных архитектурах, автоматически настраиваемые ядра и приложения могут автоматически настраиваться на целевой процессор, сеть и модель программирования.

изображение работающего в шлеме сотрудника ИТ-отдела с ноутбуком перед индикатором на лобовом стекле
4. Многоуровневая отказоустойчивость

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

Архитекторы используют комбинацию трансформаторов распределения потерь:

  • распределение постоянного тока и резервные ИБП;
  • тригенерация (создание электричества с помощью тепла для хранения в резервном хранилище);
  • активный мониторинг.
«Сохраняйте и сохраняйте часто» — мантра для любого приложения, и то же самое верно для центров обработки данных, где «резервное копирование» становится рабочим термином.

Большинство центров обработки данных сегодня работают с высокоуровневой структурой RAID (redundant array of independent disks — избыточный массив независимых дисков) для обеспечения непрерывной и почти одновременной записи в массивы хранения данных. Кроме того, инфраструктуры HPC используют большой объем NVRAM для кэширования данных в процессе, которые являются либо живыми потоками данных, которые не вытягиваются из массивов хранения, либо параллельно обрабатываемой информацией, таким образом создавая временный виртуальный диск для освобождения дополнительных вычислительных ресурсов. Общая емкость виртуальных дисков ранее упомянутой системы Frontera составляет 50 ПБ. Пользователи с очень высокими требованиями к пропускной способности или IOPS (input/output operations per second — количество операций ввода-вывода в секунду) смогут запросить выделение в файловой системе с полностью энергонезависимой памятью (NVMe) области размером приблизительно 3 ПБ и с пропускной способностью ~1,2 ТБ/с.

Постоянное резервное RAID-копирование хранилища и согласованное кэширование буферов NVMe зависят от общих порогов ввода-вывода для контроллеров на устройстве и от общей доступной или выделенной пропускной способности для удаленного хранения / резервного копирования.

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

Многие также гарантируют, что на случай сбоя всего остального в цепи, на SSD и DRAM установлены конденсаторы сбоя питания (P-Cap — power-fail (PFail) capacitor), также помеченные как защита от отказов системы электропитания (PLP — power-loss-protection). Конденсаторы P-Cap позволяют дискам (как независимым, так и по всему массиву) выполнять незавершенную запись, тем самым уменьшая объем данных, которые могут быть потеряны во время катастрофического сбоя.

Подведение итогов

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

Дополнительная продукция