Redfish API 支持#

DGX 系统固件支持 Redfish API。Redfish 是 DMTF 的一套标准 API,用于管理和监控平台。默认情况下,DGX B200 BMC 和 BIOS 中启用 Redfish 支持。使用 Redfish 接口,具有管理员权限的用户可以通过 REST API 接口浏览机箱和系统级别的物理资源。Redfish 提供的信息按特定资源端点分类,Redfish 客户端可以使用以下 HTTP 方法使用端点

  • GET

  • POST

  • PATCH

  • PUT

  • DELETE

并非所有端点都支持所有这些操作。有关操作的更多信息,请参阅 Redfish JSON 模式。Redfish 服务器遵循 DSP0266 1.7.0 规范和 Redfish Schema 2019.1 文档。Redfish URI 使用基本身份验证和实施进行访问,以便具有所需权限的 IPMI 用户可以访问 Redfish URI。

支持的 Redfish 功能#

以下是有关 DGX B200 中支持的 Redfish 功能的一些信息。

支持以下功能

  • 管理用户帐户、权限和角色

  • 管理器会话

  • BMC 配置

  • BIOS 配置

  • BIOS 启动顺序管理

  • 获取 PCIe 设备和功能清单

  • 获取存储清单

  • 获取系统组件信息和运行状况(PSU、风扇、CPU、DIMM 等)

  • 获取传感器信息(散热/电源/散热)

  • BMC 配置更改/BMC 重置

  • 系统/机箱电源操作

  • 获取运行状况事件日志/高级系统事件日志

  • 日志记录服务,提供关键/信息严重性事件

  • 事件服务 (SSE)

  • 查询 GPU 功率限制

  • 功率封顶

有关更多信息,请参阅以下文档

主机和 BMC 之间的连接#

您可以配置主机和 BMC 之间的内部网络连接,而不是使用外部网络连接并将流量路由到主机外部。

要配置内部网络连接,您必须在 169.254.0.0/255.255.0.0 网络上配置一个接口。然后,该接口可以在主机和 BMC 之间发送和接收 Redfish API 流量。BMC 预配置为使用 169.254.0.17 IP 地址。

运行类似以下示例的 ifconfig 命令来配置连接

sudo ifconfig enx9638a3b292ec 169.254.0.18 netmask 255.255.0.0

根据您的需要,在前面的示例中替换网络接口名称和 IP 地址。

配置网络接口后,您可以使用诸如 curlnvfwupd 之类的命令以及 169.254.0.17 IP 地址连接到 BMC 并使用 Redfish API。

以下示例命令显示固件版本

nvfwupd -t ip=169.254.0.17 username=<bmc-user> password=<password> show_version

Redfish 示例#

BMC 管理器#

  • 帐户

    以下 curl 命令更改管理员用户的密码。

    curl -k -u <bmc-user>:<password> --request PATCH 'https://<bmc-ip-address>/redfish/v1/AccountService/Accounts/1' --header 'If-Match: *'  --header 'Content-Type: application/json' --data-raw '{"Enabled" : true, "Password" : "DGXuser12345678!" , "UserName" : "admin" , "RoleId" : "Administrator" , "Locked" : false}'
    
  • 重置 BMC

    以下 curl 命令强制重置 DGX B200 BMC。

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/Actions/Manager.Reset'  --header 'Content-Type: application/json'  --data '{"ResetType":  "ForceRestart"}'
    
  • 将 BMC 重置为出厂默认设置

    以下 curl 命令将 BMC 重置为出厂默认设置。

    curl -k -u <bmc-user>:<password>  --request POST --location 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/Actions/Manager.ResetToDefaults'  --header 'Content-Type: application/json'  --data '{"ResetType":"ResetAll"}'
    

