BLAS快速入门
一.简介
BLAS【Basic Linear Algebra Subprograms,基础线性代数程序集】是一个应用程序接口【API】标准,用于规范发布基础基础线性代数操作的数值库【常用于向量或矩阵计算】。该程序集最初发布于1979年,并用于创建更大的数值程序包【例如:LAPACK】。在高性能计算领域,BLAS被广泛使用。
二.特点
1.BLAS按照功能被分为三个级别:
Level1:向量-向量计算,比如:点积【dot】,向量加法和乘法【axpy】,绝对值的和【asum】等。
Level2:向量-矩阵计算,比如:矩阵向量乘法【gemv】。
Level3:矩阵-矩阵计算,比如:矩阵乘法【gemm】。
2.每一种函数操作都区分不同的数据类型【单精度、双精度、复数】,比如:矩阵乘法分为sgemm【单精度一般矩阵乘法】、dsymm【双精度对称矩阵乘法】、zhemm【双精度复数埃米特矩阵乘法】。之所以要分这么多种,主要是针对每种不同类型的矩阵都要分别设计专门的算法,使得计算性能最优。
三.基本运算函数
备注:BLAS运算中的每个函数分为:单精度、双精度、复数和双精度复数4种类型。
四.BLAS向量-向量计算
五.BLAS矩阵-向量计算
六.BLAS矩阵-矩阵计算
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架