鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

频率功耗分析

基于硬件驱动和BMC信息,获取服务器CPU频率、温度、功耗等信息,帮助用户定位业务的性能瓶颈,以充分利用当前硬件资源。

命令功能

基于硬件驱动和BMC信息,获取服务器CPU频率、温度、功耗等信息。

命令格式

1
devkit tuner turbostat [-h] [-l {0,1,2,3}] [-d <sec>] [-i <sec>] [--bmc]

参数说明

表1 参数说明

参数

参数选项

说明

-h/--help

-

可选参数,获取帮助信息。

-l/--log-level

0/1/2/3

可选参数,设置日志级别,默认为1。
  • 0:日志级别为DEBUG。
  • 1:日志级别为INFO。
  • 2:日志级别为WARNING。
  • 3:日志级别为ERROR。

-d/--duration

-

可选参数,设置采集时长,单位为秒,最小值为1秒,默认为一直采集,可使用Ctrl+\取消任务或Ctrl+C停止采集并进入分析。

-i/--interval

-

可选参数,设置采集间隔,单位为秒,最小值为1秒,最大值不能超过采集时长,默认为采集时长。如果不指定间隔,不生成子报告。每个子报告中收集数据的时间取决于间隔参数。

--bmc

-

可选参数,启用交互式输入,用户可输入BMC IP地址、用户名、密码,用于获取BMC相关的带外数据(温度,功耗等)。

使用示例

  1. 执行以下命令,获取服务器CPU频率、温度、功耗和BMC相关数据。
    1
    devkit tuner turbostat -d 10 --bmc
    

    参数-d 10表示采集时长为10秒,参数--bmc表示获取BMC相关数据。

  2. 在交互界面中根据返回信息输入BMC IP地址、用户名和密码,获取BMC相关数据。
    BMC Host IP: xx.xx.xx.xx
    BMC Username: Administrator
    BMC Password:

    返回信息片段如下:

    Starting to collect data
    [WARNING]Get socket power failed, possibly due to a low kernel version: [Errno 2] No such file or directory: '/sys/class/hwmon/hwmon1/power1_average'
    ...
    [WARNING]Get socket power failed, possibly due to a low kernel version: [Errno 2] No such file or directory: '/sys/class/hwmon/hwmon1/power1_average'
    CPU and Server Status Summary Report                    Time:2025/12/12 03:17:01
    ================================================================================
    
    CPU Core Frequency Table
    --------------------------------------------------------------------------------
    ──────────────────────────────────────────────────────
    | Logical ID | Physical ID | NUMA ID | Frequency (MHz) |
    ──────────────────────────────────────────────────────
    |          0 |           0 |       0 |          2900.0 |
    |          1 |           0 |       0 |          2900.0 |
    |          2 |           1 |       0 |         2904.59 |
    |          3 |           1 |       0 |         2904.59 |
    |          4 |           2 |       0 |         2895.44 |
    |          5 |           2 |       0 |         2895.44 |
    |          6 |           3 |       0 |         2897.18 |
    |          7 |           3 |       0 |         2897.18 |
    |          8 |           4 |       0 |         2898.61 |
    |          9 |           4 |       0 |         2898.61 |
    |         10 |           5 |       0 |          2900.0 |
    |         11 |           5 |       0 |          2900.0 |
    ...
    |        238 |         119 |       1 |         2899.34
    |        250 |         125 |       1 |         2899.33 |
    |        251 |         125 |       1 |         2899.33 |
    |        252 |         126 |       1 |         2900.67 |
    |        253 |         126 |       1 |         2900.67 |
    |        254 |         127 |       1 |         2897.99 |
    |        255 |         127 |       1 |         2897.99 |
    ──────────────────────────────────────────────────────
    
    CPU Socket status Table (In-band)
    --------------------------------------------------------------------------------
    ──────────────────────────────────────────────────────
    | CPU Socket ID | CPU Socket Power (W) | CPU Socket Die0 Temperature (C) | CPU Socket Die1 Temperature (C) |
    ──────────────────────────────────────────────────────
    |             0 | N/A                  |                           41.31 |                           40.98 |
    |             1 | N/A                  |                           29.87 |                           29.17 |
    ──────────────────────────────────────────────────────
    
    CPU Socket status Table (Out-of-band, '--bmc' required)
    --------------------------------------------------------------------------------
    ────────────────────────────────────────
    | CPU Socket ID | CPU Socket Temperature (C) | CPU Socket Mem Temperature (C) |
    ────────────────────────────────────────
    |             0 |                       40.5 |                           37.0 |
    |             1 |                       29.7 |                           32.0 |
    ────────────────────────────────────────
    
    Server status Table (Out-of-band, '--bmc' required)
    --------------------------------------------------------------------------------
    Total Server Power (W): 299.1
    Total CPU Power (W): 141.9
    Total Memory Power (W): 7.8
    Inlet Temperature (C): 24.0
    Outlet Temperature (C): 37.2
    
    Turbostat does not support 'devkit report'. Users can save the collected report by redirecting the output to a file.

    从返回信息中可以看到CPU Core Frequency、CPU Power and Temperature以及BMC相关的CPU Temperature、Server status信息。

    • CPU Core Frequency表示CPU核频率。
    • CPU Power and Temperature表示CPU功耗和温度。
    • CPU Temperature表示BMC相关的CPU温度。
    • Server status表示BMC相关的服务器状态,有以下内容。
      • Total Server Power (W)表示BMC统计的服务器总功耗。
      • Total CPU Power (W)表示BMC统计的CPU总功耗。
      • Total Memory Power (W)表示BMC统计的内存总功耗。
      • Inlet Temperature (C)表示BMC统计的入风口温度。
      • Outlet Temperature (C)表示BMC统计的出风口温度。