3

如何以编程方式(使用 C++)或其他方式在 Ubuntu 中找到缓存块大小?

4

2 回答 2

11

你可以在/proc/cpuinfo; cache size对于总大小和cache_alignment块大小。

于 2011-03-23T14:13:01.690 回答
0

一种方法是std::vector用随机值填充一个或只是一个普通数组,然后做一些简单的事情,例如对循环中的每个元素进行平方。然后测量执行时间作为向量长度的函数。一旦您的向量不适合缓存,您将非常清楚地看到执行时间的跳跃。

于 2011-03-23T11:21:26.393 回答