【发布时间】:2013-08-08 05:04:39
【问题描述】:
我阅读了 C++ 中的缓存优化以及现代 CPU 用于预测接下来需要什么数据并将其复制到缓存中的机制。但是 C++ 中有没有直接的方法让知道接下来实际需要什么的程序员来确定将哪些数据复制到 CPU 缓存中?
【问题讨论】:
-
您访问的内容将被复制到缓存中。现在,alignment 会做一点,valgrind cachegrind 做剩下的。 (不,没有直接控制。即使有,也没有理智的操作系统会暴露它:))
-
@sehe 有显式控制的处理器;想到 AltiVec。您定义一个输入流,它充当对预取器的强、粘性提示。但是,如果 OP 没有心情提及他正在编程的什么,那么最好不要进入这个话题。
标签: c++ memory-management cpu-cache