-1
在C中,是否有任何方法可以复制高于一个高速缓存行大小的数据单个存储器读取128或256个字节?复制高速缓存中的数据大于一个高速缓存行
在C中,是否有任何方法可以复制高于一个高速缓存行大小的数据单个存储器读取128或256个字节?复制高速缓存中的数据大于一个高速缓存行
答案是这取决于你的意思是“单个内存读取”。在CPU层面,我们正在使用缓存和数据线。在内核级别,我们正在处理内存页面。在应用程序级别,我们正在处理流和语言特定的数据类型。
使用C,您可以访问后者,甚至以特定于操作系统的方式访问内核级内存,但通常无法访问CPU级别。 (除非你正在编写内核/微内核或进行嵌入式控制器编程)实际上,它比缓存复杂得多,现代CPU中有各种存储器接口和总线,所以它取决于/什么/和/哪里/等...
用于Linux的内核级内存接口在C中非常易于使用,并且有详细的文档说明,从mmap()手册页开始。
我将解释我的意思是“单个内存读取”。 RAM中有一些数据不在缓存中,当我访问这些数据时 –