CSR配置字典之CoolingConfig类
更新时间: 2025/07/22
在Gitcode上查看源码

📋 文档信息

项目内容
文档标题CoolingConfig类配置字典
版本v1.2
创建日期2025-01-27
最后更新2026-05-12
维护状态✅ 活跃维护

📋 变更历史记录

文档变更记录

版本发布日期变更类型变更内容影响范围维护人员
v1.02025-01-27初始版本创建CoolingConfig类配置字典全新文档系统管理员
v1.12026-01-21补丁版本新增PID控制模式属性整机目标调速控制策略汪航
V1.22026-05-12补丁版本修改类概览描述信息类概览描述信息汪航

🎯 类概览

CoolingConfig 类

属性
类名称CoolingConfig
功能描述调速配置对象,提供智能调速、风扇控制、温度监控等散热配置功能
所属SIG组hardware
所属组件thermal_mgmt
责任人能效管理组
最后更新2026-05-12
状态🟢 正常运行

📊 属性定义详表

必选属性

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
SmartCoolingStateString"Enabled""Enabled"/"Disabled"-智能调速SmartCooling是否处于使能状态
1、true:处于使能状态
2、false:不处于使能状态
基础调速全局配置:是否支持智能调速模式"Enabled"CSR软件
SmartCoolingModeString"EnergySaving""EnergySaving"/"Custom"/"HighPerformance"/"LowNoise"/"LiquidCooling"-智能调速模式
1、"Custom"
2、"HighPerformance"
3、"LowNoise"
4、"EnergySaving"
5、"LiquidCooling"
默认为"EnergySaving"
基础调速全局配置:当前智能调速模式"EnergySaving"CSR软件
LevelPercentRangeU8[][]U8[]-手动模式转速级别范围基础调速全局配置:手动转速取值范围,用于手动转速下发的判断[20, 100]CSR软件
InitLevelInStartupU8100U8-开机默认初值基础调速全局配置:BMC启动时下发的风扇转速,保证BMC启动时散热可靠性100CSR软件
DiskRowTemperatureAvailableBooleanfalsetrue/false-背板上硬盘温度是否能正常获取
1、false:有硬盘温度获取不到
2、true:硬盘温度都能获取到
基础调速全局配置:用于环温调速时判断是否可获取硬盘温度,用于环温调速生效判断falseCSR软件
SysHDDsMaxTemperatureDouble32768Double-HDD硬盘的最大温度,单位:摄氏度基础调速全局配置:硬盘温度参与调速80软件刷新软件
SysSSDsMaxTemperatureDouble32768Double-SSD硬盘最大温度(仅SAS/SATA),单位:摄氏度基础调速全局配置:硬盘温度参与调速80软件刷新软件
SensorLocationSupportedBooleanfalsetrue/false-是否支持温度海洋
(属性配置时默认为false(即不配置是为false),产品支持则需自行配置psr中属性为true)
基础调速全局配置:用于温度海洋界面展示,不支持机型可不配置,支持机型需配置为truefalseCSR软件
FanBoardNumU81U8-含有调速风扇的风扇板个数多风扇板机型需进行适配,否则无法正确进行调速1CSR软件

可选属性

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
MinimalLevelU80[0, 100]-当前服务器允许下发的最小风扇转速百分比基础调速全局配置:风扇自动、手动调速模式,都会检查下发的风扇转速百分比是否小于最小值,如果小于最小值则置为最小值0CSR软件
MaxLimiLevelU8100[0, 100]-当前服务器允许下发的最大风扇转速百分比基础调速全局配置:风扇自动、手动调速模式,都会检查下发的风扇转速百分比是否大于最大值,如果大于最大值则置为最大值100CSR软件
PIDControlModeU811-慢升快降,2-快升慢降,3-慢升慢降,4-快升快降-PID目标调速控制模式PID目标调速控制模式,用于在目标调速控制时对风扇转速上升或下降的快慢计算策略1CSR软件
MinAllowedFanSpeedPercentU8255U8-失联状态场景风扇转速级别,默认值255表示属性无效,有效值范围为机型允许的最小风扇转速比到100主从BMC失联场景,从BMC设置风扇转速100CSR软件
MinAllowedFanSpeedEnabledBooleanfalsetrue/false-失联状态场景下发风扇转速功能使能状态,true:使能,false:未使能主从BMC失联场景,从BMC设置风扇转速trueCSR/软件设置软件
MixedModeSupportedBooleanfalsetrue/false-是否支持混合模式场景,true:支持混合模式,false:不支持混合模式主BMC向从BMC发送转速时,从BMC根据混合模式进行判断,取值自动模式下的转速和接收转速的最大值生效trueCSR软件

🔗 动态关联机制

语法规范

使用标准配置语法:

yaml
# 智能调速配置
SmartCoolingState: "Enabled"
SmartCoolingMode: "EnergySaving"

