异构计算平台架构与编程实战

📚 共计 30 章节
第1章
异构计算概述
从单核到多核再到异构的演进 · 定义与核心思想 · CPU+GPU/FPGA/ASIC对比
基础概念
第2章
GPU架构基础
GPU与CPU架构差异 · NVIDIA Fermi/Kepler/Turing/Ampere · CUDA核心与SM
GPU硬件
第3章
CUDA编程模型入门
Host/Device模型 · 核函数定义与调用 · Grid/Block/Thread层次
CUDA编程
第4章
CUDA内存模型
全局/共享/寄存器/本地/常量/纹理内存 · 特点与使用场景
内存优化
第5章
CUDA程序优化基础
内存合并访问 · Bank Conflict · Occupancy · 循环展开与指令级并行
性能调优
第6章
CUDA流与事件
流的概念 · 创建/销毁/同步 · 事件计时与性能分析
异步并发
第7章
多GPU编程
多GPU环境配置 · 点对点通信 · 任务划分 · NCCL库简介
多卡NCCL
第8章
CUDA库实战
cuBLAS矩阵乘法 · cuFFT · cuRAND · Thrust模板库
加速
第9章
OpenCL基础
平台模型 · 执行模型 · 内存模型 · 第一个OpenCL程序
OpenCL跨平台
第10章
OpenCL内核优化
工作组大小 · 本地内存 · 向量化 · 编译选项优化
优化OpenCL
第11章
FPGA异构计算基础
FPGA架构特点 · 与CPU/GPU对比 · HLS高层次综合概念
FPGAHLS
第12章
Xilinx Vitis开发流程
Vitis安装与环境 · 平台创建 · 主机与内核代码编写
VitisXilinx
第13章
Vitis HLS优化指令
PIPELINE · UNROLL · ARRAY_PARTITION · DATAFLOW · INTERFACE
HLS指令
第14章
FPGA加速实战
矩阵乘法FPGA实现 · 图像滤波 · FFT加速
实战FPGA
第15章
Intel oneAPI简介
oneAPI统一编程模型 · SYCL语言基础 · DPC++编译器
oneAPIIntel
第16章
SYCL编程基础
队列与处理器 · 缓冲区与访问器 · 内核调度 · USM统一共享内存
SYCLDPC++
第17章
SYCL程序优化
内核合并 · 工作组与子组 · 本地内存 · 向量化
优化SYCL
第18章
oneAPI库实战
oneDNN深度学习加速 · oneMKL数学库 · oneDPL并行算法
oneDNNoneMKL
第19章
CPU+GPU协同计算
任务划分 · 数据传输优化 · 流水线重叠 · 负载均衡
协同CPU-GPU
第20章
CPU+FPGA协同计算
PCIe通信优化 · 数据预取 · 任务流水线 · 动态重配置
CPU-FPGA流水线
第21章
异构计算中的内存管理
统一内存 · 页锁定内存 · 内存池 · 零拷贝技术
内存零拷贝
第22章
同步与通信
锁与原子操作 · 栅栏与屏障 · 点对点通信 · 集合通信
同步通信
第23章
性能分析与调优工具
Nsight Systems · Nsight Compute · VTune · Vitis Analyzer
工具Profiling
第24章
深度学习中的异构计算
TensorFlow/PyTorch GPU加速 · 混合精度训练 · 分布式训练
DL混合精度
第25章
科学计算中的异构计算
分子动力学模拟 · 气象预报 · 计算流体力学
HPC科学计算
第26章
图像处理中的异构计算
OpenCV CUDA模块 · 实时视频处理 · 图像分割
CVOpenCV
第27章
云计算中的异构计算
GPU云实例 · FPGA云实例 · Serverless异构计算
Serverless
第28章
边缘计算中的异构计算
Jetson平台 · Edge TPU · Intel Movidius
边缘Jetson
第29章
异构计算编程模型对比
CUDA vs OpenCL vs SYCL vs HIP vs Vulkan Compute
对比编程模型
第30章
异构计算未来趋势
CXL互连 · Chiplet架构 · 存算一体 · 量子计算与异构融合
前沿趋势