高性能计算(1)
一、程序优化
- CPU程序优化
1.1 体系结构:CPU流水线技术、高速缓指令集、CPU超标量设计
1.2 并行技术:MPI、OpenMP、SIMD、汇编
1.3 算法:算法优化 - GPU程序优化
1.1 GPU的体系结构(计算核心、高带宽、多级存储)
1.2 GPU并行框架:CUDA、OpenCL、OpenACC
1.3 并行设计的算法 - 程序优化核心
3.1 算法并行可行性
3.2 编写与体系结构相匹配的程序(并行效率、多级存储、指令集优化)
二、CPU和GPU区别
- CPU核心数量少,GPU核心数量多。
- CPU是减低延迟设计导向,GPU是增加数据吞吐量设计导向。
- CPU适合IO密集型任务,GPU适合数据计算任务。
- CPU切换线程有上下文代价,GPU线程几乎每个都有物理核心,线程切换零开销。
三、所有的机器学习和深度学习模型最基础的计算任务都是稀疏/稠密矩阵、几何基元。
四、稀疏矩阵向量乘问题(SpMV)
- 常见的稀疏矩阵储存方法有 COO、CSR、DIA(适合对角矩阵),通常CSR储存效率高些。
- CSR-SIMD优化,可变长的具有连续地址的非零元段,以段的形式对矩阵进行存储。
五、算法库
- BLAS/LAPACK 是基础的线性代数库
- PETSc C语言实现主要用来求解偏微方程组
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?