MKL学习——功能简介
基本術語
BLAS : Basic Linear Algebra Subprograms 基本線性代數子程序
BLACS : Basic Linear Algebra Communication Subprograms 基本線性代數通信子程序
LAPACK : Linear Algebra PACKage 線性代數包
ScaLAPACK : Scalable LAPACK
PBLAS : Parallel Basic Linear Algebra Subprograms 可并行基本代數子程序
FFT : Fast Fourier Transform 快速傅里葉變換
VM : Vector Mathematics 矢量數學
VS : Vector Statistics 矢量統計學
BRNGs : Basic Random Number Generators 基本隨機數生成器
PDE : Partial Differential Equations 偏微分方程
主要功能
解決大型計算問題,提供BLAS、LAPACK線性代數程序、快速傅里葉變換、矢量數學函數、隨機數生成函數以及其它一些函數。
功能域
BLAS程序
- BLAS Level 1 Routines:提供向量數據的加、減、縮放、點乘
- BLAS Level 2 Routines:提供向量-矩陣的運算,比如乘法運算、一階矩陣和二階矩陣的更新、三角形系統的解法
- BLAS Level 3 Routines:提供矩陣-矩陣的運算,比如矩陣相乘、k階更新、三角形系統的解法
稀疏BLAS程序
也分為Level 1 2 3程序,與BLAS程序類似,只不過利用了稀疏向量、稀疏矩陣的有點: 僅存儲向量或者矩陣的非零元素。
LAPACK程序
根據操作分為兩種功能:
- 解線性方程組,矩陣分解,矩陣求逆,estimate condition numbers
- 解決最小二乘問題,特征值、奇異值問題,Sylvester 方程
稀疏求解程序
針對具有實系數和復數系數的對稱系數矩陣,可以直接進行系數求解。對于對稱矩陣,子程序能夠解決正定和非正定系統。
擴展Eigensolver程序
Extended Eigensolver RCI Routines是解決標準的(Ax=λx)以及泛化的(Ax=λBx)特征值問題的高性能計算程序,其中A和B是對稱或者Hermitian形式。針對給定的搜索區間,能夠生成所有的特征值和特征向量。
矢量數學函數
包含高度優化實現的核心數學函數(power, trigonometric, exponential, hyperbolic )等,可在實數域或者復數域上操作。
統計學函數
矢量統計包含(比較專業的詞匯,直接英文表示):
- Pseudorandom, quasi-random 和non-deterministic random number generator去實現連續和離散分布。包含一系列的高度優化的隨機數生成器和矢量數學函數
- 各種各樣的卷積和相關操作
- 單精度和雙精度的多維數據的初等統計分析
傅里葉變換函數
具有混合基(mixed raidx)支持的多維快速傅里葉變換函數,支持離散傅里葉變換的一致性。
偏微分方程
提供了解偏微分方程的工具,工具是三角變換接口程序(Trigonometric Transform interface routines)以及泊松解法(Poisson Solver).
三角變換程序對于用戶實現自己的解法有幫助。用戶可以通過快速的sine, cosine以及交錯余弦變換(staggered cosine transforms)實現三角變換接口
泊松解法是用于快速解決簡單的Helmholtz 、泊松、拉普拉斯問題。解法的基礎,也就是三角變換接口,是基于快速傅里葉變換的接口。
其它支持的函數
提供了對于MKL的相關操作,以及庫和庫操作的基本信息,比如當前庫版本,CPU頻率的定時、設置、衡量,錯誤處理,內存分配
深度神經網絡(DNN)的數學核心庫
對于卷積、池化、normalization、激活、多維變換操作(multi-dimensional transposition operations)的最基本的前向和后向計算。
MKL中C語言數據類型的指定方法
如果你的數據類型與MKL數據類型二進制兼容其具有相同的表示與存儲設置的話,可以重定義特定的MKL數據類型。
重定義方法是在包含mkl.h之前用#define聲明一下
#define MKL_INT size_t #include "mkl.h"也可以用-D操作重定義數據類型,比如
...-DMKL_INT=size_t...后續
看完功能簡介,下一篇就開始從最簡單的向量-向量,矩陣-向量,矩陣-矩陣的操作開始學習
總結
以上是生活随笔為你收集整理的MKL学习——功能简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MKL学习——数学运算库安装调试
- 下一篇: k8s服务网关ambassador部署