如何以编程方式获取 C 中的 CPU 缓存页面大小?

新手上路,请多包涵

我希望我的程序读取它在 C++ 中运行的 CPU 的缓存行大小。

我知道这不能移植,所以我需要一个 Linux 解决方案和另一个 Windows 解决方案(其他系统的解决方案可能对其他人有用,所以如果你知道它们,请发布它们)。

对于 Linux,我可以读取 /proc/cpuinfo 的内容并解析以 cache_alignment 开头的行。也许有更好的方法涉及对 API 的调用。

对于 Windows,我根本不知道。

原文由 Mathieu Pagé 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 458
2 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题