当前位置: 首页 > 工具软件 > Intrinsic > 使用案例 >

【汇编优化】之x86架构intrinsic优化

令狐增
2023-12-01

1、SSE Intrisic based on x86

x86架构下的优化有多种手段,常见的有纯汇编优化、inline汇编、Intrinsic优化。前两种对编译器的依赖比较大,跨平台(windows\linux等)编译问题比较多,例如纯汇编:win32、win64、linux64下函数形参入栈规则都不一样,且需要保护的寄存器也有较大区别,此外还有汇编重定位问题等等;而inline汇编在windows下是intel格式,在linux下是AT&T格式。intrinsic入门快,且没有以上诸多问题,比较适合初学者,但是其性能相对纯汇编或Inline汇编,会差一些。本文就intrinsic优化作一些简单的介绍,具体需结合实践理解学习。

1.1 指令集对应的位数

指令集类型 所占位数
– MMX : Multi Media Extensions 8 x 64bit (1997)
– SSE/SSE2/SSE3/SSSE3/SSE4.x : Streaming SIMD Extensions 8 x 128bit (1999)
– AVX/AVX2/FMA : Advanced Vector Extensions 16 x 256 bit (2008)
– AVX-512/KNC : Advanced Vector Extensions 32 x 512 bit (2012)

备注:第二列8*64代表MMX寄存器有8个,每

 类似资料: