中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

函数说明

Sparse BLAS Level2/3(CSR格式)函数的命名规则是:

  1. kml_sparse_<character><data><operation>
  2. kml_sparse_<character><data><mtype><operation>,仅支持基1索引的矩阵
  3. kml_csparse_<character><data><mtype><operation>,仅支持基0索引的矩阵

其中,<character>指示数据类型:s(单精度实数浮点型),d(双精度实数浮点型), c(单精度复数), z(双精度复数)

<data>指示存储类型:coo,csr,dia,sky,csc,bsr

<mtype>指示矩阵类型:ge(通用矩阵), sy(对称矩阵),tr(三角矩阵)

<operation>指示矩阵的运算操作

表1 简易接口(仅支持基1索引)

函数族

数据类型

描述

kml_sparse_?csrgemv

s,d,c,z

矩阵与向量乘积,矩阵是CSR格式(三数组)基1索引的稀疏通常矩阵。

kml_sparse_?csrsymv

s,d,c,z

矩阵与向量乘积,矩阵是CSR格式(三数组)基1索引的稀疏对称矩阵。

表2 简易接口(仅支持基0索引)

函数族

数据类型

描述

kml_csparse_?csrgemv

s,d,c,z

矩阵与向量乘积,矩阵是CSR格式(三数组)基0索引的稀疏通常矩阵。

kml_csparse_?csrsymv

s,d,c,z

矩阵与向量乘积,矩阵是CSR格式(三数组)基0索引的稀疏对称矩阵。

表3 通用接口,支持基1索引和基0索引

函数族

数据类型

描述

kml_sparse_?csrmv

s,d,c,z

矩阵与向量乘积,矩阵是CSR格式的稀疏矩阵。

kml_sparse_?csrsv

s,d,c,z

求解稀疏线性方程组,稀疏矩阵存储格式为CSR。

kml_sparse_?csrmm

s,d,c,z

计算CSR格式的稀疏矩阵和稠密矩阵的积。

表4 稀疏矩阵间运算接口

函数族

数据类型

描述

kml_sparse_?csradd

s,d,c,z

矩阵与矩阵相加,矩阵是CSR格式(三数组,矩阵index从1开始)的稀疏矩阵,结构存储在稀疏矩阵。

kml_sparse_?csrmultcsr

s,d,c,z

矩阵与矩阵相乘,矩阵是CSR格式(三数组,矩阵index从1开始)的稀疏矩阵,结果存储在稀疏矩阵。

kml_sparse_?csrmultd

s,d,c,z

矩阵与矩阵相乘,矩阵是CSR格式(三数组,矩阵index从1开始)的稀疏矩阵,结果存储在稠密矩阵。

matdescra参数取值

matdescra是char指针类型的,包含6个元素(仅使用前4个)。

参数

取值

参数1

  • G 一般矩阵
  • S 对称矩阵(A=A')
  • H 埃尔米特矩阵(A=conjg(A'))
  • T 三角矩阵
  • D 对角矩阵

参数2

  • L 下三角
  • U 上三角

参数3

  • N 非单元矩阵
  • U 单元矩阵

参数4

  • F 基1索引(索引值从1计数)
  • C 基0索引(索引值从0计数)

当前支持的matdescra可能取值如表4-8所示。

表5 支持的matdescra可能取值

参数1

参数2

参数3

参数4

G

0(忽略)

0(忽略)

F或C

S 或 H

L

N

F或C

S 或 H

L

U

F或C

S 或 H

U

N

F或C

S 或 H

U

U

F或C

T

L

N

F或C

T

L

U

F或C

T

U

N

F或C

T

U

U

F或C

D

0(忽略)

N

F或C

D

0(忽略)

U

F或C