是否可以像使用主内存一样使用CPU的缓存?例如在那里保存变量?
我实验室中的CPU有很多L3缓存(Xeon E5),nvidia的GPU具有可管理的共享内存/缓存,并且有一些技巧可以通过这种可编程缓存实现性能提升,有没有办法做到这一点与CPU的大量缓存相同?
答案 0 :(得分:2)
我认为你正在寻找一款带有“暂存存储器”的处理器,这种处理器通常被GPU /矢量处理器用来代替更复杂的缓存协议。这是你在Nvidia GPU上提到的“可编程缓存”。
据我所知,没有x86 CPU有这个,但是看到ARM处理器的“核心耦合”低延迟SRAM块可以用作暂存器RAM是很常见的。
答案 1 :(得分:2)
在某些体系结构(如MIPS)中,可以使用特权指令来“锁定”缓存行。这样缓存可以读/写,并且在LRU期间不会被刷新。它类似于处理器中的scratchpad ram。
答案 2 :(得分:1)
我怀疑一个不错的编译器能够更有效地使用缓存,而不需要花费很多精力就可以自己做。