基于SIMD的Square Root函数高性能实现与优化*

2021-05-11 01:59:42赵永浩贾海鹏张云泉张思佳
计算机工程与科学 2021年4期
关键词:指令

赵永浩,贾海鹏,张云泉,张思佳

(1.大连海洋大学信息工程学院,辽宁 大连 116023;2.中国科学院计算技术研究所计算机体系结构国家重点实验室,北京100190)

1 引言

平方根函数是基本的数学运算,也是处理器软件生态的重要组成部分。平方根函数的应用极其广泛[1],可应用于图形处理器[2]、神经网络、计算机图形学和积分计算等科学领域。随着处理器架构的不断发展和完善,为了更好地支持和完善计算机的并行性,SIMD(Single Instruction Multiple Data)技术得到了快速的发展,已经被广泛使用到各种处理器上,并成为其中重要的技术,比如ARM架构的NEON指令集[3],MIPS的MSA指令集和Intel x86架构中的MMX/SSE/AVX指令集[4]。NEON技术是对ARM Cortex-A和Cortex-R系列处理器中SIMD的扩展。NEON寄存器存储的是同一数据类型的向量,相比其他指令其优点是NEON指令可以对4个32 bit和2个64 bit的元素同时进行计算,并且还支持int、float、double等多种数据类型。该技术通过同时计算多个元素,加快计算速度,来达到提升整体性能的目的。

研究基于SIMD的平方根函数的高性能实现与优化具有十分重要的研究价值和实际意义。针对ARM架构处理器在市场供不应求的现状,SIMD向量化技术也在不断发展,所以完善ARM SIMD生态是十分重要的工作。目前基于SIMD NEON技术的高性能函数实现与优化的研究比较少,可以查阅到的资料有对处理器的扩展函数库的实现与优化,另一个是针对SIMD功能的函数优化算法,但这2项研究的时间较早,技术还不算完善。所以,利用SIMD NEON技术针对ARM架构进行平方根函数高性能实现具有重大意义。平方根函数高性能实现与优化[5]的基本思想是,在保证精度的条件下,尽可能地提升算法的性能。……

登录APP查看全文

猜你喜欢
指令
听我指令:大催眠术
ARINC661显控指令快速验证方法
测控技术(2018年5期)2018-12-09 09:04:26
LED照明产品欧盟ErP指令要求解读
电子测试(2018年18期)2018-11-14 02:30:34
杀毒软件中指令虚拟机的脆弱性分析
电信科学(2016年10期)2016-11-23 05:11:56
巧用G10指令实现椭圆轮廓零件倒圆角
时代农机(2015年3期)2015-11-14 01:14:29
中断与跳转操作对指令串的影响
科技传播(2015年20期)2015-03-25 08:20:30
基于汇编指令分布的恶意代码检测算法研究
一种基于滑窗的余度指令判别算法
欧盟修订电气及电子设备等产品安全规定
家电科技(2014年5期)2014-04-16 03:11:28
MAC指令推动制冷剂行业发展
汽车零部件(2014年2期)2014-03-11 17:46:27