ZT - 怎样提高调用数学函数的程序的性能(1)

Robert F. Enenkel, 软件开发人员, IBM
Robert Enenkel 照片
Robert Enenkel 工作于 IBM 多伦多实验室的 Optimizing Compiler Group,他之前是 IBM Centre for Advanced Studies (CAS) 的一名研究会员。Enenkel 拥有多伦多大学的学士、硕士和博士学位,其论文题目是不同等式的并行数字方法领域。他目前主要研究和开发与编译器和操作系统相关的数字计算,包括浮点算法,数学函数库,算法性能调优。Enenkel 博士得到了多个 IBM 发明成就奖和创造认可奖。更多的信息可以在他的 Web 主页 https://www-927.ibm.com/ibm/cas/toronto/people/members/renekel.shtml 上找到。
Daniel M. Zabawa, 软件开发人员, IBM
Daniel Zabawa 照片
Daniel Zabawa 在 IBM 多伦多研究室的 Optimizing Compiler Group 工作。他拥有多伦多大学的计算机科学学士和硕士学位。Zabawa 目前研究和开发的主要方面在超标量体系架构的循环优化和调度、浮点算法库,以及浮点算数函数的性能调优。

简介: 本文向您介绍了 IBM MASS 高性能数学库的内容,并展示了怎样通过 IBM® XL C/C++ 与 XL Fortran 汇编器的自动向量化功能去使用它们,而不用需要源程序方面的更改。在介绍自动向量化的概念以及相应的汇编器选项以后,本文会提供一个离散 Fourier 转变程序作为自动向量化的真实范例。计时的结果演示了通过 MASS 自动向量化的自动激活功能,从而对范例程序运行汇编器使得速度增加了 8.94 倍。

[@more@]

MASS 高性能库

MASS 指的是数学加速子系统(Mathematical Acceleration Subsystem)。它由数学函数组成,这些数学函数是为在各种 IBM 计算平台上优化性能所设定的。MASS 最初是由 IBM 公司在 1995 年启动的,并在随后的发展中继续得到改善,一直到现如今仍然在改进。

现在所有的 IBM® POWER™ 处理器都有相应的各种版本的 MASS,运行 AIX® 或者 Linux® 操作系统。还有其他版本的 IBM System BlueGene®/L 和 IBM System BlueGene®/P 超级电脑,以及 IBM Cell Broadband Engine™ (Cell/B.E.™)方案。库包含有元素函数的加速实施方案,例如 三角函数以及双曲线函数以及它们的倒数、乘方、对数、指数、错误函数以及其他函数。包含函数的完整列表可以在 IBM Mathematical Acceleration Subsystem 页面中找到。

有标量的库也有向量的库,而对于 Cell/B.E. 和 POWER7 来说,还有单个指示的多个数据(SIMD)库。注意精确性与例外情况的处理在 MASS 函数与系统库函数中可能是不一样的。对于目标硬件的其他汇编器(例如 gcc)的用户来说,MASS 库与 IBM XL C/C++ 还有 XL Fortran 汇编器封装到一起,并且可以通过 MASS Web 网站来获得。

可以通过 C、 C++ 或者 Fortran 源程序来访问库。IBM XL C/C++ 与 IBM XL Fortran 汇编器可以识别机会以使用 MASS 来加速源程序,并自动激活它而不用更改源程序。本文向您介绍了怎样实施一项技术帮助您的公司更好地使用这些强大的技术。

什么程序可以获益?

任何包含有对数学库函数(例如 exp、 log、sin、cos 等等)调用的 C、C++ 或者 Fortran 程序,潜在意义上都会从本文中所描述的技术中受益。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16896827/viewspace-1036474/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16896827/viewspace-1036474/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值