首页
/ CoreFreq 2.0.3版本发布:跨架构CPU监控工具的重大更新

CoreFreq 2.0.3版本发布:跨架构CPU监控工具的重大更新

2025-06-24 07:15:11作者:丁柯新Fawn

CoreFreq是一款开源的CPU性能监控工具,它能够深入监控处理器内部的各种性能指标和硬件特性。不同于常见的系统监控工具,CoreFreq提供了对CPU微架构级别的详细监控能力,包括缓存性能、内存控制器活动、电源管理等底层硬件信息。最新发布的2.0.3版本带来了多项重要改进和新功能支持。

用户界面改进

2.0.3版本对用户界面进行了多项优化。首先增加了L3缓存显示的数字长度,使得大容量缓存能够完整显示。在内存通道显示方面,将"Disabled"状态重命名为更准确的"Undefined"描述。对于使用命令行界面的aarch64、riscv64和ppc64架构用户,现在可以获取SMBIOS DIMM模块的部件号信息。此外,当检测到Intel处理器不支持HDC(硬件反馈接口)功能时,界面会明确显示"N/A"而非空白。

代码质量与内核兼容性提升

开发团队在本版本中进行了代码重构,优化了变量命名以提高可读性。内核模块部分改进了VT-d(虚拟化直接I/O)的内存区域请求处理,确保在访问前正确获取内存区域。uBench模块进行了代码清理,提高了执行效率。

针对不同Linux内核版本的兼容性方面,2.0.3版本做了大量工作:防止在检测到CPU数量超过CORE_COUNT(如384核的EPYC处理器)时加载模块;将PCI列表改为静态声明以避免内核帧大小限制;适配即将发布的6.15内核中hrtimer_setup()的变更;确保of_root定义在3.19及以上内核中可用;优化inline函数的使用方式;为6.14内核添加node_to_amd_nb()的兼容性处理;新增CONFIG_ACPI_CPPC_LIB配置选项以支持条件编译EPP功能。

AMD处理器支持增强

Zen架构改进

新版本改进了Zen架构处理器的内存子系统监控能力,现在能够从启用的芯片选择信号中准确计算DIMM内存条的数量。数据交换(Datafabric)调用方式从直接访问改为通过内核PCI子系统进行,提高了稳定性和兼容性。

HSMP(硬件系统管理端口)功能获得多项改进:实现了独立的锁机制替代原有的SMN锁;修复了CONFIG_AMD_NB构建模式下的参数索引问题;新增了邮箱协议功能测试,通过简单的2+1=3算术运算验证协议是否正常工作。温度监控方面,将封装温度测量改为指针函数方式,提高了灵活性。

架构支持方面新增了对"Strix Halo"、"Krackan Point"、"Fire Range"以及Ryzen Z2系列处理器的识别能力。

Genoa架构优化

针对EPYC Genoa服务器处理器,2.0.3版本显著提升了支持能力:可探测多达四个内存控制器;修正了CCD和CCX拓扑结构计算,确保获取正确的SMU温度传感器地址;将BIT_IO_RETRIES_COUNT重试次数增加,优化HSMP_RD_DIMM_PWR调用的并行处理;添加了对Genoa工程样片的特定支持。

内存功耗监控方面,现在能够累计RAM的总功耗消耗,并尝试通过HSMP接口监控DIMM内存条的功耗。电压和功率监控改用更通用的实现方式。

Hawk Point和Turin支持

为Phoenix UMC架构的Hawk Point处理器设置了正确的AddrCfg和DimmCfg地址。针对即将发布的EPYC Turin处理器(家族1Ah),添加了HSMP支持基础。

Intel处理器功能扩展

Meteor Lake和Arrow Lake增强

对Intel新一代Core Ultra(Meteor Lake)和Arrow Lake处理器,2.0.3版本改进了内存控制器总线频率和DDR速度监控,使其能够跟随SOC超频状态。重构了IMC(集成内存控制器)解码器以准确查询DDR时钟频率。将P-core和E-core的监控循环合并,提高了效率。

新增了对MSR_MISC_FEATURE_CONTROL寄存器中L1_NPP_Prefetch位的读写支持。为Arrow Lake和Lunar Lake处理器提供了完整的监控功能实现。开放了Meteor Lake、Arrow Lake和Lunar Lake处理器的ODCM(片上调试和监控)及电源管理访问权限。特别针对Core Ultra 7 265K处理器添加了新特性支持。

跨架构支持进展

x86_64通用改进

SMBIOS内存信息显示方面,现在按通道顺序排列DIMM信息,支持显示多达12通道的内存控制器配置,SMBIOS转储区域调整为支持12通道×4DIMM插槽的配置。改进了SMBIOS DIMM部件号的计算方法(第二版)。在虚拟化环境中,新增了对HCF(硬件协调功能)能力的检查,确保MPERF/APERF MSR访问的可靠性。

ARM/RISC-V/PowerPC架构支持

ARMv9架构方面,新增了对CSSELR和CCSIDR寄存器的检查,如果实现了FEAT_CCIDX扩展则从高位寄存器读取NumSets值。改进了PMU(性能监控单元)寄存器的安全访问机制,包括Android AVF虚拟机的检测。

PowerPC架构完成了对ppc64le的初步移植,能够检测IBM POWER10功能模拟器。改进了XER寄存器的读取方式,使用MFXER指令替代原有实现,并正确设置进位标志。

RISC-V架构支持获得显著增强:通过marchid和mvendorid寄存器识别处理器架构;新增Microchip厂商支持;尝试从设备树读取Hart ID;恢复PMU计数器差值计算;规范了SSTATUS和SCOUNTEREN寄存器的使用;针对QEMU模拟器的不精确周期计数进行了标准化处理;实现了rdcycle、rdinstret和rdtime指令的封装,用于获取性能计数器和时间戳。

所有非x86架构都改进了设备树(Device Tree)集成,增强了虚拟机检测能力。设备树获取方式根据内核版本进行了优化调整。

总结

CoreFreq 2.0.3版本是一个重要的跨架构更新,不仅增强了现有x86处理器的监控深度和精度,还显著扩展了对ARM、RISC-V和PowerPC架构的支持。特别是对AMD最新服务器处理器和Intel新一代混合架构处理器的优化,使CoreFreq保持了在硬件监控领域的领先地位。跨架构支持的持续改进也体现了开发团队对异构计算时代的前瞻性布局。

登录后查看全文
热门项目推荐

项目优选

收起
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
118
1.88 K
kernelkernel
deepin linux kernel
C
22
6
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
341
1.24 K
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
192
271
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
912
546
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
377
388
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
143
188
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
68
58
harmony-utilsharmony-utils
harmony-utils 一款功能丰富且极易上手的HarmonyOS工具库,借助众多实用工具类,致力于助力开发者迅速构建鸿蒙应用。其封装的工具涵盖了APP、设备、屏幕、授权、通知、线程间通信、弹框、吐司、生物认证、用户首选项、拍照、相册、扫码、文件、日志,异常捕获、字符、字符串、数字、集合、日期、随机、base64、加密、解密、JSON等一系列的功能和操作,能够满足各种不同的开发需求。
ArkTS
81
2