MKL学习——功能简介

来源:互联网 发布:修改来电显示号码软件 编辑:程序博客网 时间:2024/06/09 20:18

基本术语

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)特征值问题的高性能计算程序,其中AB是对称或者Hermitian形式。针对给定的搜索区间,能够生成所有的特征值和特征向量。

矢量数学函数

包含高度优化实现的核心数学函数(power, trigonometric, exponential, hyperbolic )等,可在实数域或者复数域上操作。

统计学函数

矢量统计包含(比较专业的词汇,直接英文表示):

  • Pseudorandom, quasi-randomnon-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...

后续

看完功能简介,下一篇就开始从最简单的向量-向量,矩阵-向量,矩阵-矩阵的操作开始学习

3 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 读书时静不下心怎么办 初中生静不下心读书怎么办 孩子学习静不下心怎么办 退烧后体温35度怎么办 孩子体温34度多怎么办 宝宝感冒咳嗽流鼻涕出汗怎么办 养的小鸡总打架怎么办 小鸡一条腿瘸了怎么办 同窝小斗鸡打架怎么办 夏季羊长的慢怎么办 1岁吃母乳不吃饭怎么办 5个月宝宝黏妈妈怎么办 九个月宝宝不爱吃饭怎么办 20个月宝宝吐了怎么办 十个月的宝宝消化不好怎么办 两岁宝宝不爱喝水怎么办 两岁宝宝不爱喝水吃饭怎么办 两岁的宝宝不爱喝水怎么办 宝宝不爱吃饭不爱喝水怎么办 一多半宝宝爱喝水 不爱吃饭怎么办 1岁宝宝不爱吃饭喝水怎么办 两岁小宝宝不爱吃饭怎么办 4个月小宝宝咳嗽怎么办 3个月小宝宝咳嗽怎么办 2个月小宝宝咳嗽怎么办 8的岁儿童腿不直怎么办 作业盒子选错年级怎么办 两岁x型腿怎么办 绿萝叶子有水滴怎么办 打游戏变菜了怎么办 车被记号笔画了怎么办 水溶性彩铅受潮了怎么办 马克笔颜色涂深了怎么办 染发膏染眉毛了怎么办 用电容笔画画手有触感怎么办 CAD画图线性数字不居中怎么办 3d立体画笔堵塞怎么办 龋齿树脂填充老化后怎么办 小孩补过的牙疼怎么办 颜料弄到墙纸上怎么办 4岁的宝宝不爱涂色怎么办