Публикации
2023 г. – новый этап практического применения CXL, статья
VMware сдвигает акцент в проекте Capitola на CXL, статья
Dell Validated Design for Analytics — Data Lakehouse: интегрированное хранилище данных, статья
OCP Global Summit: решения для Computational Storage и компонуемых масштабируемых архитектур, статья
Samsung CXL MemoryySemantic SSD: 20M IOPs, статья
UCIe – открытый протокол для взаимосвязи чиплетов и построения дезагрегированных инфраструктур, статья
Omni-Path Express – открытый интерконнект для экзафлопных HPC/AI-систем, статья
GigaIO: CDI_решение на базе AMD для высшего образования, статья
Энергоэффективные ЦОД на примерах решений Supermicro, Lenovo, Iceotope, Meta, статья
От хранилищ данных и “озер данных” к open data lakehouse и фабрике данных, статья
EuroHPC JU развивает НРС-экосистему на базе RISC-V, статья
LightOS™ 2.2 – программно-определяемое составное блочное NVMe/TCP хранилище, статья
End-to-end 64G FC NAFA, статья
Computational Storage, статья
Технология KIOXIA Software-Enabled Flash™, статья
Pavilion: 200 млн IOPS на стойку, статья
CXL 2.0: инновации в операциях Load/Store вводаавывода, статья
Тестирование референсной архитектуры Weka AI на базе NVIDIA DGX A100, статья
Fujitsu ETERNUS CS8000 – единая масштабируемая платформа для резервного копирования и архивирования, статья
SmartNIC – новый уровень инфраструктурной обработки, статья
Ethernet SSD, JBOF, EBOF и дезагрегированные хранилища, статья
Compute, Memory и Storage, статья
Lenovo: CXL – будущее серверов с многоуровневой памятью , статья
Liqid: компонуемые дезагрегированные инфраструктуры для HPC и AI, статья
Intel® Agilex™ FPGA, статья
Weka для AI-трансформации, статья
Cloudera Data Platform – “лучшее из двух миров”, статья
Fujitsu ETERNUS DSP - разработано для будущего, статья
Технологии охлаждения для следующего поколения HPC-решений, статья
Что такое современный HBA?, статья
Fugaku– самый быстрый суперкомпьютер в мире, статья
НРС – эпоха революционных изменений, статья
Новое поколение СХД Fujitsu ETERNUS, статья
Зональное хранение данных, статья
За пределами суперкомпьютеров, статья
Применение Intel® Optane™ DC и Intel® FPGA PAC, статья
Адаптивные HPC/AI-архитектуры для экзаскейл-эры, статья
DAOS: СХД для HPC/BigData/AI приложений в эру экзаскейл_вычислений, статья
IPsec в пост-квантовую эру, статья
LiCO: оркестрация гибридныхНРС/AI/BigData_инфраструктур, статья
 
Обзоры
Все обзоры в Storage News
 
Тематические публикации
Flash-память
Облачные вычисления/сервисы
Специализ. СХД для BI-хранилищ, аналитика "больших данных", интеграция данных
Современные СХД
Информационная безопасность (ИБ), борьба с мошенничеством
Рынки
Конфигурирование технологии Intel QuickAssist в Linux VM на Lenovo ThinkSystem серверах

23, март 2023  — 

https://lenovopress.lenovo.com/lp1709-configuring-intel-quickassist-technology-in-a-linux-vm
Технология Intel® QuickAssist (QAT) — это функция масштабируемых процессоров Intel Xeon, которая обычно используется для разгрузки задач ЦП сервера, таких как массовое шифрование, сжатие, распаковка и шифрование с открытым ключом.
Клиентам, использующим виртуализацию, QAT предоставляет эксклюзивный доступ к виртуальным машинам с использованием метода, известного как сквозная передача устройств PCI. Это позволяет удалять устройства PCIe QAT с хоста и назначать их отдельным гостям.
Технология Intel QuickAssist 2.0 теперь также поддерживает виртуализацию ввода-вывода с одним корнем (SR-IOV, Single Root I/O Virtualization) и масштабируемую виртуализацию ввода-вывода (SIOV, Scalable I/O Virtualization), чтобы обеспечить поддержку большего количества гостевых операционных систем. Начиная с масштабируемых процессоров Intel Xeon 4-го поколения, можно разделить физическое устройство QAT на несколько виртуальных устройств и назначить виртуальные устройства нескольким гостевым ОС. Концептуально гостевые операционные системы разделяют производительность одного физического QAT.
В этом документе представлены рекомендации по включению QAT SR-IOV и передаче через виртуальное устройство на виртуальную машину, работающую в ОС на основе виртуальной машины ядра (KVM, Kernel Virtual Machine). Этот документ предназначен для администраторов Linux, которые хотят использовать QAT на сервере ThinkSystem для перехода к виртуальной машине. Все настройки основаны на RHEL9.1 (как хост-ОС, так и гостевая ОС) и ЦП Intel с QAT.
Введение