固件更新#

  • 固件清单

    curl -k -u <bmc-user>:<password> --request GET  'https://<bmc-ip-address>/redfish/v1/UpdateService/FirmwareInventory'
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$metadata#SoftwareInventoryCollection.SoftwareInventoryCollection",
        "@odata.etag": "\"1683226281\"",
        "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory",
        "@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection",
        "Description": "Collection of Firmware Inventory resources available to the UpdateService",
        "Members": [
            {
                "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/CPLDMB_0"
            },
            {
                "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/CPLDMID_0"
            },
            // ...
        ],
        "Members@odata.count": 66,
        "Name": "Firmware Inventory Collection",
        "Oem": {
            "Ami": {
                "FirmwareInventory": [
                    {
                        "DataSourceUri": "/redfish/v1/UpdateService/FirmwareInventory/CPLDMB_0",
                        "Name": "CPLDMB_0",
                        "Version": "0.2.1.6"
                    },
                    {
                        "DataSourceUri": "/redfish/v1/UpdateService/FirmwareInventory/CPLDMID_0",
                        "Name": "CPLDMID_0",
                        "Version": "0.2.0.7"
                    },
                    // ...
                ]
            }
        }
    }
    
  • 更新 GPU 托盘组件

    要更新 DGX B200 系统中的 GPU 托盘组件,请指定 HGX_0 作为目标,无论您要更新哪个 GPU 托盘组件。

    echo "{\"Targets\":[\"/redfish/v1/UpdateService/FirmwareInventory/HGX_0\"]}" > parameters.json
    curl -k -u <bmc-user>:<password> -H 'Expect:' --location --request POST https://<bmc-ip-address>/redfish/v1/UpdateService/upload -F 'UpdateParameters=@parameters.json;type=application/json' -F UpdateFile=@<fw_bundle>
    

    例如,指定 nvfw_DGX-HGX-B100-B200x8_0009_xxxxxx.x.x_prod-signed.fwpkg 固件文件。

  • 更新主板托盘组件

    要更新主板托盘组件,您需要在 JSON 文件中将组件名称指定为目标。以下示例更新主机 BMC

    echo "{\"Targets\":[\"/redfish/v1/UpdateService/FirmwareInventory/HostBMC_0\"]}" > parameters.json
    curl -k -u <bmc-user>:<password> -H 'Expect:' --location --request POST https://<bmc-ip-address>/redfish/v1/UpdateService/upload -F 'UpdateParameters=@parameters.json;type=application/json' -F UpdateFile=@<fw_bundle>
    

    以下目标可用

    • HostBMC_0 — 这是 DGX B200 BMC。

    • HostBIOS_0 — 这是 DGX B200 BIOS。

    • EROT_BMC_0 — 这是主机 BMC 的外部信任根。

    • EROT_BIOS_0 — 这是主机 BIOS 的外部信任根。

    • CPLDMID_0 — 这是中板 CPLD。

    • CPLDMB_0 — 这是 CPU 托盘 CPLD。

    • PSU_0PSU_5 — 这些是 PSU。

    • PCIeSwitch_0PCIeSwitch_1 — 这些是 CPU 托盘上的 Gen5 PCIe 交换机。

    • PCIeRetimer_0PCIeRetimer_1 — 这些是 CPU 托盘上的 PCIe 重定时器。

    要更新目标,请更改前面示例中的路径 /redfish/v1/UpdateService/FirmwareInventory/HostBMC_0。例如,对于 CPU 托盘 CPLD,请指定 /redfish/v1/UpdateService/FirmwareInventory/CPLDMB_0

    确保指定 nvfw_DGX_0005_xxxxxx.x.x.fwpkg 固件文件。

  • 强制更新

    仅当传入固件版本比现有版本更新时,DGX B200 系统组件固件才会更新。要覆盖此行为并刷新组件,请指定 ForceUpdate 字段并将其设置为 true

    curl -k -u <bmc-user>:<password> --request PATCH 'https://<bmc-ip-address>/redfish/v1/UpdateService' --header 'If-Match: *'  --header 'Content-Type: application/json' --data-raw '{"HttpPushUriOptions" : {"ForceUpdate": true}}'
    

    成功后,命令返回 204 HTTP 状态代码。如果您尝试将标志设置为当前设置的值,则命令返回 400 HTTP 状态代码。

    要获取 ForceUpdate 参数的值

    curl -k -u <bmc-user>:<password> --request GET 'https://<bmc-ip-address>/redfish/v1/UpdateService'
    
  • 固件更新激活

    要激活固件更新,请参阅 NVIDIA DGX B200 固件更新指南 中的 固件更新激活,了解更多信息。

  • 后台复制

    成功启动固件映像后,使用后台复制 API 在分区之间同步固件映像。

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/UpdateService/Actions/Oem/NvidiaUpdateService.CommitImage' \
         --header 'Content-Type: application/json' \
         --data '{
                  "Targets": ["/redfish/v1/UpdateService/FirmwareInventory/HostBIOS_0"]
                 }'
    

BIOS 设置#

  • 支持的 BIOS 属性

    • 获取 BIOS 支持的所有属性的列表

      curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Registries'
      

      列表中的注册表之一是您的 BIOS 属性注册表。格式为 BiosAttributeRegistry<version><version>。例如,对于 BIOS 0.1.6,注册表为 BiosAttributeRegistry106.1.0.6

    • 获取 BIOS 注册表的 URI

      curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Registries/BiosAttributeRegistry016.0.1.6/'
      

      响应包括描述所有 BIOS 属性的 JSON 文件的位置。在 Location 下,指定了 Uri。例如,Uri":"/redfish/v1/Registries/BiosAttributeRegistry106.1.0.6

    • 获取包含所有 BIOS 属性注册表的 JSON 文件

      curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Registries/BiosAttributeRegistry106.en-US.1.0.6.json' --output BiosAttributeRegistry106.en-US.1.0.6.json
      

      每个属性名称都有一个默认值、显示名称、帮助文本、只读指示符以及指示是否需要重置才能生效的指示符。

  • 要获取当前的 BIOS 设置

    curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Bios'
    

    将属性名称与注册表中的值匹配以获得描述。

    示例响应

    "Description": "Current BIOS Settings",
    "Id": "Bios",
    "Name": "Current BIOS Settings"
    ...
    
  • 要在将来的 BIOS 设置中更改属性,请 PATCH SD URI 并指定属性名称和新值。您可以一次更改多个属性。

    例如,以下 PATCH 请求指定了 SEL 日志已满时系统的响应方式

    curl -k -u <bmc-user>:<password> --location --request PATCH 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Bios/SD' -H 'Content-Type: application/json' -H 'If-Match:*' --data-raw '{"Attributes" : {"IPMI002":"IPMI002DoNothing", "IPMI201":"IPMI201Donotloganymore"}}'
    

    示例响应

    "Description": "Future BIOS Settings",
    "Id": "SD",
    "Name": "Future BIOS Settings"
    ...
    

注意

对 BIOS 的所有属性更改都需要断电重启才能生效。当属性更改后进行 BIOS 更新时,还需要额外的断电重启才能应用更改。

使用 Redfish 修改启动顺序#

