背景
为南网妙算服务器的DVFS组件增加相关协作接口
关联ISSUE
新增 web_backend 接口支持定制组件 DVFS 配置能力
新增 MDB 接口支持定制组件 DVFS 配置能力
评审点
评审点1:新增 MDB 资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment
评审点2:新增MDB 资源协作接口:bmc.kepler.Systems.DVFS.Adjustment
评审点3:新增 web rest get 接口:/UI/Rest/System/Dvfs
评审点4:新增 web rest patch接口:/UI/Rest/System/Dvfs
详细描述
评审点1:新增 MDB 资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment
路径描述:新增公司下的DVFS调频组件的调节参数路径,用于对DVFS组件进行相关参数配置
实现接口
| 实现接口 | 实现接口描述 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| bmc.kepler.Systems.DVFS.Adjustment | (1)实现 SetDvfsEnabled方法,用于设置DVFS组件开关(2)实现SeFrequencyStepMHz方法,用于设置调频步进,单位MHz(3)实现SetMinFrequencyMHz方法,用于设置最小调频频率,单位MHz(4)实现SetFrequencyIntervalMilliseconds方法,用于设置调频间隔,单位ms |
不涉及 | (1)字段:DvfsEnabled,DVFS组件开关字段需复位持久化 (2)字段:FrequencyStepMHz,调频步进字段需复位持久化 (3)字段:MinFrequencyMHz,最小调频频率字段需复位持久化 (4)字段:FrequencyIntervalMilliseconds,调频间隔字段需复位持久化 |
新增接口,无兼容性问题 |
评审点2:新增MDB 资源协作接口:bmc.kepler.Systems.DVFS.Adjustment
接口描述:DVFS组件需要通过 MDB 暴露 DVFS 配置能力,用于查询和设置 DVFS 相关参数。
属性评审点
新增属性
| 属性名称 | 签名 | 只读 | 变化通知 | 属性描述 | 访问权限 | 属性来源 | 持久化类型 | 易变属性 | |
|---|---|---|---|---|---|---|---|---|---|
| DvfsEnabled | b | True | True | 表示DVFS 使能状态,默认值为false | Read: ReadOnly | 代码刷新 | 复位持久化 | True | |
| FrequencyStepMHz | u | True | True | U32,调频步进,单位 MHz,默认值为100 | Read: ReadOnly | 代码刷新 | 复位持久化 | false | |
| MinFrequencyMHz | u | True | True | U32,设置的最小调频频率,单位 MHz,默认值为1000 | Read: ReadOnly | 代码刷新 | 复位持久化 | false | |
| FrequencyIntervalMilliseconds | u | True | True | U32,调频间隔,单位 ms,默认值为2000 | Read: ReadOnly | 代码刷新 | 复位持久化 | false |
方法评审点
新增方法
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | |
|---|---|---|---|---|---|---|---|
| SetDvfsEnabled | a{ss}b | DvfsEnabled: 表示DVFS 使能状态,用于设置DVFS组件开关 | 设置DVFS组件是否打开 | PowerMgmt | |||
| SetFrequencyStepMHz | a{ss}u | FrequencyStepMHz: U32,调频步进,单位 MHz,默认值为100 | 设置调频步进 | PowerMgmt | |||
| SetMinFrequencyMHz | a{ss}u | MinFrequencyMHz: U32,设置的最小频率,单位 MHz,默认值为1000 | 设置最小频率 | PowerMgmt | |||
| SetFrequencyIntervalMilliseconds | a{ss}u | FrequencyIntervalMilliseconds: U32,调频间隔,单位 ms,默认值为2000 | 设置调频间隔 | PowerMgmt |
评审点3:新增 web rest get 接口:/UI/Rest/System/Dvfs
资源URI:/UI/Rest/System/Dvfs
变化类型 :新增接口
操作类型:GET
操作权限:ReadOnly
应用场景 :获取DVFS组件开启及相关调频参数
输出参数:
| 参数名 | 类型 | 示例 | 描述 |
|---|---|---|---|
| FrequencyIntervalMilliseconds | integer | 2000 | 调频间隔,单位ms |
| FrequencyStepMHz | integer | 100 | 调频步进,单位 MHz |
| MinFrequencyMHz | integer | 1000 | 最小调频频,单位MHz |
| DvfsEnabled | boolean | false | DVFS组件开关 |
请求样例:
GET /UI/Rest/System/Dvfs
请求头:
Content-Type: header_type
Cookie: SessionId=session_id_value
请求消息体:无
响应样例:
{DvfsAdjustment:[
{
"SystemId": 1,
"DvfsEnabled": true,
"FrequencyIntervalMilliseconds ": 5000,
"FrequencyStepMHz ": 100,
"MinFrequencyMHz ": 1000
}
]
}
响应码:200
评审点4:新增 web rest PATCH 接口/UI/Rest/System/Dvfs
资源URI:/UI/Rest/System/Dvfs
变化类型 :新增接口
操作类型:patch
操作权限:PowerMgmt
应用场景 :设置DVFS组件开启及相关调频参数
输出参数:
| 参数名 | 类型 | 示例 | 取值约束 | 描述 |
|---|---|---|---|---|
| FrequencyIntervalMilliseconds | integer | 2000 | 范围: 500 - 5000 | 调频间隔,单位:ms |
| FrequencyStepMHz | integer | 100 | 范围: 50,100,150,200 | 调频步进,单位:MHz |
| MinFrequencyMHz | integer | 1000 | 范围: [1000-MAX] | 最小频率,单位:MHz;其中取值范围中的MAX代表该服务器CPU的主频值 |
| DvfsEnabled | boolean | false | 范围:true\false | DVFS组件开关 |
请求样例:
PATCH /UI/Rest/System/PowerSupply
请求头:
Content-Type: header_type
X-CSRF-Token: auth_value
Cookie: SessionId=session_id_value
请求消息体:
{DvfsAdjustment:[
{
"SystemId": 1,
"DvfsEnabled": true,
"FrequencyIntervalMilliseconds ": 5000,
"FrequencyStepMHz ": 100,
"MinFrequencyMHz ": 1000
}
]
}
}
响应样例:
{DvfsAdjustment:[
{
"SystemId": 1,
"DvfsEnabled": true,
"FrequencyIntervalMilliseconds ": 5000,
"FrequencyStepMHz ": 100,
"MinFrequencyMHz ": 1000
}
]
}
响应码:200
是否准备好AI预审
是
评审结论
通过,具体结论如下:
1、同意新增资源协作路径:/bmc/kepler/Systems/:SystemId/DVFS/Adjustment,接口:bmc.kepler.Systems.DVFS.Adjustment,用于VFS组件进行相关参数配置;
2、同意在资源协作接口:bmc.kepler.Systems.DVFS.Adjustment下新增相关属性和方法,用于查询和设置 DVFS 相关参数,详细信息见评审点2。
3、同意新增 web rest get 接口:/UI/Rest/System/Dvfs ,用于获取DVFS组件相关设置参数;
4、同意新增 web rest patch接口:/UI/Rest/System/Dvfs ,用于设置DVFS组件相关设置参数;
遗留问题:
1、bmc.kepler.Systems.DVFS.Adjustment下的属性变化通知修改为true;
回复:已修改评审点2中属性列表中的“变化通知”为True;
2、GET、PATCH /UI/Rest/System/Dvfs接口请求、响应内容区分多个系统;
回复:已修改评审点3、4中请求、响应体,增加了区分多系统的请求体结构;
3、MinFrequencyMHz属性取值范围补充对MAX来源的说明;
回复:已在评审点4的最小频率参数的描述中增加MAX来源说明
4、针对参数命名不规范,需要调整;
回复:已对参数进行调整,采用Frequency作为调频关键字,修改后结果如下表:
| 历史参数名称 | 调整后参数名称 | 描述 | 是否有做调整 |
|---|---|---|---|
| DvfsEnabled | DvfsEnabled | DVFS组件开关 | 否 |
| CollectDataTimeMilliseconds | FrequencyIntervalMilliseconds | 调频间隔,单位:ms | 是 |
| CpuFrequencyStepMHz | FrequencyStepMHz | 调频步进,单位:MHz | 是 |
| MinFreqMHz | MinFrequencyMHz | 最小频率,单位:MHz | 是 |