欢迎光临散文网 会员登陆 & 注册

猿代码SIMD并行计算实战

2023-08-02 19:38 作者:bili_34604920956  | 我要投稿

SIMD这个东西我到现在也不是很会用,包括测试一些例子可能用了SIMD更慢了,而且我的CPU比较老了,只支持AVX2.0(AVX-512好像现在的i9和i7 9800x都已经支持了,不过我这个还在用四代i7的也买不起这玩意)。因此对于双精度浮点型运算,只能一次打包256bit的数据,即四个双精度浮点数。对了这里需要注意的一点是,在使用gcc编译带有immintrin.h头文件函数的代码时,根据你使用的函数类别,需要添加相应的编译选项(老的SSE是默认支持的通常不需要额外添加选项),如AVX2.0就需要使用-mavx2、FMA需要使用-mfma等等,否则编译会报错。如果你不知道用了什么指令集,但是你确定你的电脑支持这个操作,那么直接-march=native就可以了。其实如果你使用了AVX-512F指令集,那么-mavx512f也可以成功编译,不过如果你的CPU不支持AVX-512F那么你运行编译出来的文件的时候就会提示非法指令 

 

猿代码SIMD并行计算实战的评论 (共 条)

分享到微博请遵守国家法律