要在 DGX B200 系统上使用 Redfish API 修改启动顺序,请按照此过程中的步骤操作。

  1. 读取当前启动顺序。

    从与 BMC 位于同一网络中的任何系统,运行以下 curl 命令以获取当前启动顺序

    $ curl -k -u <BMC username>:<BMC password> https://<BMC_IP_address>/redfish/v1/Systems/DGX/SD -H "content-type:application/json" -X GET -s | jq .Boot.BootOrder
    
    [
      "Boot0000",
      "Boot000F",
      "Boot0004",
      "Boot0005",
      "Boot0006",
      "Boot0007",
      "Boot0008",
      "Boot0009",
      "Boot000A",
      "Boot0010"
     ]
    
  2. 识别可用的启动设备。

    要显示有关步骤 1 中启动设备的更多信息,例如 Boot0000Boot000FBoot0004,请运行以下命令

    $ curl -k -u <BMC username>:<BMC password> https://<BMC_IP_address>/redfish/v1/Systems/DGX/BootOptions/00{0,1}{0,4,5,6,7,8,9,A,F} -H "content-type:application/json" -X GET -s  | jq |grep -e "UefiDevicePath\|Name"
    
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "DGX OS",
    "Name": "Boot0000",
    "UefiDevicePath": "HD(1,GPT,159C2E52-2329-40AC-9103-6C28DC1528B8,0x800,0x100000)/\\EFI\\UBUNTU\\SHIMX64.EFI"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Intel(R) Ethernet Controller X550",
    "Name": "Boot0004",
    "UefiDevicePath": "PciRoot(0x0)/Pci(0x10,0x0)/Pci(0x0,0x0)/MAC(5CFF35FBDA09,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Nvidia Network Adapter - B8:3F:D2:E7:B1:6C",
    "Name": "Boot0005",
    "UefiDevicePath": "PciRoot(0x20)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/MAC(B83FD2E7B16C,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Nvidia Network Adapter - B8:3F:D2:E7:B1:6D",
    "Name": "Boot0006",
    "UefiDevicePath": "PciRoot(0x20)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x1)/MAC(B83FD2E7B16D,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Nvidia Network Adapter - B8:3F:D2:E7:B0:9C",
    "Name": "Boot0007",
    "UefiDevicePath": "PciRoot(0x120)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/MAC(B83FD2E7B09C,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Nvidia Network Adapter - B8:3F:D2:E7:B0:9D",
    "Name": "Boot0008",
    "UefiDevicePath": "PciRoot(0x120)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x1)/MAC(B83FD2E7B09D,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Intel(R) Ethernet Network Adapter E810-C-Q2",
    "Name": "Boot0009",
    "UefiDevicePath": "PciRoot(0x160)/Pci(0x5,0x0)/Pci(0x0,0x0)/MAC(6CFE543D8F48,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 Intel(R) Ethernet Network Adapter E810-C-Q2",
    "Name": "Boot000A",
    "UefiDevicePath": "PciRoot(0x160)/Pci(0x5,0x0)/Pci(0x0,0x1)/MAC(6CFE543D8F49,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "ubuntu",
    "Name": "Boot000F",
    "UefiDevicePath": "HD(1,GPT,1E0EFF2A-2BF3-4DC6-8757-4075B1E5343D,0x800,0x100000)/\\EFI\\UBUNTU\\SHIMX64.EFI"
    "@odata.etag": "\"1696896625\"",
    "DisplayName": "UEFI: PXE IPv4 American Megatrends Inc.",
    "Name": "Boot0010",
    "UefiDevicePath": "PciRoot(0x0)/Pci(0x14,0x0)/USB(0xA,0x0)/USB(0x2,0x1)/MAC(4E2A712C2451,0x0)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)"
    

    其中

    • DisplayName 字符串是驱动器或网络适配器的名称。

    • Name 字符串是启动设备名称。

    • UefiDevicePath 字符串的 MAC(<address>,0x1) 值是相应的 MAC 地址。

    • @odata.etag 字符串是 etag 编号。

    从下一步的 JSON 输出中识别以下信息

    • 要作为启动设备的设备的名称。

    • 用于组成标头的 etag 编号。

  3. 更新启动顺序。

    以下命令使用 PATCH 方法修改 BootOrder 设置,指定步骤 2 中的 etag 编号和启动设备名称。该命令为 BootOrder 生成一个新的顺序列表,这将影响系统的下次启动。

    $ curl -k -u <BMC username>:<BMC password> https://<BMC_IP_address>/redfish/v1/Systems/DGX/SD -H "content-type:application/json" -H 'if-None-Match: "@odata.etag": "1697483651"' --data '{"Boot":{"BootOrder": ["Boot0004", "Boot0000", "Boot0005", "Boot0006", "Boot0007", "Boot0008", "Boot0009", "Boot000A", "Boot000F", "Boot0010"]}}' -X PATCH
    
  4. 确认启动顺序。

    重复步骤 1 中的命令,以确保 BootOrder 设置符合预期。请注意,Boot0004 启动设备现在位于顶部,系统将从板载 RJ-45 网络接口启动。

    $ curl -k -u <BMC username>:<BMC password> https://<BMC_IP_address>/redfish/v1/Systems/DGX/SD -H "content-type:application/json" -X GET -s | jq .Boot.BootOrder
    
    [
      "Boot0004",
      "Boot0000",
      "Boot0005",
      "Boot0006",
      "Boot0007",
      "Boot0008",
      "Boot0009",
      "Boot000A",
      "Boot000F",
      "Boot0010"
    ]
    

    重新启动后,系统应尝试使用正确的网络接口从网络启动

    _images/dgx-h100-boot-order.png