Технология Intel® QuickAssist (QAT) — это функция масштабируемых процессоров Intel Xeon, которая обычно используется для разгрузки задач ЦП сервера, таких как массовое шифрование, сжатие, распаковка и шифрование с открытым ключом.

Клиентам, использующим виртуализацию, QAT предоставляет эксклюзивный доступ к виртуальным машинам с использованием метода, известного как сквозная передача устройств PCI. Это позволяет удалять устройства PCIe QAT с хоста и назначать их отдельным гостям.

Однако с крупномасштабным развертыванием виртуальных машин среде облачных вычислений требуется все больше и больше ресурсов QAT. Технология Intel QuickAssist 2.0 поддерживает виртуализацию ввода-вывода с одним корнем (SR-IOV) и масштабируемую виртуализацию ввода-вывода (SIOV), чтобы обеспечить поддержку большего количества гостевых операционных систем. Начиная с масштабируемых процессоров Intel Xeon 4-го поколения, можно разделить физическое устройство QAT на несколько виртуальных устройств и назначить виртуальные устройства нескольким гостевым ОС. Концептуально гостевые операционные системы разделяют производительность одного физического QAT.

Аппаратная архитектура

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

Процессоры Intel Xeon 4-го поколения («Sapphire Rapids») имеют 0, 1, 2 или 4 ускорителя QAT, в зависимости от SKU процессора. Дополнительные сведения см. в таблице характеристик процессора в руководстве по продукту SR630 V3:
https://lenovopress.lenovo.com/lp1600-thinksystem-sr630-v3-server#processor-features .

Рис. 1. Intel QAT в архитектуре системы Sapphire Rapids (из документа Intel ID № 611488: Спецификация внешнего дизайна процессора Sapphire Rapids, том первый: Архитектура)

В процессорах Intel Xeon Scalable 4-го поколения («Sapphire Rapids») QAT представляет собой ускоритель, интегрированный в корневой комплекс, который рассматривается как RCiEP (интегрированная конечная точка корневого комплекса), что означает, что QAT также является устройством PCIe, физическим устройством. Идентификатор — 0x4940, а идентификатор виртуального функционального устройства — 0x4941.

В частности, для процессоров 4-го поколения каждый процессор имеет до четырех конечных точек QAT PCIe в одном корпусе ЦП, а аппаратное обеспечение предоставляет хосту одну физическую функцию (PF) на каждую конечную точку QAT PCIe. Когда SR-IOV включен, каждая физическая функция (PF) поддерживает до 16 виртуальных функций (VF), одна или несколько VF могут быть переданы разным гостям/VM, а одна или несколько PF могут быть переданы одной виртуальной машине.

Режим виртуализации

Поддерживаются три различных метода виртуализации, как показано на следующем рисунке: прямое назначение физического устройства, ввод с одним корнем (SR-IOV) и масштабируемый ввод в действие.

Рис. 2. Модель развертывания виртуализации для Intel® QAT 2.0 (из документа Intel ID № 743912: Руководство программиста Intel QuickAssist Technology Hardware Version 2.0)

При прямом назначении физического устройства, показанном в левой части рисунка 2, QAT как устройство PCIE отображается как физическая функция (PF), каждый QAT имеет только один PF, каждый PF может быть передан только одной гостевой ОС, один или несколько PF могут быть переданы одной гостевой ОС.

