当前位置: 首页 > 面试题库 >

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

李光华
2023-03-14
问题内容

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

我知道这是无法移植的,所以我将需要一个针对Linux的解决方案和一个针对Windows的解决方案(其他系统的解决方案可能对其他人有用,因此请在知道的情况下发布它们)。

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

对于Windows,我根本不知道。


问题答案:

在Win32上,GetLogicalProcessorInformation将给您还SYSTEM_LOGICAL_PROCESSOR_INFORMATION包含的CACHE_DESCRIPTOR,其中包含您需要的信息。



 类似资料:
  • 问题内容: 我想从受监视的应用程序内部以编程方式获得等效的输出。我看到可以通过HotSpot诊断Bean触发二进制堆转储,但是我看不到如何获取直方图数据。可能吗 ? 问题答案: 这可能是不是最好的例子/代码,但看看这个 (我认为这仅适用于Hotspot JVM)

  • 问题内容: 我正在寻找一种以编程方式清空浏览器缓存的方法。我这样做是因为应用程序缓存了机密数据,当您按“注销”时,我想删除这些数据。这将通过服务器或JavaScript发生。当然,仍然不鼓励在外国/公共计算机上使用该软件,因为还有诸如键盘记录器之类的更多危险,您无法在软件级别上克服这些危险。 问题答案: 有可能,您可以简单地使用jQuery用事件处理程序/按钮替换引用缓存状态的“元标记”,然后进行

  • 问题内容: 基本上,我想获取python解释器的句柄,以便可以传递脚本文件来执行(从外部应用程序执行)。 问题答案: 这适用于Linux和Windows: Python 3.x Python 2.x

  • Android将屏幕尺寸定义为普通的大屏幕等。 它会自动选择适当文件夹中的静态资源。我需要这个数据关于当前设备在我的java代码。DisplayMetrics仅提供有关当前设备密度的信息。没有关于屏幕大小可用。 我确实在grep代码中找到了屏幕大小枚举,但是这对我来说似乎不适用于4.0 SDK。有办法得到这些信息吗?

  • 问题内容: 我正在用C ++写一个基准测试工具,我想在两次实验之间清除文件系统内存缓存。我知道以下控制台命令: 我的问题是如何直接在C ++中以编程方式执行此操作? 任何帮助表示赞赏! 问题答案: 只需写:

  • 问题内容: 有一个网页,我想从中检索某个字符串。为此,我需要登录,单击一些按钮,填充文本框,单击另一个按钮-然后出现字符串。 如何编写Java程序以自动执行此操作?是否有用于此目的的有用库? 谢谢 问题答案: 试试HtmlUnit HtmlUnit是“用于Java程序的GUI更少的浏览器”。它为HTML文档建模,并提供一个API,使您可以调用页面,填写表单,单击链接等,就像在“常规”浏览器中一样。