此启动顺序更改将一直保留到下次启动顺序更新,这可以通过重置 SBIOS 或再次运行此过程来完成。

遥测#

  • GPU 托盘传感器

    curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/TelemetryService/MetricReportDefinitions/HGX_PlatformEnvironmentMetrics_0'
    
  • DGX 平台传感器

    curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Chassis/DGX/Sensors'
    

    端点一次返回 75 个成员。要分页浏览结果,请使用 Members@odata.nextLink 字段中的 URI。例如,/redfish/v1/Chassis/DGX/Sensors?$skip=75

机箱#

  • 机箱重启(IPMI 机箱断电重启)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json'  --data '{"ResetType":  "ForceRestart"}'
    
  • 机箱启动(IPMI 机箱开机)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json' --data '{"ResetType":  "On"}'
    
  • 机箱正常重启(IPMI 机箱软关机,IPMI 机箱开机)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json' --data '{"ResetType":  "GracefulRestart"}'
    
  • 机箱关机(IPMI 机箱关机)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json' --data '{"ResetType":  "ForceOff"}'
    
  • 机箱正常关机(IPMI 机箱软关机)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json' --data '{"ResetType":  "GracefulShutdown"}'
    
  • 机箱断电重启(IPMI 机箱关机,IPMI 机箱开机)

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset' --header 'Content-Type: application/json' --data '{"ResetType":  "PowerCycle"}'
    

注意

出于安全原因,不支持 HMC 上的 ForceRestartGracefulRestartGracefulShutdown 重置操作。

SEL 日志#

要使用 Redfish 查看所有 SEL 条目

curl -k -u <bmc-user>:<password> --location --request GET 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/LogServices/SEL/Entries'

端点一次返回 75 个成员。要分页浏览结果,请使用 Members@odata.nextLink 字段中的 URI。例如,/redfish/v1/Managers/BMC/LogServices/SEL/Entries?$skip=75

虚拟镜像#

  1. 确保虚拟介质已启用

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/Actions/Oem/AMIVirtualMedia.EnableRMedia' --data-raw '{"RMediaState": "Enable"}'
    
  2. 挂载介质

    curl -k -u <bmc-user>:<password> --request POST --location 'https://{{bmc-ip-address}}/redfish/v1/Managers/Self/VirtualMedia/CD_1/Actions/VirtualMedia.InsertMedia' --data-raw '{"Image" : "//<serverip>/home/nvidia/images/ubuntu-20.04.2-live-server-amd64.iso","TransferProtocolType" : "NFS"}'
    

备份和恢复 BMC 配置#

除了使用 Web UI 备份和恢复 BMC 配置外,您还可以使用以下方法的 Redfish API

  1. 在 BMC 中安装安全 AES 密钥。

  2. 备份 BMC 配置。

  3. 使用备份文件恢复 BMC 配置。

    当您执行配置恢复时,BMC 会自动重启。

备份 BMC 配置#

  1. 生成 AES 密钥并将其保存到 .bin 文件。

    openssl rand -out aes_key.bin 32
    
  2. 上传 AES 密钥。

    curl -s -k -u <username>:<password> --location --request POST 'https://<bmcip>/redfish/v1/Managers/BMC/Actions/Oem/NvidiaManager.UploadAESKey' --form 'AESKey=@aes_key.bin' | jq
    

    成功命令返回 204 HTTP 状态代码。

  3. 通过创建备份文件(例如,bmc-config.bak)来备份 BMC 配置。

    curl -s -k -u <username>:<password> POST 'https://<bmcip>/redfish/v1/Managers/BMC/Actions/Oem/NvidiaManager.BackupConfig' -H 'Content-Type: application/json' --data-raw '{ "BackupFeatures" : ["NTP","Network and Services","Syslog","Authentication","SNMP","IPMI","KVM"] }' > bmc-config.bak
    

恢复 BMC 配置#

注意

您必须执行出厂重置以恢复默认设置,然后再恢复 BMC 配置。

  1. 上传先前生成的 AES 密钥。

    curl -s -k -u <username>:<password> --location --request POST 'https://<bmcip>/redfish/v1/Managers/BMC/Actions/Oem/NvidiaManager.UploadAESKey' --form 'AESKey=@aes_key.bin' | jq
    

    成功命令返回 204 HTTP 状态代码。

  2. 从备份文件(例如,bmc-config.bak)恢复 BMC 配置。

    curl -s -k -u <username>:<password> --location --request POST 'https://<bmcip>/redfish/v1/Managers/BMC/Actions/Oem/NvidiaManager.RestoreConfig' --form 'conf_file=@"bmc-config.bak"' | jq
    

