繁体   English   中英

如何找出 CPU 中禁用的内核?

[英]How to figure out disabled cores in a CPU?

我需要找出 CPU 上禁用了哪些内核。 如何以 C/C++ 方式执行此操作? 我知道读取 CAPID6 寄存器是其中一种方法,但我不确定如何完成它。 我需要注意任何系统调用或技巧吗?

我的操作系统是 Ubuntu。 我有 Xeon Skylake CPU。 我可以通过检查 /sys/devices/system/cpu/cpu*/online 来查看特定内核是脱机还是联机,以查看文件是否包含 0 或 1,分别表示脱机或联机。

我还检查了下面的链接:

https://community.intel.com/t5/Software-Tuning-Performance/Understanding-PCICFG-space-information/td-p/1138820

我理解 John McCalpin 的回答,但我再次在寻找一种 C/C++ 方式来做到这一点。

在 Linux 上支持的方法是读取相同的文件。 您可以使用fopen打开它们,使用fscanf阅读等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM