高效内存拷贝?
本来是想查Intel的“sfence”指令,却找到了这篇文章:http://www.cnblogs.com/flier/archive/2004
/07/08/22352.html
乍一看吓一跳,内存拷贝可以提高50%的性能!,那我们以前用的的memcpy岂不是很菜?!于是按照文章的代码试着在linux上写了个
fast_memcpy函数,测试了一下。好久没写gcc里的嵌入汇编,折腾了半天。
结果发现不如memcpy快。如果我把mm0换成别的寄存器,比如rax、r8等,则movntq根本不可用,zhe这下明白了,movntq加sfence是针对MMX寄存器用的,对普通的内存拷贝没有帮助。
结果发现不如memcpy快。如果我把mm0换成别的寄存器,比如rax、r8等,则movntq根本不可用,zhe这下明白了,movntq加sfence是针对MMX寄存器用的,对普通的内存拷贝没有帮助。
相关文章
- Intel软件大会(2011)归来 - 03 28, 2011
- Intel软件技术大会(2010)归来 - 04 02, 2010
- intel免费书 - 05 31, 2009
留言: