我想知道是否有一种方法可以将数据直接存储在处理器的数据缓存中,而不是存储在主内存中。我知道缓存的工作方式是存储最常用的数据,但是,有一个汇编指令告诉处理器这将是最常用的数据是有意义的。 我正在使用 IA-32 汇编语言。
谢谢!
最佳答案
根据架构的不同,有预取提示可将数据直接移至缓存中。对于ia32,这是预取
指令,它可以将数据移动到L1、L2。
另一方面,有些指令告诉处理器避免使用缓存,例如 movetdq
,它直接将数据从内存移入/移入内存。
编辑:此外,还有为特定类型的缓存算法设置内存范围的说明,例如回写、直写、写入组合或不可缓存。请参阅http://en.wikipedia.org/wiki/Memory_type_range_register .
关于caching - 我可以直接将数据存储在处理器缓存中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8493451/