Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

PowerEdge. Ошибка транзитного режима PCI «Module "DevicePowerOn" Power On failed» при использовании графических процессоров на виртуальных машинах в vSphere

Summary: Виртуальная машина не включается после настройки транзитного режима устройств PCI на хосте ESXi и добавления устройства в виртуальную машину. Она зависает на 80%, а затем выводит ошибку 2022-04-22T03:04:15.771Z| vmx| | I005: PCIPassthru: total number of pages needed (4206594) exceeds limit (917504), failing 2022-04-22T03:04:15.771Z| vmx| | I005: Module 'DevicePowerOn' power on failed. ...

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

PCI error.PNG


Предварительные действия

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

Какие устройства?

Данная статья актуальна только в том случае, если ваше устройство PCI сопоставляет области памяти, общий размер которых превышает 16 Гбайт. Следуйте опубликованным инструкциям в статье базы знаний VMware 101010789, чтобы включить транзитные устройства в vSphere. Как правило, платы, для которых требуется сопоставление более 16 Гбайт памяти, это платы высшего класса. Следуйте инструкциям в этой статье, чтобы включить их для использования в режиме транзитной передачи на виртуальной машине.
 

BIOS хоста

Для поддержки больших областей памяти, необходимых для этих устройств PCI высшего класса, необходимо настроить BIOS хоста. Чтобы включить эту функцию, найдите параметр BIOS хоста «Memory Mapped I/O above 4 GB» и включите его.

MMIO.png


Гостевая ОС 

Примечание.: Эти настройки необходимы только в том случае, если в качестве режима загрузки BIOS выбран «UEFI». Если выбран режим «Legacy» или «BIOS» вы можете проигнорировать приведенные ниже инструкции.

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

Редактирование доступности устройств PCI на хост-сервере

Установленный физический графический процессор, совместимый с PCI, первоначально распознается гипервизором vSphere во время загрузки сервера без установки каких-либо определенных драйверов на гипервизоре.

vSphere распознает все устройства PCI таким образом. Список устройств PCI, имеющихся в инструменте vSphere Client, можно просмотреть, выбрав конкретный хост-сервер, с которым вы работаете, и следуя пунктам меню.

» Настройте " > Hardware" > "PCI Devices" > "Edit", чтобы увидеть список, как показано на примере на рис. 2 ниже.

Если конкретное устройство графического процессора ранее не было включено для операций ввода-вывода DirectPath, его можно перевести в режим ввода-вывода Direct Path (транзитная), установив флажок в записи устройства, как показано в примере с устройством NVIDIA.

image.png


Включение устройств высшего класса в файле виртуальной машины

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

pciPassthru.use64bitMMIO="TRUE"

Для указания второй записи требуется простой расчет. Суммируйте объем памяти графического процессора для всех графических устройств(*), которые вы собираетесь передать в виртуальную машину, а затем округлите до следующего значения, равного степени числа 2. Например, для использования транзитного подключения с 4 устройствами A2 емкостью 16 Гбайт значение будет: 32 + 32 = 64, округляем до следующего значения степени числа 2, получаем 128. Используйте это значение во второй записи:

pciPassthru.64bitMMIOSizeGB="128"

Внесите эти два изменения в файл VMX и следуйте статье базы знаний VMware 101010789 Стандартные инструкции по vSphere для включения транзитных устройств на уровне хоста и определения устройств, которые должны быть переданы в виртуальную машину. Теперь виртуальная машина должна правильно загружаться, когда устройство находится в транзитном режиме.
 

Включение устройств высшего класса в пользовательском интерфейсе

В клиенте vSphere Client снова выберите виртуальную машину и используйте параметры.

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

image.png


Мы рассчитаем значение параметра «64bitMMIOSizeGB», используя простой подход. Подсчитайте количество графических процессоров PCI высшего класса, которые вы собираетесь передать в эту виртуальную машину. Это может быть один или несколько графических процессоров. Умножьте это число на 16 и округлите его до следующего значения, равного степени числа 2.

Например, для использования транзитного режима с двумя графическими процессорами в одной виртуальной машине значение будет следующим: 4 * 16 = 64, округляем до следующего значения степени числа 2, получаем 128.
 

Назначение графического процессора виртуальной машине

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

Чтобы включить доступ виртуальной машины к устройству PCI, в клиенте vSphere выберите виртуальную машину, используйте параметр «Edit Settings» и прокрутите вниз до списка устройств PCI. Если устройство еще не указано в списке, используйте кнопку «Add New Device», чтобы добавить его в список. После добавления настройки виртуальной машины должны выглядеть так, как показано на рис. 7. В этом примере соответствующая запись — «PCI Device 0».

image.png


Резервирование памяти

Когда устройство PCI назначено виртуальной машине, ей необходимо зарезервировать память до полного настроенного объема памяти для виртуальной машины. Для этого в клиенте vSphere Client выберите виртуальную машину и перейдите в раздел «Edit Settings > Virtual Hardware > Memory» для доступа и изменения значения в области резервирования.

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

  • На виртуальной машине Linux используйте команду
"lspci | grep nvidia"

или

  • В операционной системе Windows для проверки доступных графических процессоров используйте Диспетчер устройств на панели управления


Теперь графический процессор готов к работе в транзитном режиме.

Additional Information

Поиск и устранение неисправностей

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

Проблема сопоставления.
Если в файле vmware.log виртуальной машины отображается ошибка, аналогичная следующей:

1. I120: PCIPassthru: 0000:82:00.0 : Device BAR 0 requested 64-bit memory address that exceeded MPN type (62105227100160)

Настройки BIOS не соответствуют требованиям ESXi для включения транзитного устройства этого типа. Для транзита между ESXi 6.0 p4 и ESXi 6.5 требуется, чтобы объем памяти, привязанный к устройствам PCI, был ниже 16 Тбайт. Эту проблему можно решить, если BIOS поддерживает возможность управления уровнем адресного пространства памяти хоста, в котором сопоставляются области памяти PCI. Некоторые производители, например, SuperMicro, предоставляют параметры BIOS для изменения количества сопоставленной памяти. В системах SuperMicro параметр MMIOHBase можно изменить на более низкое значение, по умолчанию оно равно 56 Тбайт. Системы Sugon также имеют аналогичную (скрытую) настройку BIOS. Обратитесь к поставщику системы, чтобы узнать, поддерживает ли BIOS эту функцию переназначения. Другое решение — обновить ESXi до 6.5 u1 или более поздней версии, где убрано ограничение в 16 Тбайт.

Неправильная конфигурация.
Ошибка следующей формы в файле vmware.log:

1. 2016-07-07T09:18:37.624Z| vmx| I120: PCIPassthru: total number of pages needed (2097186) exceeds limit (917504), failing

Указывает на то, что в BIOS хоста неправильно включены привязки «свыше 4 Гбайт», как описано выше в разделе «BIOS хоста», или неправильно указаны записи VMX.

Не удается использовать устройство.
Если вы следовали всем приведенным выше инструкциям и виртуальная машина загружена правильно, но при запуске утилиты nvidia-smi в гостевой ОС отображается следующее сообщение:

1. Unable to determine the device handle for GPU 0000:13:00.0: Unknown Error

Мы рекомендуем обратиться непосредственно в компанию Nvidia или выполнить поиск этой строки в Интернете, чтобы найти дополнительную информацию, которая может быть полезна.

Article Properties


Affected Product

Servers, PowerEdge

Last Published Date

15 Dec 2022

Version

4

Article Type

How To