您可以使用 esxcfg-module 命令行命令配置可共享 GPU 的用户数量、分配给每个用户的帧缓冲区量等参数,以及某些性能控件。

语法

esxcfg-module -s "adapter1_conf=bus#,device#,function#,number_of_VFs,FB_size,time_slice,mode" amdgpuv

用法说明

vicfg-module 命令支持在 ESXi 主机上设置和检索 VMkernel 模块选项。有关此命令的常规参考信息,请参阅《vSphere 命令行界面参考》文档,网址为 https://code.vmware.com

必需的标记

配置 AMD MxGPU 时,必须指定多个标记。如果命令不包含所有必需的标记,则不会提供错误消息,配置而是会默认设置为简单的 4 SR-IOV 设备配置。

表 1. 用于配置 AMD SR-IOV 的标记
标记 说明
bus# 采用十进制格式的总线号。
device# 受支持的 AMD 卡的 PCIe 设备 ID(采用十进制格式)。要查看列表,请使用命令 lspci | grep -i display
例如,对于具有两个 AMD GPU 卡的系统,在运行此命令时,您可能会看到以下输出:
[root@host:~] lspci | grep -i display
0000:04:00.0 Display controller:
0000:82:00.0 Display controller:
在此示例中,PCIe 设备 ID 为 04 和 82。请注意,这些 ID 以十六进制格式列出,必须将其转换为十进制格式,才能在 vicfg-module 命令中使用。

AMD S7150 卡支持每卡仅一个 GPU,因此,对于这些卡,设备 ID 和功能 ID 均为 0。

function# 采用十进制格式的功能号。
number_of_VFs VF(虚拟功能)的数量(从 2 至 15)。此数值表示将共享 GPU 的用户数量。
FB_size 分配给每个 VF 的帧缓冲区内存量(以 MB 为单位)。要确定大小,请查明卡上视频内存的总量,并将该总量除以 VF 的数量。然后,将所得数值舍入为最接近的 8 的倍数。例如,对于具有 8000 MB 的 AMD S7150 卡,您可以使用以下设置:
  • 对于 2 个 VF,使用 4096。
  • 对于 4 个 VF,使用 2048。
  • 对于 8 个 VF,使用 1024。
  • 对于 15 个 VF,使用 544。
time_slice VF 切换的时间间隔(以微秒为单位)。此设置可调整 SR-IOV 设备之间的命令排队和处理延迟。使用介于 3000 和 40000 之间的一个值。如果您在多个 SR-IOV 桌面处于活动状态时发现有显著的间断,请调整此值。
mode 以下是有效的值:0 = 回收的性能;1 = 固定的百分比性能。
重要说明: 在运行 esxcfg-module 命令后,您必须重新引导 ESXi 主机以使设置生效。

示例

  1. 对于在 8 个用户之间共享的 PCI ID 4 上的单个 AMD S7150 卡:
    esxcfg-module -s "adapter1_conf=4,0,0,8,1024,4000" amdgpuv
  2. 对于在 4 个超级用户之间共享的 PCI ID 4 和 PCI ID 82 上具有两个 AMD S7150 卡的单个服务器:
    esxcfg-module -s "adapter1_conf=3,0,0,2,4096,4000 adapter2_conf=130,0,0,2,4096,4000" amdgpuv
  3. 对于具有两个 AMD S7150 卡的单个服务器,您可以通过不同的参数设置每个卡。例如,如果您的 View 环境需要支持 2 个超级用户和 16 个任务工作者:
    esxcfg-module -s "adapter1_conf=3,0,0,2,4096,4000 adapter2_conf=130,0,0,15,544,7000" amdgpuv
  4. 在 ESXi 主机上启用 SR-IOV 选项。

    某些主机在 BIOS 中将 SR-IOV 作为可配置选项。