收集 BMC 调试数据#

  1. 创建请求以使 BMC 开始收集调试数据

    curl -k -u <bmc-user>:<password> --request POST --location 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Actions/LogService.CollectDiagnosticData' -H 'Content-Type: application/json' --data-raw '{"DiagnosticDataType" : "OEM", "OEMDiagnosticDataType": "ALL"}' | jq
    

    示例响应

    {
      "@odata.context": "/redfish/v1/$metadata#Task.Task",
      "@odata.id": "/redfish/v1/TaskService/Tasks/2",
      "@odata.type": "#Task.v1_4_2.Task",
      "Description": "Task for Manager CollectDiagnosticData",
      "Id": "2",
      "Name": "Manager CollectDiagnosticData",
      "TaskState": "New"
    }
    
  2. 将任务编号更改为从步骤 1 返回的相应任务 Id,并监视任务完成情况,直到 PercentComplete 达到 100

    curl -k -u <bmc-user>:<password> --request GET 'https://<bmc-ip-address>/redfish/v1/TaskService/Tasks/2' | jq
    

    示例响应

        {
          "@odata.context": "/redfish/v1/$metadata#Task.Task",
          "@odata.etag": "\"1723565599\"",
          "@odata.id": "/redfish/v1/TaskService/Tasks/2",
          "@odata.type": "#Task.v1_4_2.Task",
          "Description": "Task for Manager CollectDiagnosticData",
          "EndTime": "2024-08-13T16:28:15+00:00",
          "Id": "2",
          "Messages": [
            {
              "@odata.type": "#Message.v1_0_8.Message",
              "Message": "Indicates that a DiagnosticDump of was created at /redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Attachment/nvidiadiag-HT9buy.tar.gz",
              "MessageArgs": [
                "/redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Attachment/nvidiadiag-HT9buy.tar.gz"
              ],
              "MessageId": "Ami.1.0.0.DiagnosticDumpCreated",
              "Resolution": "None",
              "Severity": "Warning"
            },
            {
              "@odata.type": "#Message.v1_0_8.Message",
              "Message": "Task /redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Actions/LogService.CollectDiagnosticData has completed.",
              "MessageArgs": [
                "/redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Actions/LogService.CollectDiagnosticData"
              ],
              "MessageId": "Task.1.0.Completed",
              "Resolution": "None",
              "Severity": "OK"
            }
          ],
          "Name": "Manager CollectDiagnosticData",
          "PercentComplete": 100,
          "StartTime": "2024-08-13T16:13:20+00:00",
          "TaskState": "Completed",
          "TaskStatus": "OK"
        }
    
  3. TaskState 字段报告 Completed 后,使用 MessageArgs 提供的路径下载附件

    curl -k -u <bmc-user>:<password> --request GET 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Attachment/nvidiadiag-HT9buy.tar.gz' --output nvidiadiag-HT9buy.tar.gz
    

清除 BIOS 并重置为出厂默认设置#

要清除 BIOS 并将系统重置为出厂默认设置

curl -k -u <username>:<password> --request POST --location 'https://<bmcip>/redfish/v1/UpdateService/Actions/Oem/NvidiaUpdateService.ClearNVRAM' --header 'Content-Type: application/json' \
--data '{"Targets": ["/redfish/v1/UpdateService/FirmwareInventory/HostBIOS_0"]}'

查询 GPU 功率限制#

  • 要查询当前的 GPU 功率限制

    curl  -k -u <username>:<password> https://<bmc>/redfish/v1/Systems/HGX_Baseboard_0/Processors/GPU_SXM_<id>/EnvironmentMetrics
    

    其中

    • <bmc> 是 BMC IP 地址。

    • <id> 是 GPU 实例编号,从 18

    如下面的示例输出所示,Reading 字段指示当前功耗,SetPoint 字段指示当前的 GPU 功率限制。

    ...
    
    "PowerLimitWatts": {
            "AllowableMax": 700,
            "AllowableMin": 200,
            "ControlMode": "Automatic",
            "DefaultSetPoint": 700,
            "Reading": 64.388,
            "SetPoint": 700
    }
    ...
    

功率封顶#

服务#

要发现可用的服务

curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager

示例响应

{
    "@odata.context": "/redfish/v1/$Metadata#NvidiaNodeManager.NvidiaNodeManager",
    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager",
    "@odata.type": "#NvidiaNodeManager.v1_0_0.NvidiaNodeManager",
    "ActiveDomain": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/12"
    },
    "Id": "NvidiaNodeManager",
    "Name": "NvidiaNodeManager",
    "NvidiaNmDomains": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains"
    },
    "NvidiaPSUPolicies": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies"
    }
}

#

