课程深入
Stanford CS149:并行计算(2025 秋)
斯坦福大学 CS149《并行计算》2025 年秋季课程网站。课程旨在深入讲解现代并行计算系统设计的基本原理与工程权衡,并教授有效利用这些机器所需的并行编程技术,内容同时涵盖并行硬件与软件设计。基本信息显示上课时间为周二、周四 10:30–11:50,地点 NVIDIA Auditorium,授课教师为 Kayvon Fatahalian 和 Kunle Olukotun。页面还列出课程安排,前几讲涉及并行的动机与效率、现代多核处理器(多核、SIMD、多线程)、ISPC 编程抽象、数据并行示例以及程序优化等主题。
- 分级
- 值得看
- 收录时间
- 2026-10-29
- 难度
- 进阶
- 语言
- 英文
- 规模
- 19 次课 · 5 个编程作业
- 费用
- 部分免费
学完你能
- 理解并行处理在现代计算中无处不在的地位,以及并行化代码面临的挑战与效率动因
- 掌握多核、SIMD、多线程、GPU 等并行硬件形式与关键性能特征
- 掌握数据并行与共享地址空间模型下的并行编程与程序优化技术(工作分配、调度、局部性、通信)
- 能够用 CUDA 与 ISPC 等抽象编写并优化 GPU 内核,包括圆渲染器与卷积算子
- 理解缓存一致性、内存一致性、细粒度同步与无锁编程、事务内存等并行系统机制
- 了解面向 AI 应用与专用硬件(加速器、数据中心)的系统设计与优化思路
适合你吗
适合
- 已具备计算机体系结构与 C/C++ 编程基础、想深入并行硬件与软件设计的学生
- 想把程序从单核迁移到多核、GPU、专用加速器上的工程实践者
- 关注 AI 推理在 GPU 与加速器上高效执行的读者
暂不适合
- 完全没有编程与计算机体系结构基础、想找入门科普的读者
- 只想看视频、不打算完成编程与书面作业的读者
- 只关心串行算法或理论计算复杂度的读者
需要先会
需要较强的计算机体系结构与 C/C++ 编程基础(课程讨论处理器、缓存、内存与性能分析)。
课程特点
- 内容侧重
- 并行硬件与软件设计的原则与工程取舍,覆盖多核、GPU、专用加速器与 AI 数据中心部署。
- 练习与项目
- 5 个编程作业(四核 CPU 性能分析、任务图调度、CUDA 圆渲染器、Trainium2 上的融合 Conv+MaxPool、CUDA 内核优化)与 4 次书面作业,另有期中、期末两次考试。
- 投入时间
- 每周二、四 10:30–11:50 上课,每周两次课;期中为晚间考试,期末 3:30–6:30。作业按日期分布在各周。
- 费用说明
- 课程页、讲义与大纲无需登录即可查看;2025 秋的课堂视频不向公众发布,往届(2023)视频在斯坦福 YouTube 频道可看;作业链接指向公开的 GitHub 仓库与讲义 PDF。
内容覆盖
- 为何要并行?为何要效率?——并行化挑战、并行芯片动因、处理器基础
- 现代多核处理器(上)——多核、SIMD、多线程等并行形式
- 现代多核架构(下)与 ISPC 编程抽象——延迟与带宽、抽象与实现
- 并行化代码:一个示例思考过程——数据并行与共享地址空间模型
- 程序优化 1:工作分配与调度——降低开销、Cilk 工作窃取
- 程序优化 2:局部性与通信——消息传递、异步与阻塞收发、流水线、算术强度、避免争用
- GPU 架构与 CUDA 编程——CUDA 抽象及其在现代 GPU 上的实现
- 数据并行思维——map、reduce、scan、前缀和、groupByKey
- 在 GPU 上高效求值 DNN:Transformer 与卷积网络——层调度、卷积映射为矩阵乘、层融合
- 硬件专用化——能效计算、加速器设计动机与案例(DNN 加速器)
- 面向专用硬件的编程系统——现代趋势与实现方法
- 把 AI 应用映射到数据中心计算机——数据中心规模下的 AI 服务
- 领域专用编程系统与 AI 驱动的性能优化——专用抽象、自动程序优化、AI 智能体驱动的优化
- 缓存一致性——基于失效的 MSI 与 MESI、伪共享
- 实现同步与内存一致性——锁的细粒度同步、宽松一致性的动机与对程序员的影响
- 期中考试(晚间,无课)
- 细粒度加锁与无锁编程——单读者/写者队列、无锁栈、ABA 问题
- 事务内存(上)——事务的动机、实现设计空间、STM 与 HTM 基础
- 事务内存(下)与课程答疑——后续学习方向建议、与授课教师的问答
- 期末考试