Redfish API 支持#

DGX 系统固件支持 Redfish API。Redfish 是 DMTF 的标准 API 集,用于管理和监控平台。默认情况下,DGX H100/H200 BMC 和 SBIOS 中启用了 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 H100/H200 中支持的 Redfish 功能的一些信息。

支持以下功能

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

  • 管理器会话

  • BMC 配置

  • SBIOS 配置

  • SBIOS 启动顺序管理

  • 更改 UEFI 安全启动平台密钥

  • 获取 PCIe 设备和功能清单

  • 获取存储清单

  • 获取系统组件信息和运行状况(PSU、FAN、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/2' --header 'If-Match: *'  --header 'Content-Type: application/json' --data-raw '{ "Password" : "<password>" }'
    

    password 字段是必填字段,并且必须满足以下要求

    • 至少 13 个字符长,但不超过 20 个字符。

    • 至少 1 个小写字母 (a-z)。

    • 至少 1 个大写字母 (A-Z)。

    • 至少 1 个数字 (0-9)。

    • 至少 1 个特殊字符 (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)。

    • 不允许使用空格。

  • 重置 BMC

    以下 curl 命令强制重置 DGX H100/H200 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 H100/H200 系统中的 GPU 托盘组件,无论您要更新哪个 GPU 托盘组件,都需要指定 HGX_0 作为目标。

    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_HGX_DGXH100-H200x8_xxxxxx.x.x.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 H100/H200 BMC。

    • HostBIOS_0 — 这是 DGX H100/H200 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_xxxxxx.x.x.fwpkg 固件文件。

  • 强制更新

    仅当传入固件版本比现有版本更新时,才会更新 DGX H100/H200 系统组件固件。要覆盖此行为并强制刷新组件,请指定 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 H100/H200 固件更新指南》中的“固件更新激活”以获取更多信息。

BIOS 设置#

  • 支持的 BIOS 属性

    1. 获取 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

    2. 获取 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

    3. 获取包含所有 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 H100/H200 上的启动顺序#

要使用 Redfish API 修改 DGX H100/H200 上的启动顺序,请按照此过程中的步骤操作。

  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 或再次运行此过程来完成。

更改 UEFI 安全启动平台密钥#

您可以通过以下两种方式更改 UEFI 安全启动平台密钥 (PK)

  • 注册由当前 PK 签名的新密钥。

  • 当系统处于安全启动设置模式时,注册任何新密钥,如本过程所述。

    当未注册任何安全启动 PK 时,将进入此模式。在注册任何任意密钥作为新 PK 之前,请先删除当前的 PK。注册新 PK 后,安全启动状态将自动从设置模式更新为用户模式。

  1. 使用 PATCH 方法将 SecureBootEnable 操作设置为 false

    curl -ks -u <bmc-user>:<password> -H "Content-Type: application/json" -X PATCH https://<bmc-ip-address>/redfish/v1/Systems/DGX/SecureBoot --header 'If-Match: "1721382290"' -d '{"SecureBootEnable":false}' | jq
    
  2. 使用 DELETE 方法删除当前 PK。

    curl -ks -u <bmc-user>:<password> -H "Content-Type: application/json" -X DELETE https://<bmc-ip-address>/redfish/v1/Systems/DGX/SecureBoot/SecureBootDatabases/PK/Certificates/1 | jq
    
  3. 使用 POST 方法添加新 PK。

    curl -ks -u <bmc-user>:<password> -H "Content-Type: application/json" -X POST https://<bmc-ip-address>/redfish/v1/Systems/DGX/SecureBoot/SecureBootDatabases/PK/Certificates -d
    '{
     "CertificateString": "-----BEGIN CERTIFICATE-----\n ... \n-----END CERTIFICATE-----",
     "CertificateType": "PEM",
     "UefiSignatureOwner": "<GUID-of-the-UEFI-signature-owner>"
    }'
    

    其中

    • CertificateString 字符串是以 -----BEGIN CERTIFICATE 开头的证书。

    • CertificateType 字符串是证书的格式,即 Privacy Enhanced Mail (PEM) 编码的单个证书。

    • UefiSignatureOwner 字符串 (UUID) 是此签名的 UEFI 签名所有者。

  4. 重新启动系统以使更改生效。

    curl -ks -u <bmc-user>:<password> -H "Content-Type: application/json" -X POST https://<bmc-ip-address>/redfish/v1/Systems/DGX/Actions/ComputerSystem.Reset -d '{ "ResetType": "ForceRestart"}' | jq
    

    等待操作系统启动。

  5. 系统启动后,检查 PK 凭据,查看是否列出了新证书。

    curl -ks -u <bmc-user>:<password> https://<bmc-ip-address>/redfish/v1/Systems/DGX/SecureBoot/SecureBootDatabases/PK/Certificates/2 | jq
    