有几个预定义的域。如果未设置域,则显示默认域。

  • 要获取域列表

    域列表包含一组固定域(例如,0-5),后跟从 10 开始的自定义域。

    请求

    curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/Domains
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$Metadata#NvidiaNmDomainCollection.NvidiaNmDomainCollection",
        "@odata.id": "/redfish/v1/Managers/BMC/NvidiaNmDomainCollection",
        "@odata.type": "#NvidiaNmDomainCollection.NvidiaNmDomainCollection",
        "Members": [
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/1"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/4"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/2"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/3"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/5"
            },
                        {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/10"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/11"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/12"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/13"
            }
        ],
        "Members@odata.count": 10,
        "Name": "NvidiaNmDomainCollection"
    }
    
  • 要查看域策略

    域策略描述了域的限制和关联的策略

    最重要的字段是

    • Min Max:功率限制,在 Capabilities 下定义。反映的值是系统特定的。

    • Status:指示域策略是否已启用。

    • Policy State:指示此策略当前是否生效。

    curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/Domains/<DomainID>
    

    例如,要查看域 0 中的策略

    curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/Domains/0
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$Metadata#NvidiaNmDomain.NvidiaNmDomain",
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0",
        "@odata.type": "#NvidiaNmDomain.v1_4_0.NvidiaNmDomain",
        "Capabilities": {
            "Max": 16500,
            "MaxCorrectionTimeInMs": 2000,
            "MaxStatisticsReportingPeriod": "2000",
            "Min": 5000,
            "MinCorrectionTimeInMs": 1000,
            "MinStatisticsReportingPeriod": "1000"
        },
        "Id": "0",
        "Name": "protection",
        "Policies": {
            "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "@odata.type": "#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "Members": [
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/0"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/1"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/2"
                }
            ],
            "Name": "NvidiaNmPolicyCollection"
        },
        "Status": {
            "State": "Enabled"
        }
    }
    
  • 要查看域内的策略

    每个域都有一组策略,用于定义如何管理每个组件。功率基于百分比分配,组件不得超过特定预算。

    目前,可能有三种策略。策略的数量因系统而异,具体取决于实体是否支持电源管理。

    最重要的字段是

    • Limit:指示可以分配给此设备的最大功率。

    • PercentageofDomainBudget:可以分配多少预算。

    • Status:策略是否生效。这由域策略状态决定

    通常,该算法始终使用 PercentageofDomainBudget

    curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/<PolicyID>
    

    例如,要查看域 0 中的策略 0

    curl  -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/0
    

    示例响应

    {
       "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicy.NvidiaNmPolicy",
       "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/0",
       "@odata.type": "#NvidiaNmPolicy.v1_2_0.NvidiaNmPolicy",
       "AssociatedDomainID": {
           "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0"
       },
       "ComponentId": "COMP_MEMORY",
       "Id": "0",
       "Limit": 800,
       "Name": "0",
       "PercentageOfDomainBudget": 15,
       "Status": {
           "State": "Disabled"
       }
    }
    

    在此示例中,策略 0 定义了域 0 的预算百分比。两个插槽的 CPU 预算为 800 瓦,平均分配。PercentageOfDomainBudget 字段指示将分配给 CPU 的总预算的百分比,在此示例中显示为 15%。

自定义策略#

要添加自定义策略,请使用以下模板并为突出显示的字段指定值。自定义域 ID 从 10 开始。

引擎将在提供的配置字段中添加百分比值和功率值。对于以下情况,将发出错误消息

  • 功率超过 Max 值或低于域功率的 Min 值。

  • PercentageOfDomainBudget 值加起来超过 100%。

模板

{
    "@odata.context": "/redfish/v1/$Metadata#NvidiaNmDomain.NvidiaNmDomain",
    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0",
    "@odata.type": "#NvidiaNmDomain.v1_4_0.NvidiaNmDomain",
    "Capabilities": {
      "Max": 6000.0000,
      "Min": 4000.0000
    },
    "Id": "0",
    "Name": "custom4",
    "Status": {
      "State": "Enabled"
    },
    "Policies": {
      "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
      "@odata.type": "#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
      "Members": [
        {
          "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicy.NvidiaNmPolicy",
          "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/0",
          "@odata.type": "#NvidiaNmPolicy.v1_2_0.NvidiaNmPolicy",
          "AssociatedDomainID": {
            "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0"
          },
          "ComponentId": "COMP_CPU",
          "Id": "0",
          "Limit": 500.0000,
          "PercentageOfDomainBudget": 15.0000,
          "Name": "0"
        },
        {
          "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicy.NvidiaNmPolicy",
          "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/1",
          "@odata.type": "#NvidiaNmPolicy.v1_2_0.NvidiaNmPolicy",
          "ComponentId": "COMP_MEMORY",
          "Id": "0",
          "Limit": 500.0000,
          "PercentageOfDomainBudget": 15.0000,
          "Name": "0"
        },
        {
          "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicy.NvidiaNmPolicy",
          "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0/Policies/2",
          "@odata.type": "#NvidiaNmPolicy.v1_2_0.NvidiaNmPolicy",
          "AssociatedDomainID": {
            "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/0"
          },
          "ComponentId": "COMP_GPU",
          "Id": "0",
          "Limit": 5000.0000,
          "PercentageOfDomainBudget": 70.0000,
          "Name": "0"
        }
      ],
      "Members@odata.count": 3,
      "Name": "NvidiaNmPolicyCollection"
    }
}
  • 要创建新的域策略

    curl -k -u <bmc-user>:<password> -X POST https://<BMC>/redfish/v1/Managers/BMC/NodeManager/Domains --data @<pathtojsonfile>
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$Metadata#NvidiaNmDomain.NvidiaNmDomain",
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/14",
        "@odata.type": "#NvidiaNmDomain.v1_4_0.NvidiaNmDomain",
        "Capabilities": {
            "Max": 9000,
            "MaxCorrectionTimeInMs": 0,
            "MaxStatisticsReportingPeriod": "0",
            "Min": 6000,
            "MinCorrectionTimeInMs": 0,
            "MinStatisticsReportingPeriod": "0"
        },
        "Id": "14",
        "Name": "custom4",
        "Policies": {
            "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "@odata.type": "#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "Members": [
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/14/Policies/0"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/14/Policies/1"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/14/Policies/2"
                }
            ],
            "Name": "NvidiaNmPolicyCollection"
        },
        "PolicyState": "Disabled",
        "Status": {
            "State": "Enabled"
        }
    }
    
  • 要修补自定义域策略,请仅提供您要进行的配置更改。

  • 错误响应的状态代码

    • 500:指示特定字段的格式定义不正确时出错。

    • 400:指示一个或多个字段不正确。通常,这将用于超出范围的限制。

PSU 策略#

