小编WDS*_*WDS的帖子

MMX寄存器速度与堆栈的无符号整数存储

我正在考虑在纯装配中实现SHA3.SHA3​​的内部状态为17个64位无符号整数,但由于它使用了转换,如果寄存器中有44个这样的整数,则可以实现最佳情况.另外还有一个临时寄存器.在这种情况下,我将能够在寄存器中进行整个转换.

但这是不现实的,优化可能一直到甚至只有几个寄存器.不过,根据这个问题的答案,更多可能更好.

我想至少使用MMX寄存器进行快速存储,即使我需要交换到其他寄存器进行计算.但我担心这是古建筑.

在MMX寄存器和RAX之间的数据传输是否比在堆栈上索引u64并从可能是L1缓存中访问它们更快?或者即便如此,除了我应该注意的速度考虑之外,还有隐藏的陷阱吗?我对一般情况感兴趣,所以即使我的计算机上的一个比另一个更快,它仍然可能是不确定的.

x86 assembly cpu-registers micro-optimization mmx

1
推荐指数
1
解决办法
118
查看次数

标签 统计

assembly ×1

cpu-registers ×1

micro-optimization ×1

mmx ×1

x86 ×1