首页 / 知识
关于sse:x86中“非临时”内存访问的含义是什么
2023-04-13 18:45:00

What is the meaning of “non temporal” memory accesses in x86这是一个有点底层的问题。 在x86汇编中,有两个SSE指令:
和
IA-32软件开发人员手册指出,MOVNTDQA中的NT代表非临时性,否则与MOVDQA相同。 我的问题是,非临时性是什么意思? 非临时性SSE指令(MOVNTI,MOVNTQ等)不遵循常规的缓存一致性规则。因此,非临时存储区后面必须带有SFENCE指令,以便其他处理器及时查看其结果。 当产生数据并且不再(立即)再次使用数据时,内存存储操作会先读取一条完整的缓存行,然后再修改缓存的数据,这一事实不利于性能。此操作将数据从高速缓存中推出,这可能需要再次使用,以支持即将不再使用的数据。这对于大型数据结构(例如矩阵)尤其如此,这些数据结构先被填充然后在以后使用。在填充矩阵的最后一个元素之前,绝对大小会逐出第一个元素,从而使写入的缓存无效。 对于这种情况和类似情况,处理器为非临时写操作提供支持。在这种情况下,非时间意味着数据将不会很快被重用,因此没有理由对其进行缓存。这些非临时写操作不会先读取高速缓存行,然后再对其进行修改。而是将新内容直接写入内存。 资料来源:http://lwn.net/Articles/255364/ 埃斯波几乎可以达到目标。只是想加我的两分钱: "非时间"短语意味着缺少时间局部性。缓存利用两种局部性-空间和时间性,通过使用非时间性指令,您正在向处理器发送信号,告知您您不希望在不久的将来使用该数据项。 我对使用缓存控制指令的手工编码程序集表示怀疑。以我的经验,这些错误导致的臭虫多于任何有效的性能提高。
根据英特尔? 64和IA-32体系结构软件开发人员手册,第1卷:基本体系结构, 缓存时态与非时态数据
非临时加载和存储指令的描述。 加载(MOVNTDQA-加载双四字非时间对齐提示)
请注意,正如彼得·科德斯(Peter Cordes)所言,它在当前处理器上的普通WB(回写)内存上没有用,因为NT提示被忽略(可能是因为没有NT感知的硬件预取器),并且采用了完全强序加载语义。 存储(MOVNTDQ-使用非时间提示存储打包的整数)
使用在"高速缓存写策略和性能"中定义的术语,可以将它们视为"可写"(无写分配,无写丢失获取)。 最后,回顾一下John McAlpin关于非临时性商店的注释可能会很有趣。 |
最新内容
相关内容
linux指令中的命令?
linux指令中的命令?,系统,基础,工作,地址,命令,工具,管理,信息,网络,控制台,Linux系统基础操作指令linux常用命令有pwd命令、cd命令、ls命令、linux命令行指令大全?
linux命令行指令大全?,工作,地址,系统,信息,命令,目录,工具,管理,基础,控制台,linux系统常用操作命令1、linux常用命令有pwd命令、cd命令、lslinux的查看内存命令?
linux的查看内存命令?,情况,系统,信息,电脑,状态,工具,内存,命令,数据,总量,Linux下怎么查看内存使用情况和CPU利用率?在电脑中进入Linux操作linux下内存调整命令?
linux下内存调整命令?,系统,情况,地址,工具,总量,总额,管理,内存,机制,内核,正确理解linux运行内存过高的问题以及free命令使用命令free -m来linux内存大小命令?
linux内存大小命令?,系统,情况,电脑,信息,工具,状态,命令,内存,环境,分析,Linux命令行查看内存1、cat /proc/meminfo查看linux系统内存大小的linux命令颜色含义?
linux命令颜色含义?,系统,设备,文件,代码,名字,地址,电脑,表示,颜色,代表,在linux下为什么有的文件名字有颜色在Linux中,文件的颜色都是有含义linux内存命令大全?
linux内存命令大全?,地址,系统,信息,工作,命令,情况,代码,分析,数据,工具,[Linux]gdb查看内存区命令1、命令缩写是q,退出gdb。gdb调试运行程序linux命令监控内存?
linux命令监控内存?,情况,系统,工具,信息,环境,分析,命令,工作,实时,电脑,linux查看CPU核数和内存大小命令?1、要查看CPU使用情况,可以使用toplinux内存监控命令?
linux内存监控命令?,情况,系统,信息,电脑,总量,内存,命令,单位,环境,第一,linux查看CPU核数和内存大小命令?要查看CPU使用情况,可以使用top命令linux命令查找内存?
linux命令查找内存?,情况,系统,信息,工具,状态,分析,数字,内存,命令,适当,怎样知道linux系统内存的使用情况1、linux查看内存使用情况的方法是linux退出指令命令?
linux退出指令命令?,档案,状态,时间,命令,系统,编辑,文件,模式,指令,内容,linux保存退出命令1、linux保存退出命令的方法如下:wq命令。不管内容linux常用命令查内存?
linux常用命令查内存?,系统,情况,实时,分析,工具,信息,内存,总量,状态,命令,查看Linux系统进程内存占用情况1、linux查看内存使用情况的方法是