电源供应单元 (PSU) 策略是只读的。PSU 策略根据活动电源的数量设置系统的总可用功率预算。生效的 PSU 策略强制执行域策略的选择方式。

  • 要查看 PSU 策略列表

    curl -k -u <bmc-user>:<password> https://<bmcip>/redfish/v1/Managers/BMC/NodeManager/PSUPolicies
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPSUPolicyCollection.NvidiaNmPSUPolicyCollection",
        "@odata.id": "/redfish/v1/Managers/BMC/NvidiaNmPSUPolicyCollection",
        "@odata.type": "#NvidiaNmPSUPolicyCollection.NvidiaNmPSUPolicyCollection",
        "Members": [
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/0"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/1"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/2"
            },
                        {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/3"
            },
            {
                "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/4"
            }
        ],
        "Members@odata.count": 5,
        "Name": "NvidiaNmPSUPolicyCollection"
    }
    
  • 要查看 PSU 策略

    curl -k -u <bmc-user>:<password> https://<bmcip>/Managers/BMC/NodeManager/PSUPolicies/<PSUPolicyID>
    

    例如,要查看 PSU 策略 0

    curl -k -u <bmc-user>:<password> https://<bmcip>/Managers/BMC/NodeManager/PSUPolicies/0
    

    示例响应

    {
        "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPSUPolicy.NvidiaNmPSUPolicy",
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/PSUPolicies/0",
        "@odata.type": "#NvidiaNmPSUPolicy.v1_2_0.NvidiaNmPSUPolicy",
        "Id": "0",
        "LimitMax": 6000,
        "MaxPSU": 2,
        "MinPSU": 2,
        "Name": "Limp",
        "Status": {
            "State": "Disabled"
        }
    }
    

    PSU 策略 0 定义了 PSU 的数量以及将分配给系统的功率,最多两个 PSU。

  • 要查看指标报告

    指标报告捕获与系统功率行为相关的所有关键值。

    示例请求

    curl -k -u <bmc-user>:<password>  https://<bmcip>/redfish/v1/TelemetryService/MetricReports/NvidiaNMMetrics_0
    

    示例响应

    {
        "@odata.id": "/redfish/v1/TelemetryService/MetricReports/NvidiaNMMetrics_0",
        "@odata.type": "#MetricReport.v1_4_2.MetricReport",
        "Id": "NvidiaNMMetrics_0",
        "MetricReportDefinition": {
            "@odata.id": "/redfish/v1/TelemetryService/MetricReportDefinitions/NvidiaNMMetrics_0",
            "MetricProperties": []
        },
        "MetricValues": [
            {
                "MetricId": "Domain_Policy_Active",
                "MetricValue": "12",
                "Timestamp": "2024-10-25T16:05:23+00:00"
            },
            {
                "MetricId": "PSU_Active_Policy",
                "MetricValue": "4",
                "Timestamp": "2024-10-25T16:05:23+00:00"
            },
            {
                "MetricId": "PSU_Redundancy_Policy",
                "MetricValue": "0",
                "Timestamp": "2024-10-25T16:05:23+00:00"
            },
            {
                "MetricId": "dcPlatformPower_avg",
                "MetricValue": "2549.00",
                "Timestamp": "2024-10-25T16:05:23+00:00"
            },
    
                    ...
    
            {
                "MetricId": "gpuPowerCapabilitiesMax_7",
                "MetricValue": "1000.00",
                "Timestamp": "2024-10-25T16:05:23+00:00"
            }
        ],
        "Name": "NvidiaNMMetrics_0"
    }
    
    指标定义#

    指标 ID

    定义

    示例指标值

    PSU_Active_Policy

    当前活动 PSU 策略,对应于 /redfish/v1Managers/BMC/NodeManager/PSUPolicies/<PSU_Active_Policy>

    0-N

    Domain_Policy_Active

    当前活动域策略,对应于 /redfish/v1/Managers/BMC/NodeManager/Domains/<Domain_Policy_Active>

    0-N

    dcPlatformPower_avg

    平台的总直流电源

    2181.00

    dcPlatformPowerDGX_avg

    非 GPU 基板组件的总直流电源

    1444.00

    dcPlatformPowerHGX_avg

    GPU 基板的总直流电源

    736.00

    dcPlatformEnergy

    平台总能量(需要复查)

    2181.00

    dcPlatformPowerLimit1

    0.00

    dcPlatformPowerLimit2

    0.00

    PSU_Redundancy_Policy

    当前策略活动 PSU 策略

    0

    FixPwrDGXAvg

    非 GPU 基板上固定组件(例如,风扇、NVMe 等)的功率。不包括 CPU 和内存

    1005.00

    FixPwrHGXAvg

    GPU 基板上固定组件的功率。不包括 GPU

    222.00

    FixPwrAverage

    平台的总固定值

    1228.00

    AvblNoCPU

    CPU 数量

    2

    AvblNoGPU

    GPU 数量

    8

    PSU_WORKING_CNT

    PSU 总数

    6

    DIMM_Count_Total

    DIMM 总数

    32

    GPU_PWR_BRAKE

    断电状态

    0

    GPU_PWR_PRSNT

    指示 GPU 基板已通电

    1

    CPU_PWR_UNIT

    CPU 功率的 Intel PWR 单元

    3

    CPU_TIM_UNIT

    CPU 能量的 Intel 时间单元

    10

    CPU_ENERGY_UNIT

    CPU 的 Intel 能量单元

    14

    cpuPackagePower_avg_0

    CPU0 的平均功率

    193

    cpuEnergy_0

    CPU 0 的能量

    196.00

    coreEfficiency_0

    CPU 0 的核心效率

    61671.00

    cpuPackagePowerCapabilitiesMin_0

    CPU 0 的功率能力最小值

    209

    cpuPackagePowerCapabilitiesMax_0

    CPU 0 的功率能力最大值

    350

    cpuPackagePowerLimit1_0

    CPU 功率限制 1

    400.00

    cpuPackagePowerLimit2_0

    CPU 功率限制 2

    400.00

    prochotRatioCapabilitiesMin_0

    CPU 0 的 PROC 热比率最小能力(最小频率)

    500

    prochotRatioCapabilitiesMax_0

    CPU 0 的 PROC 热比率最大能力(PROC 热断言时允许的最大频率)

    2000

    turboRatioCapabilitiesMin_0

    CPU 0 的睿频比率最小能力(最小频率)

    500

    turboRatioCapabilitiesMax_0

    CPU 0 的睿频比率最大能力(最大频率)

    3800

    CPU_PWR_UNIT

    CPU 功率的 Intel PWR 单元

    3

    CPU_TIM_UNIT

    CPU 能量的 Intel 时间单元

    10

    CPU_ENERGY_UNIT

    CPU 的 Intel 能量单元

    14

    cpuPackagePower_avg_1

    CPU1 的平均功率

    182

    cpuEnergy_1

    CPU 1 的能量

    185.00

    coreEfficiency_1

    CPU 1 的核心效率

    62203.00

    cpuPackagePowerCapabilitiesMin_1

    CPU 1 的功率能力最小值

    209

    cpuPackagePowerCapabilitiesMax_1

    CPU 1 的功率能力最大值

    350

    cpuPackagePowerLimit1_1

    CPU 功率限制 1

    400.00

    cpuPackagePowerLimit2_1

    CPU 功率限制 2

    400.00

    prochotRatioCapabilitiesMin_1

    CPU 1 的 PROC 热比率最小能力(最小频率)

    500

    prochotRatioCapabilitiesMax_1

    CPU 1 的 PROC 热比率最大能力(PROC 热断言时允许的最大频率)

    2000

    turboRatioCapabilitiesMin_1

    CPU 1 的睿频比率最小能力(最小频率)

    500

    turboRatioCapabilitiesMax_1

    CPU 1 的睿频比率最大能力(最大频率)

    3800

    DIMM_Count_Socket_0

    插槽 0 的 DIMM 数量

    16.00

    dramPackagePowerCapabilitiesMax_0

    插槽 0 的 DRAM 功率能力最小值

    35.00

    dramPackagePowerCapabilitiesMin_0

    插槽 0 的 DRAM 功率能力最大值

    0.00

    dramEnergy_0

    插槽 0 的 DRAM 能量

    30.00

    dramPowerLimit_0

    插槽 0 的 DRAM 功率限制

    300.00

    dramPower_avg_0

    插槽 0 的 DRAM 平均功率

    30.00

    DIMM_Count_Socket_1

    插槽 1 的 DIMM 数量

    16.00

    dramPackagePowerCapabilitiesMax_1

    插槽 1 的 DRAM 功率能力最小值

    35.00

    dramPackagePowerCapabilitiesMin_1

    插槽 1 的 DRAM 功率能力最大值

    0.00

    dramEnergy_1

    插槽 1 的 DRAM 能量

    34.00

    dramPowerLimit_1

    插槽 1 的 DRAM 功率限制

    300.00

    dramPower_avg_1

    插槽 1 的 DRAM 平均功率

    36.00

    gpuPower_avg_0

    GPU 0 平均功率

    63.00

    gpuPowerLimit_0

    GPU 0 功率限制

    700.00

    gpuPowerCapabilitiesMin_0

    GPU 0 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_0

    GPU 0 最大功率限制

    700.00

    gpuPower_avg_1

    GPU 1 平均功率

    65.00

    gpuPowerLimit_1

    GPU 1 功率限制

    700.00

    gpuPowerCapabilitiesMin_1

    GPU 1 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_1

    GPU 1 最大功率限制

    700.00

    gpuPower_avg_2

    GPU 2 平均功率

    65.00

    gpuPowerLimit_2

    GPU 2 功率限制

    700.00

    gpuPowerCapabilitiesMin_2

    GPU 2 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_2

    GPU 2 最大功率限制

    700.00

    gpuPower_avg_3

    GPU 3 平均功率

    63.00

    gpuPowerLimit_3

    GPU 3 功率限制

    700.00

    gpuPowerCapabilitiesMin_3

    GPU 3 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_3

    GPU 3 最大功率限制

    700.00

    gpuPower_avg_4

    GPU 4 平均功率

    63.00

    gpuPowerLimit_4

    GPU 4 功率限制

    700.00

    gpuPowerCapabilitiesMin_4

    GPU 4 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_4

    GPU 4 最大功率限制

    700.00

    gpuPower_avg_5

    GPU 5 平均功率

    64.00

    gpuPowerLimit_5

    GPU 5 功率限制

    700.00

    gpuPowerCapabilitiesMin_5

    GPU 5 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_5

    GPU 5 最大功率限制

    700.00

    gpuPower_avg_6

    GPU 6 平均功率

    66.00

    gpuPowerLimit_6

    GPU 6 功率限制

    700.00

    gpuPowerCapabilitiesMin_6

    GPU 6 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_6

    GPU 6 最大功率限制

    700.00

    gpuPower_avg_7

    GPU 7 平均功率

    64.00

    gpuPowerLimit_7

    GPU 7 功率限制

    700.00

    gpuPowerCapabilitiesMin_7

    GPU 7 最小功率限制

    200.00

    gpuPowerCapabilitiesMax_7

    GPU 7 最大功率限制

    700.00