При использовании Single Root IOV (SR-IOV), показанном в середине рисунка 2, каждое устройство QAT может предоставлять один PF и несколько виртуальных функций (VF), максимальное количество VF составляет 16 в процессорах Intel Xeon Scalable 4-го поколения. Одна или несколько VF могут быть переданы в другую гостевую ОС.

Масштабируемый IOV (SIOV) справа находится в разработке. SIOV обеспечивает гибкую композицию виртуальных функций с помощью программного обеспечения из собственных аппаратных интерфейсов вместо реализации полного интерфейса виртуальных функций (VF) SR-IOV. Устройства SIOV предоставляют облегченные интерфейсы назначаемых устройств (ADI), которые оптимизированы для операций быстрого пути (пути данных) от гостя. SIOV использует PASID, а не BDF для идентификации уникальных адресных пространств, что обеспечивает лучшую масштабируемость. Масштабируемые процессоры Intel Xeon 4-го поколения имеют до 64 ADI на сокет.

Архитектура программного обеспечения

API-интерфейсы Intel QAT устанавливают интерфейс для доступа к оборудованию QAT. Благодаря API-интерфейсам QAT детали аппаратной и программной архитектуры прозрачны для пользовательских приложений. Тем не менее, некоторое знание базового оборудования и программного обеспечения полезно для оптимизации производительности и отладки.

Краткий обзор программного стека показан на рисунке ниже.

Рис. 3. Архитектура программного обеспечения Intel QAT (из документа Intel ID № 743912: Руководство программиста Intel QuickAssist Technology Hardware Version 2.0)

В двух словах, есть три процесса для обработки запросов.

  1. Приложения отправляют полезные данные с помощью API QuickAssist как часть запроса. Библиотека QuickAssist в пользовательском пространстве помогает преобразовывать эти запросы в дескрипторы и помещать их в кольцо передачи (кольцо передачи, также называемое аппаратной очередью) для связи между ЦП и оборудованием QAT.
  2. Микропрограмма QAT анализирует дескрипторы и соответствующим образом настраивает ускорители. По завершении задания микропрограмма QAT возвращает обработанную полезную нагрузку (зашифрованную, сжатую или и то, и другое) и генерирует ответное сообщение, которое вставляется в Rx Ring (Receive Ring).
  3. Приложение может получить результаты двумя способами:
    • Опросы приложений для запроса Rx Ring через библиотеку Intel QAT
    • [Неблокирующее приложение] Библиотека Intel QAT выполняет обратный вызов для приложений, чтобы сообщить о завершении операции.

Информация о настройке QAT в UEFI - https://lenovopress.lenovo.com/lp1709-configuring-intel-quickassist-technology-in-a-linux-vm

Дополнительная информация

Дополнительные сведения см. в следующих ресурсах:

Автор

Сяочунь Ли (Xiaochun Li) — инженер Linux в группе Lenovo Infrastructure Solutions Group, базирующейся в Пекине, Китай. Он специализируется на разработке, связанной с хранением и управлением памятью ядра Linux, а также DRM ядра. До прихода в Lenovo он был системным инженером INSPUR. Имея восьмилетний опыт работы в отрасли, сейчас он занимается RAS, хранением, безопасностью и виртуализацией ядра Linux.

Связанные семейства продуктов

Семейства продуктов, относящиеся к этому документу, следующие:

Товарные знаки

Lenovo и логотип Lenovo являются товарными знаками или зарегистрированными товарными знаками Lenovo в США и/или других странах. Текущий список товарных знаков Lenovo доступен в Интернете по адресу https://www.lenovo.com/us/en/legal/copytrade/ .

Следующие термины являются товарными знаками Lenovo в США и/или других странах:
Lenovo®
ThinkSystem®

Следующие термины являются товарными знаками других компаний:

Intel® и Xeon® являются товарными знаками корпорации Intel или ее дочерних компаний.

Linux® является товарным знаком Линуса Торвальдса в США и других странах.

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

Публикации по теме
Центры обработки данных
 
Новости Lenovo

© "Storage News" journal, Russia&CIS
(495) 233-4935;
www.storagenews.ru; info@storagenews.ru.