---
title: 可替换性
description: "KML_BLAS对外提供的接口，与MKL-BLAS的接口参数和函数名完全一致，可以直接替换库使用。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/accel/kunpengaccel_12_0009.html
sourcePath: /source/zh/kunpengboostkithistory/2200/accel/kunpengaccel_12_0009.html
indexId: f0788152d39461fb89cf593ba4e1e76f5628e51276fb0bbbfc6555d3eea1ff4e70
---
# 可替换性

KML_BLAS对外提供的接口，与MKL-BLAS的接口参数和函数名完全一致，可以直接替换库使用。

表1、表2、表3、表4为可替换的接口与MKL接口的映射关系。


**表1 Level1接口的替换映射关系**

| MKL接口 | KML对应接口 | 描述 |
| --- | --- | --- |
| cblas\_?asum | cblas\_?asum | 向量元素绝对值求和。 |
| cblas\_?axpy | cblas\_?axpy | 向量缩放与加和。 |
| cblas\_?copy | cblas\_?copy | 向量拷贝。 |
| cblas\_?dot | cblas\_?dot | 向量点积。 |
| cblas\_?sdot | cblas\_?sdot | 扩展精度点积。 |
| cblas\_?dotc | cblas\_?dotc\_sub | 共轭向量与另一向量的点积。 |
| cblas\_?dotu | cblas\_?dotu\_sub | 复数向量点积。 |
| cblas\_?nrm2 | cblas\_?nrm2 | 计算欧几里得范数。 |
| cblas\_?rot | cblas\_?rot | 基于平面上点旋转。 |
| cblas\_?rotg | cblas\_?rotg | 构造旋转平面。 |
| cblas\_?rotm | cblas\_?rotm | 修改旋转平面。 |
| cblas\_?rotmg | cblas\_?rotmg | 构造修改的转换平面。 |
| cblas\_?scal | cblas\_?scal | 向量缩放。 |
| cblas\_?swap | cblas\_?swap | 两个向量元素交换。 |
| cblas\_i?amin | cblas\_i?amin | 向量中最小绝对值的索引。 |
| cblas\_i?amax | cblas\_i?amax | 向量中最大绝对值的索引。 |


**表2 Level2接口的替换映射关系**

| MKL接口 | KML对应接口 | 描述 |
| --- | --- | --- |
| cblas\_?gbmv | cblas\_?gbmv | 向量与带状矩阵乘积。 |
| cblas?\_gemv | cblas?\_gemv | 向量与矩阵乘积。 |
| cblas\_?ger | cblas\_?ger | 一般矩阵秩1更新。 |
| cblas\_?gerc | cblas\_?gerc | 一般复数矩阵秩1更新。 |
| cblas\_?geru | cblas\_?geru | 一般共轭矩阵秩1更新。 |
| cblas\_?hbmv | cblas\_?hbmv | 向量与埃尔米特带状矩阵乘积。 |
| cblas\_?hemv | cblas\_?hemv | 向量与埃尔米特矩阵乘积。 |
| cblas\_?her | cblas\_?her | 复数埃尔米特矩阵秩1更新。 |
| cblas\_?her2 | cblas\_?her2 | 复数埃尔米特矩阵秩2更新。 |
| cblas\_?hpmv | cblas\_?hpmv | 向量与压缩的埃尔米特矩阵乘积。 |
| cblas\_?hpr | cblas\_?hpr | 三角展开的埃尔米特矩阵秩1更新。 |
| cblas\_?hpr2 | cblas\_?hpr2 | 三角展开的埃尔米特矩阵秩2更新。 |
| cblas\_?sbmv | cblas\_?sbmv | 向量与对称带状矩阵乘积。 |
| cblas\_?spmv | cblas\_?spmv | 向量与压缩的对称矩阵乘积。 |
| cblas\_?spr | cblas\_?spr | 对称展开矩阵秩1更新。 |
| cblas\_?spr2 | cblas\_?spr2 | 实数对称展开矩阵秩2更新。 |
| cblas\_?symv | cblas\_?symv | 向量与对称矩阵乘积。 |
| cblas\_?syr | cblas\_?syr | 对称矩阵秩1更新。 |
| cblas\_?syr2 | cblas\_?syr2 | 对称矩阵秩2更新。 |
| cblas\_?tbmv | cblas\_?tbmv | 向量与三角带状矩阵乘积。 |
| cblas\_?tbsv | cblas\_?tbsv | 线性方程组求解，稀疏矩阵为三角带状矩阵。 |
| cblas\_?tpmv | cblas\_?tpmv | 向量与压缩的三角矩阵乘积。 |
| cblas\_?tpsv | cblas\_?tpsv | 线性方程组求解，稀疏矩阵是压缩的三角矩阵。 |
| cblas\_?trmv | cblas\_?trmv | 向量与三角矩阵乘积。 |
| cblas\_?trsv | cblas\_?trsv | 线性方程组求解，稀疏矩阵是三角矩阵。 |


**表3 Level3接口的替换映射关系**

| MKL接口 | KML对应接口 | 描述 |
| --- | --- | --- |
| cblas\_?gemm | cblas\_?gemm | 一般矩阵乘矩阵。 |
| cblas\_?hemm | cblas\_?hemm | 复数埃尔米特矩乘矩阵。 |
| cblas\_?her2k | cblas\_?her2k | 复数矩阵乘矩阵秩2更新，矩阵C为复数埃尔米特矩阵。 |
| cblas\_?herk | cblas\_?herk | 复数矩阵乘矩阵秩k更新，矩阵C为复数埃尔米特矩阵。 |
| cblas\_?symm | cblas\_?symm | 实数对称矩阵乘矩阵。 |
| cblas\_?syrk | cblas\_?syrk | 矩阵乘矩阵秩k更新，矩阵C为对称矩阵。 |
| cblas\_?syr2k | cblas\_?syr2k | 矩阵乘矩阵秩2更新，矩阵C为对称矩阵。 |
| cblas\_?trmm | cblas\_?trmm | 矩阵乘矩阵，其中一个矩阵为三角矩阵。 |
| cblas\_?trsm | cblas\_?trsm | 三角矩阵方程求解。 |


**表4 Extension接口的替换映射关系**

| MKL接口 | KML对应接口 | 描述 |
| --- | --- | --- |
| cblas\_?axpby | cblas\_?axpby | 向量分别缩放与加和。 |
| cblas\_?gemm3m | cblas\_?gemm3m | 一般复数矩阵乘矩阵。 |
