神威
“神威•太湖之光”计算机系统
高性能扩展数学库xMath 1.0
用户手册
杨超、刘芳芳、孙乔、敖玉龙、赵玉文、张佳佳
中国科学院软件研究所
并行软件与计算科学实验室
2016 年 6 月 15 日
“神威•太湖之光”计算机系统高性能扩展数学库xMath 用户手册
目 录
1 系统概述 2
2 使用方法 2
2.1 链接方法 2
2.2 运行设置 2
2.3 出错信息排查方法 3
3 BLAS 模块 3
3.1 BLAS LEVEL 1 函数说明 4
3.2 BLAS LEVEL 2 函数说明 17
3.3 BLAS LEVEL 3 函数说明 45
3.4 BLAS 错误信息示 58
4 LAPACK 模块 59
4.1 基本概况 59
4.2 辅助子程序索引 109
5 FFT 模块 120
5.1 傅立叶变换 120
5.2 功能声明 122
5.3 DESCRIPTOR(述符)配置总结 127
6 迭代解法器模块 133
6.1 X MATH (众核版)迭代解法器特点 133
6.2 迭代解法器函数列表 134
6.3 迭代解法器调用伪代码 135
6.4 迭代解法器参数介绍 137
6.5 迭代解法器函数接口介绍 140
7 性能调优指导 147
7.1 BLAS 模块 147
7.2 LAPACK 模块 148
7.3 FFT 模块 148
7.4 迭代解法器模块 149
8 参考文献 149
i
“神威•太湖之光”计算机系统高性能扩展数学库xMath 用户手册
1 系统概述
“神威•太湖之光”计算机系统高性能扩展数学库 xMath (众核版和片上多核版)
是一套在国产申威 CPU 上运行,支持申威众核新处理器特点,具有单核组众核并行化
和片上多核并行化特征且掌握源代码的扩展数学库。在该库的研制过程中,针对国产
CPU 研究一系列数学库性能优化关键技术和框架,并利用这些关键技术进行性能优化,
以升数学库整体的性能。
本软件,包括以下5 个子模块:
BLAS ;
LAPACK 3.5.0;
FFT 信号处理子程序;
稀疏线性系统求解子程序包;
ScaLAPACK 2.0.2。
其中ScaLAPACK 模块本软件未做改动,请参考其用户手册。本用户手册,将分别对其
余4 个模块,进行介绍和函数说明等。
2 使用方法
2.1链接方法
本库需要使用sw5f90 进行链接,由于内部使用了从核函数,所以需要加上-hybrid 参数。
示例如下:
1)编译用户程序主核程序
sw5cc -host -o test.o test.c
2 )链接
sw5f90 -hybrid -o test test.o -L/path/to/xMath -lxMath
2