# 手动调速配置
LevelPercentRange: [20, 100]
InitLevelInStartup: 100

# 硬盘温度配置
DiskRowTemperatureAvailable: false
SysHDDsMaxTemperature: 80.0
SysSSDsMaxTemperature: 80.0

# 温度海洋配置
SensorLocationSupported: false

# 整机风扇最大、最小转速配置
MinimalLevel: 0
MaxLimiLevel: 100

# PID目标调速控制模式配置
PIDControlMode: 1

# 风扇板配置
FanBoardNum: 1

# 从BMC控制配置
MinAllowedFanSpeedEnabled: true
MinAllowedFanSpeedPercent: 100
MixedModeSupported: true

关联说明

  • 智能调速: SmartCoolingState控制智能调速总开关
  • 调速模式: SmartCoolingMode决定具体的调速策略
  • 硬盘温度: 硬盘温度参与环温调速计算
  • 温度海洋: SensorLocationSupported控制温度海洋界面展示
  • PID目标调速控制模式: PIDControlMode控制PID目标调速控制策略
  • 风扇板数量: FanBoardNum涉及正常调速风扇板个数
  • 从BMC调速: MinAllowedFanSpeedEnabled, MinAllowedFanSpeedPercent和MixedModeSupported控制从BMC实际转速

📂 分类标准

硬件属性

  • 定义:当前版本无硬件属性
  • 特点:所有属性都是软件管理相关
  • 示例:无

软件属性

  • 定义:由软件管理和维护的散热配置参数
  • 特点:调速模式、温度监控、配置管理等
  • 示例:所有属性都是软件属性

📝 配置示例

基础调速配置

json
{
  "CoolingConfig_Basic": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "EnergySaving",
    "LevelPercentRange": [20, 100],
    "InitLevelInStartup": 100,
    "DiskRowTemperatureAvailable": false,
    "SysHDDsMaxTemperature": 80.0,
    "SysSSDsMaxTemperature": 80.0,
    "SensorLocationSupported": false,
    "PIDControlMode": 1,
    "FanBoardNum": 1
  }
}

高性能调速配置

json
{
  "CoolingConfig_HighPerformance": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "HighPerformance",
    "LevelPercentRange": [30, 100],
    "InitLevelInStartup": 100,
    "DiskRowTemperatureAvailable": true,
    "SysHDDsMaxTemperature": 75.0,
    "SysSSDsMaxTemperature": 75.0,
    "SensorLocationSupported": true,
    "PIDControlMode": 1,
    "FanBoardNum": 1
  }
}

低噪音调速配置

json
{
  "CoolingConfig_LowNoise": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "LowNoise",
    "LevelPercentRange": [15, 80],
    "InitLevelInStartup": 80,
    "DiskRowTemperatureAvailable": true,
    "SysHDDsMaxTemperature": 85.0,
    "SysSSDsMaxTemperature": 85.0,
    "SensorLocationSupported": false,
    "PIDControlMode": 1,
    "FanBoardNum": 1
  }
}

液冷调速配置

json
{
  "CoolingConfig_LiquidCooling": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "LiquidCooling",
    "LevelPercentRange": [10, 60],
    "InitLevelInStartup": 60,
    "DiskRowTemperatureAvailable": true,
    "SysHDDsMaxTemperature": 70.0,
    "SysSSDsMaxTemperature": 70.0,
    "SensorLocationSupported": true,
    "PIDControlMode": 1,
    "FanBoardNum": 1
  }
}

手动调速配置

json
{
  "CoolingConfig_Manual": {
    "SmartCoolingState": "Disabled",
    "SmartCoolingMode": "Custom",
    "LevelPercentRange": [25, 100],
    "InitLevelInStartup": 100,
    "DiskRowTemperatureAvailable": false,
    "SysHDDsMaxTemperature": 80.0,
    "SysSSDsMaxTemperature": 80.0,
    "SensorLocationSupported": false,
    "PIDControlMode": 1,
    "FanBoardNum": 1
  }
}

PID目标调速控制模式快升慢降调速配置

json
{
  "CoolingConfig_Basic": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "EnergySaving",
    "LevelPercentRange": [20, 100],
    "InitLevelInStartup": 100,
    "DiskRowTemperatureAvailable": false,
    "SysHDDsMaxTemperature": 80.0,
    "SysSSDsMaxTemperature": 80.0,
    "SensorLocationSupported": false,
    "PIDControlMode": 2,
    "FanBoardNum": 1
  }
}

从BMC调速控制配置

json
{
  "CoolingConfig_Slave": {
    "SmartCoolingState": "Enabled",
    "SmartCoolingMode": "EnergySaving",
    "LevelPercentRange": [20, 100],
    "InitLevelInStartup": 100,
    "DiskRowTemperatureAvailable": false,
    "SysHDDsMaxTemperature": 80.0,
    "SysSSDsMaxTemperature": 80.0,
    "SensorLocationSupported": false,
    "PIDControlMode": 1,
    "FanBoardNum": 1,
    "MinAllowedFanSpeedEnabled": true,
    "MinAllowedFanSpeedPercent": 100,
    "MixedModeSupported": true
  }
}

🔧 使用指南

配置步骤

  1. 智能调速配置:设置SmartCoolingState和SmartCoolingMode
  2. 手动调速配置:设置LevelPercentRange和InitLevelInStartup
  3. 硬盘温度配置:设置DiskRowTemperatureAvailable和温度阈值
  4. 温度海洋配置:根据产品支持情况设置SensorLocationSupported
  5. PID目标调速控制模式配置: 根据产品支持情况设置PIDControlMode
  6. 风扇板配置: 根据产品实际支持风扇板个数设置FanBoardNum
  7. 从BMC调速配置: 根据产品实际是否支持从BMC调速设置MinAllowedFanSpeedEnabled, MinAllowedFanSpeedPercent和MixedModeSupported
  8. 参数验证:验证配置参数的合理性和有效性

智能调速模式

  • EnergySaving: 节能模式,优先降低功耗和噪音
  • HighPerformance: 高性能模式,优先保证散热效果
  • LowNoise: 低噪音模式,优先降低风扇噪音
  • Custom: 自定义模式,用户自定义调速策略
  • LiquidCooling: 液冷模式,适用于液冷散热系统

手动调速管理

  • LevelPercentRange: 定义手动调速的转速范围
  • 范围限制: 通常设置为[最小转速%, 最大转速%]
  • 安全考虑: 最小转速不能过低,确保散热安全
  • 用户控制: 用户可以在此范围内手动设置转速

启动保护机制

  • InitLevelInStartup: BMC启动时的初始风扇转速
  • 安全启动: 通常设置为100%,确保启动时散热可靠
  • 渐进调节: 启动后根据温度逐步调节到合适转速

硬盘温度监控

  • DiskRowTemperatureAvailable: 硬盘温度是否可获取
  • SysHDDsMaxTemperature: HDD硬盘最大温度阈值
  • SysSSDsMaxTemperature: SSD硬盘最大温度阈值
  • 调速参与: 硬盘温度参与环温调速计算

温度海洋功能

  • SensorLocationSupported: 是否支持温度海洋界面
  • 界面展示: 在Web界面显示各传感器的温度分布
  • 产品差异: 不同产品根据支持情况配置

整机允许最小转速

  • MinimalLevel: 风扇手动、自动模式均会校验的最小转速百分比
  • 范围限制: 可取0-100
  • 安全考虑: 最小转速值限制最低生效转速,低于最低允许转速,会将转速置为最小允许转速
  • 用户控制: 不同产品根据具体需求配置

整机允许最大转速

  • MaxLimiLevel: 风扇手动、自动模式均会校验的最大转速百分比
  • 范围限制: 可取0-100
  • 安全考虑: 最大转速值限制最大生效转速,高于最大允许转速,会将转速置为最大允许转速
  • 用户控制: 不同产品根据具体需求配置

PID目标控制模式配置

  • PIDControlMode: PID目标调速控制模式
  • 范围限制: 1-慢升快降,2-快升慢降,3-慢升慢降,4-快升快降
  • 用户控制: 不同产品根据具体需求配置,产品默认支持慢升快降策略

风扇板个数配置

  • FanBoardNum: 含有调速风扇的风扇板个数
  • 用户控制: 不同产品根据具体需求配置,默认为1

从BMC调速控制配置

  • MinAllowedFanSpeedEnabled: 失联状态场景下发风扇转速功能使能状态
  • MinAllowedFanSpeedPercent: 失联状态场景风扇转速级别
  • MixedModeSupported: 混合模式场景
  • 用户控制: 不同产品根据具体需求配置,默认不支持

注意事项

  • 模式兼容: 确保调速模式与硬件兼容
  • 范围合理: 手动调速范围应该合理设置
  • 温度准确: 硬盘温度监控需要准确配置
  • 功能支持: 温度海洋功能需要硬件支持

故障排除

  1. 调速不生效

    • 检查SmartCoolingState是否为"Enabled"
    • 确认SmartCoolingMode设置是否正确
    • 验证相关CoolingPolicy是否正确配置
  2. 手动调速异常

    • 检查LevelPercentRange设置是否合理
    • 确认转速范围是否在硬件支持范围内
    • 验证手动调速接口是否正常
  3. 硬盘温度异常

    • 检查DiskRowTemperatureAvailable设置
    • 确认硬盘温度传感器是否正常工作
    • 验证温度阈值设置是否合理
  4. 转速下发失败:

    • 检查FanBoardNum是否正确配置

📚 相关文档