如何解决movq是否比x64-64架构上的mov更快?
Agner Fog的Skylake指令表显示了以下两条指令:
MOV r32 / 64,m 1 1 p23 2 0.5
MOVQ r64,mm / x 1 1 p0 2 1
其中,每条指令在融合域中具有1个微操作,在非融合域中具有1个微操作,MOVQ每个端口23个微操作,MOVQ每个端口0个微操作,每个延迟2个,相对吞吐量列中,0.5比1。
我的问题是,阅读这些统计信息,这两条说明中哪一条更快?直观上来说,MOV每个端口23个微操作所产生的端口压力比每个端口0个微操作所产生的端口压力要大得多。 Fog在他的定义部分中说:“当流水线中的某些瓶颈限制了每个时钟周期的μop数量时,指令生成的μop数量很重要。”
我的解释正确吗-MOVQ比MOV快吗?从堆栈到寄存器的MOV会有所不同吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。