Aarch64什么是延迟转发?

《Arm Neoverse E1 核心软件优化指南》(以及他们针对其他一些 CPU 型号的优化指南)中提到了“延迟转发” :

教学组 指示 执行延迟 执行吞吐量 笔记
乘法累加(32 位) MADD, MSUB 3 (2) 1 2
乘法累加(64 位) MADD, MSUB 5 (4) 1/3 2

回答

乘加运算的延迟转发意味着加数可以在乘法完成后可用,而不必在乘加运算开始执行时可用。由于乘法本身不是依赖于加数的数据,因此它可以继续进行。由于加法的一些工作可以与乘法并行完成(乘积的指数将提前可用,并且可以与加数的指数一起使用以确定加法之前所需的移位量),人们可能希望加数为在整个产品可用之前可用,但即使在这种情况下,也不需要加数,直到比被乘数晚得多。

通过延迟加数的转发(可用性),减少了相关累积的有效延迟。这减少了覆盖延迟所需的累积寄存器(和并行性)的数量。


以上是Aarch64什么是延迟转发?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>