遥测#

  • 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 配置,例如 bmc-config.bak

    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 配置,例如 bmc-config.bak

    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
    

    注意

    对于早于 24.09.17 的 BMC 版本,请指定 --data-raw '{"DiagnosticDataType" : "OEM"}'

    示例响应

    {
      "@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
    

    注意

    对于早于 24.09.17 的 BMC 版本,请使用以下命令

    curl -k -u <bmc-user>:<password> --request GET 'https://<bmc-ip-address>/redfish/v1/Managers/BMC/LogServices/DiagnosticLog/Entries/All/Attachment' --output debugBMC.tgz
    

清除 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#NodeManager.NodeManager",
    "@odata.etag": "\"1709588153\"",
    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager",
    "@odata.type": "#NodeManager.v1_0_0.NodeManager",
    "Actions": {
        "#NodeManager.ChangeState": {
            "@Redfish.ActionInfo": "/redfish/v1/Managers/BMC/NodeManager/ChangeStateActionInfo",
            "target": "/redfish/v1/Managers/BMC/NodeManager/Actions/NodeManager.ChangeState"
        }
    },
    "Description": "Node Manager for BMC",
    "Domains": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains"
    },
    "Id": "NodeManager",
    "Name": "Node Manager",
    "Policies": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Policies"
    },
    "Status": {
        "Health": "OK",
        "State": "Disabled"
    },
    "ThrottlingStatus": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/ThrottlingStatus"
    },
    "Triggers": {
        "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Triggers"
    }
}

#

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

  • 要获取域列表

    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"
            }
        ],
        "Members@odata.count": 6,
        "Name": "NvidiaNmDomainCollection"
    }
    
  • 要查看域策略

    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": {
            "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"
        }
    }
    
  • 要查看域内的策略

    每个域都有一组策略,用于定义如何管理每个组件。电源按百分比划分,组件不得超过特定预算。

    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_CPU",
       "Id": "0",
       "Limit": 800,
       "Name": "0",
       "PercentageOfDomainBudget": 15,
       "Status": {
           "State": "Disabled"
       }
    }
    

    在此示例中,策略 0 定义了域 0 的预算百分比。两个插槽的 CPU 预算为 800 W,平均分配。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/21",
        "@odata.type": "#NvidiaNmDomain.v1_4_0.NvidiaNmDomain",
        "Capabilities": {
            "Max": 6000,
            "MaxCorrectionTimeInMs": 0,
            "MaxStatisticsReportingPeriod": "0",
            "Min": 4000,
            "MinCorrectionTimeInMs": 0,
            "MinStatisticsReportingPeriod": "0"
        },
        "Id": "21",
        "Name": "custom4",
        "Policies": {
            "@odata.context": "/redfish/v1/$Metadata#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "@odata.type": "#NvidiaNmPolicyCollection.NvidiaNmPolicyCollection",
            "Members": [
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/21/Policies/0"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/21/Policies/1"
                },
                {
                    "@odata.id": "/redfish/v1/Managers/BMC/NodeManager/Domains/21/Policies/2"
                }
            ],
            "Name": "NvidiaNmPolicyCollection"
        },
        "Status": {
            "State": "Enabled"
        }
    }
    
  • 要修补自定义域策略,请仅提供您要进行的配置更改。

  • 要删除自定义域策略

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

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"
            }
        ],
        "Members@odata.count": 3,
        "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": "dcPlatformPower_avg",
                "MetricValue": "2181.00",
                "Timestamp": "2024-07-15T18:49:43+00:00"
            },
            {
                "MetricId": "dcPlatformPowerDGX_avg",
                "MetricValue": "1444.00",
                "Timestamp": "2024-07-15T18:49:43+00:00"
            },
            {
                "MetricId": "dcPlatformPowerHGX_avg",
                "MetricValue": "736.00",
                "Timestamp": "2024-07-15T18:49:43+00:00"
            },
            {
                "MetricId": "dcPlatformEnergy",
                "MetricValue": "2181.00",
                "Timestamp": "2024-07-15T18:49:43+00:00"
            },
    
                    ...
    
            {
                "MetricId": "gpuPowerCapabilitiesMax_7",
                "MetricValue": "700.00",
                "Timestamp": "2024-07-15T18:49:43+00:00"
            }
        ],
        "Name": "NvidiaNMMetrics_0"
    }
    
    指标定义#

    指标 ID

    定义

    示例指标值

    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 基板上固定组件(例如 FAN、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