🚀 异构计算
CPU · GPU 协同设计
📘 30 章
🧩 从入门到实战
01
异构计算概述
异构计算的定义与演进历史 · CPU与GPU架构差异 · 应用场景与价值
02
CPU架构基础
控制单元、ALU、缓存 · 指令流水线与乱序执行 · x86与ARM对比
03
GPU架构基础
流处理器、线程束、内存层次 · SIMT执行模型 · NVIDIA vs AMD
04
异构编程模型
CUDA编程模型基础 · OpenCL · SYCL与HIP简介
05
内存层次与数据管理
CPU/GPU内存对比 · 主机端与设备端传输 · 统一内存与显存管理
06
任务划分与负载均衡
任务粒度划分 · 静态与动态负载均衡 · CPU/GPU任务分配
07
数据并行与任务并行
Map/Reduce/Scan · 流水线、分治 · 混合并行策略
08
同步与通信机制
cudaDeviceSynchronize · __syncthreads · 原子操作与锁
09
性能分析与优化工具
NVIDIA Nsight · AMD ROCProfiler · Intel VTune
10
核函数优化
线程块/网格配置 · 寄存器与共享内存 · 指令级并行
11
内存访问优化
合并访问 · 共享内存bank冲突 · 常量/纹理内存
12
流与并发执行
CUDA流 · 多流并发 · CPU/GPU异步操作
13
多GPU编程
多GPU环境配置 · 点对点通信(P2P) · 任务分配与同步
14
CPU-GPU流水线设计
流水线阶段划分 · 双缓冲/多缓冲 · 深度与吞吐量权衡
15
数据传输优化
零拷贝 · 固定内存/页锁定 · 异步传输与计算重叠
16
稀疏计算与稀疏矩阵
CSR/COO/ELL格式 · GPU SpMV · 稀疏优化策略
17
深度学习中的异构计算
前向/反向传播GPU加速 · 混合精度(FP16/TF32) · 分布式协同
18
图像处理中的异构计算
图像滤波/卷积GPU加速 · 直方图与归约 · 实时视频流水线
19
科学计算中的异构计算
分子动力学(NAMD/GROMACS) · 有限元分析 · 气候建模
20
数据库与大数据异构计算
GPU加速SQL(OmniSci) · 图计算 · 排序/哈希并行
21
实时系统与异构计算
实时任务调度 · GPU抢占与上下文切换 · 混合关键性协同
22
功耗与能效优化
CPU/GPU功耗模型 · DVFS · 能效比优化策略
23
编程框架与库
cuBLAS/cuFFT/cuDNN · AMD ROCm · Intel oneAPI/DPC++
24
CPU-GPU统一编程模型
OpenMP GPU卸载 · OpenACC · C++标准并行
25
异构计算中的调试技术
CUDA-MEMCHECK · Compute Sanitizer · cuda-gdb · 内存检测
26
容器化与部署
Docker + NVIDIA Container Toolkit · Kubernetes · 云服务
27
FPGA与GPU异构协同
FPGA架构与HLS · CPU+GPU+FPGA三体协同 · 金融/信号处理
28
未来趋势与前沿技术
CXL与内存语义互联 · chiplet架构 · 量子+经典异构
29
综合案例:图像分类系统
数据加载到推理流水线 · CPU预处理 · GPU推理加速
30
综合案例:实时粒子系统
CPU物理逻辑/碰撞检测 · GPU粒子渲染 · 性能调优与可视化