[英]Finding the cache block size
如何以编程方式(使用C ++)或其他方式在Ubuntu中找到缓存块大小?
你可以在/proc/cpuinfo
找到它; 总大小的cache size
,以及块大小的cache_alignment
。
一种方法是使用随机值填充std::vector
或只是一个普通数组,并做一些简单的事情,例如在循环中对每个元素进行平方。 然后测量执行时间作为矢量长度的函数。 一旦你的矢量不适合缓存,你会非常清楚地看到exec时间的跳跃。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.