Linux内核邮件列表里,又吵起来了。这次的话题是CPU Boost——一个听起来很猛、实际争议不小的开关。
![]()
华为工程师张鹏杰向Linux内核提交了一个补丁,提议在支持相关功能的前提下,默认启用ACPI CPPC CPUFreq驱动中的CPU Boost模式。补丁改的是cppc_cpufreq.c文件,新增了20行代码,用来初始化Boost的默认状态。
先解释一下背景。ACPI CPPC是一套由ACPI定义的处理器性能控制机制,操作系统通过它和平台固件交互,调节处理器性能。在当前通用ACPI CPPC驱动下,当处理器的最高性能等级高于标称性能等级时,Boost模式默认是禁用的,用户得自己通过sysfs手动开启。
张鹏杰的逻辑很直接:只要有至少一个CPU支持Boost,就应该自动为所有支持该功能的策略启用Boost。Phoronix指出,ACPI CPPC驱动广泛用于ARM64 Linux服务器平台,而这些平台的用户更希望保持峰值性能。
但Arm工程师、Linux开发者Christian Loehle不这么看。他的反驳可以拆成几条:
- 现代处理器的功耗和热设计约束太复杂,Boost模式本身并不能保证处理器不降频;
- 懂行的用户可以自行通过scaling_max_freq单独设置性能上限,适配不同平台、工作负载和运行环境;
- 在Linux上拥有一个标称性能不等于最高性能的平台,目前只会带来更多麻烦。
Loehle的原话是:“我时常在想我们是否应该完全保留Boost,如今芯片的功耗和散热边界已经足够复杂,以至于Boost的意义不大,它既不能保证不会降频,也不一定能获得请求的性能。”
他还提到,华为此前引入过另一个相关commit(54e74df5d76d),他对那个的使用场景感到好奇。
这场争论的核心其实是一个老问题:默认值该照顾谁。服务器用户想要峰值性能,但Boost不是许愿池——开了它,芯片该降频还是降频。Loehle的立场是,与其给所有人默认开一个不保证效果的开关,不如让需要的人自己调。
需要提醒的是,这个补丁针对的是通用ACPI CPPC CPUFreq驱动,并非面向所有Linux处理器平台统一开启Boost。最终是否合并,还得看Linux内核维护者后续的讨论与审查。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.