鲲鹏社区首页
中文
注册
开发者
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

线性代数运算库(SCALAPACK)迁移

可替换性

表SCALAPACK的替换映射关系所示为可替换的接口与MKL中SCALAPACK的Fortran接口的映射关系(仅给出已优化的接口)。

表1 SCALAPACK的替换映射关系

MKL接口

KML接口

数据类型

描述

p?getrf

p?getrf

s、d、c、z

计算矩阵A的LU分解,允许行交换(partial pivoting)。

p?potrf

p?potrf

s、d、c、z

计算对称正定矩阵或者Hermite正定矩阵的Cholesky分解。

p?geqrf

p?geqrf

s、d、c、z

计算矩阵的QR分解,即

p?gels

p?gels

s、d、c、z

使用A的QR或LQ分解求解满秩矩阵A或其转置的超定或欠定实线性系统。

C语言迁移步骤

  1. MKL SCALAPACK提供Fortran和SCALAPACK(C语言封装)两种接口,KML SCALAPACK提供的Fortran接口与MKL完全一致,C语言调用时将头文件#include "mkl.h"替换为#include "kscalapack.h" 。

Fortran接口迁移步骤

Fortran接口与MKL一致,代码无需修改。