Поделиться через


Введение в высокопроизводительные вычисления (HPC) в Azure

Общие сведения об HPC

Высокопроизводительные вычисления (HPC), также называемые "большими вычислениями", используют большое количество компьютеров на основе ЦП или GPU для решения сложных математических задач.

Во многих отраслях HPC используются для решения самых сложных проблем. Сюда входят следующие рабочие нагрузки:

  • Геномика
  • модели для нефтяной и газовой промышленности;
  • Финансы
  • разработка полупроводников;
  • Инженерия
  • Моделирование погоды

Чем отличается HPC в облаке?

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

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

Контрольный список для реализации

Если вам нужно реализовать собственное решение HPC в Azure, см. следующие материалы:

Инфраструктура

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

Вычисления

Azure предлагает решения разных размеров. Все они оптимизированы для рабочих нагрузок, которые потребляют много ресурсов ЦП и GPU.

Виртуальные машины на основе ЦП

Виртуальные машины с поддержкой GPU

Виртуальные машины серии N оснащены графическими процессорами NVIDIA и предназначены для приложений с ресурсоемкими вычислениями или графикой, в том числе для обучения искусственного интеллекта (AI) и визуализации.

Хранилище

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

Дополнительные сведения о сравнении Lustre, GlusterFS и BeeGFS в Azure см . в электронной книге Azure и Lustre в блоге Azure .

Сеть

Виртуальные машины H16r, H16mr, A8 и A9 могут подключаться к сети RDMA серверной части с высокой пропускной способностью. Эта сеть может повысить производительность тесно связанных параллельных приложений, работающих в интерфейсе передачи сообщений Майкрософт, более известном как MPI или Intel MPI.

Управление

Сделай сам

Создание системы HPC с нуля в Azure обеспечивает значительную гибкость, но часто очень интенсивное обслуживание.

  1. Настройте собственную среду кластера на виртуальных машинах Azure или Масштабируемые наборы виртуальных машин.
  2. Использование шаблонов Azure Resource Manager для развертывания лучших диспетчеров рабочих нагрузок, инфраструктуры и приложений.
  3. Выберите размеры ВМ с поддержкой HPC и графического процессора, которые включают в себя специализированное оборудование и сетевые подключения для рабочих нагрузок MPI или графического процессора.
  4. Добавьте высокопроизводительные хранилища для рабочих нагрузок с интенсивным вводом-выводом.

Гибридные облачные решения и динамическое масштабирование в облаке

Если у вас есть локальная система HPC, которую вы хотите подключить к Azure, есть несколько ресурсов, которые помогут вам приступить к работе.

Для начала ознакомьтесь с вариантами подключения к локальной сети в Azure. Здесь можно найти дополнительные сведения об этих параметрах подключения:

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

Решения из Marketplace

В Azure Marketplace предлагается множество диспетчеров рабочих нагрузок.

Пакетная служба Azure

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

Разработчики или поставщики SaaS могут использовать Batch SDK и инструменты для интеграции приложений HPC или контейнерных рабочих нагрузок с Azure, подготовки данных в Azure и создания конвейеров выполнения заданий.

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

На схеме показан пример архитектуры HPC для службы Azure Batch.

Azure CycleCloud

Azure CycleCloud — самый простой способ управлять рабочими нагрузками HPC в Azure с помощью любого планировщика, например Slurm, Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro или Symphony.

CycleCloud позволяет:

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

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

Облачная собственная модель

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

На схеме показан пример архитектуры HPC для CycleCloud в Azure в облачной собственной модели.

Диаграмма сравнения

Функция Пакетная служба Azure Azure CycleCloud
Планировщик Пакетные API и средства и скрипты командной строки в портале Azure (cloud native). Используйте стандартные системы планирования HPC, такие как Slurm, PBS Pro, LSF, Grid Engine и HTCondor, или расширьте модули CycleCloud для автомасштабирования для работы с собственной системой планирования.
Вычислительные ресурсы Программное обеспечение как услуга, узлы – платформа как услуга Платформа как услуга (PaaS) — платформа как услуга (PaaS)
Инструменты мониторинга Azure Monitor Azure Monitor, Grafana
Пользовательская настройка Пользовательские пулы образов, сторонние образы, пакетный доступ к API. Использование комплексного API RESTful для настройки и расширения функциональных возможностей, развертывания собственного планировщика и поддержки в существующих диспетчерах рабочих нагрузок
Интеграция Конвейеры Synapse, Фабрика данных Azure, Azure CLI Встроенный интерфейс командной строки для Windows и Linux
Тип пользователя Разработчикам Классические администраторы и пользователи HPC
Вид работы Пакетная обработка, рабочие процессы Жёстко связанный (Интерфейс передачи сообщений/MPI).
Поддержка Windows Да Вариируется, в зависимости от выбора планировщика

Диспетчеры рабочих нагрузок

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

Контейнеры

Для управления некоторыми рабочими нагрузками HPC также можно использовать контейнеры. Такие решения, как Служба Azure Kubernetes (AKS), упрощают развертывание управляемого кластера Kubernetes в Azure.

Управление затратами

Управление затратами HPC в Azure может осуществляться разными способами. Чтобы определить наиболее подходящий для вас способ, ознакомьтесь с вариантами приобретения Azure.

Безопасность

Общие сведения об обеспечении безопасности в Azure см. в документации по системе безопасности Azure.

Помимо конфигураций сети, доступных в разделе "Ускорение облака", можно реализовать конфигурацию концентратора и периферийной сети для изоляции вычислительных ресурсов:

Приложения HPC

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

Примечание.

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

Инженерные приложения

Графика и отрисовка

Искусственный интеллект и глубокое обучение

Поставщики MPI

Удаленная визуализация

Запустите виртуальные машины с поддержкой GPU в Azure в том же регионе, что и выходные данные HPC для наименьшей задержки, доступа и визуализации удаленно через виртуальный рабочий стол Azure.

Тесты производительности

Истории клиентов

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

Другие важные сведения

Следующие шаги

Последние объявления см. в следующих ресурсах:

Примеры пакетной обработки Microsoft

В этих руководствах содержатся сведения о выполнении приложений в Microsoft Batch: