Skip to content

MtkGpuGovernor - 联发科GPU调频器

这个简易的GPU调频器可以满足对联发科GPU频率的基础调控

params - 调频器参数

字段类型定义
baseRateHzint基准工作频率
burstRateHzint突发工作频率

当GPU负载为0时调频器按照baseRateHz频率工作, 当负载非0时调频器按照burstRateHz频率工作.
由于联发科内核提供的GPU频率数量过多, 此调频器将只会选取部分GPU频率,具体信息请查看调度日志.

json
{
"MtkGpuGovernor": {
    "enable": true,
    "params": {
      "baseRateHz": 20,
      "burstRateHz": 40
    },
  }
  ...//其他模块
}

voltAdjust - 电压调整

字段类型定义
minVoltint最低电压(单位:uV)
maxVoltint最高电压(单位:uV)
voltOffsetint电压偏移值(单位:uV)
json
"voltAdjust": {
    ...
      "minVolt": 0,
      "maxVolt": 100000,
      "voltOffset": 0
    },
    ...

此功能仅用于适配某些默认电压表不可用的设备, 不建议在通用的配置文件中调整此项参数, 可能导致死机甚至烧毁硬件.

modes - 模式参数

字段类型定义
marginArrayIntGPU性能冗余(范围:0-100)
upRateDelayintGPU升频延迟(单位:ms)
downRateDelayintGPU降频延迟(单位:ms)

Margin被设置的越高则代表GPU性能冗余越大, 升频的几率越高.就越耗电.GPU频率提升延迟(upRateDelay)用于降低GPU频率被提升得过高的几率, 每次升频时调频器都会根据频率提升延迟和能耗比变化判定是否需要升频.

当GPU负载大于upRateThres时提升频率, 当GPU负载减少的差值大于downRateDiff时降低频率.例如: 设置upRateThres=90, downRateDiff=10, 当GPU负载为75时降低GPU频率, 当GPU负载为85时GPU频率不变,当GPU负载为95时提升GPU频率.upRateThres的值越小升频越积极, downRateDiff的值越大降频越缓慢, downRateDiff的值不得大于upRateThres.

json
  "MtkGpuGovernor": {
    "enable": true,
    "params"
    "voltAdjust"
    "modes": {
      "powersave": {
        "margin": 10,
        "upRateDelay": 50,
        "downRateDelay": 50
      },
      "balance": {
        ...
      },
      "performance": {
        ...
      },
      "fast": {
        ...
      }
    }
  },

DevfreqTuner

节选自CuToolbox V8.2.0 Alpha更新日志

[DevfreqTuner] 新增的模块, 支持联发科/高通/麒麟/紫光展锐平台的DDR/GPU频率调整功能.

json
"DevfreqTuner": {
    "enable": true
  },