20 lines
1.7 KiB
Markdown
20 lines
1.7 KiB
Markdown
## 课程简介
|
||
- 所属大学:CMU 和 Stanford
|
||
- 先修要求:计算机体系结构,熟悉C++
|
||
- 编程语言:C++
|
||
- 课程难度:🌟🌟🌟🌟🌟
|
||
- 预计学时:150小时
|
||
|
||
[Kayvon Fatahalian](http://www.cs.cmu.edu/~kayvonf)教授此前在CMU开了15-418这门课,后来他成为Stanford的助理教授后又开了类似的课程CS149。但总体来说,15-418包含的课程内容更丰富,并且有课程回放,但CS149的编程作业更fashion一些。我个人是观看的15-418的课程录影但完成的CS149的作业。
|
||
|
||
这门课会带你深入理解现代并行计算架构的设计原则与必要权衡,并学会如何充分利用硬件资源以及软件编程框架(例如CUDA,MPI,OpenMP等)编写高性能的并行程序。由于并行计算架构的复杂性,这门课会涉及诸多高级体系结构与网络通信的内容,知识点相当底层且硬核。与此同时,5个编程作业则是从软件的层面培养学生对上层抽象的理解与运用,具体会让你分析并行程序的瓶颈、编写多线程同步代码、学习CUDA编程、OpenMP编程以及前段时间大热的Spark框架等等。真正意义上将理论与实践完美地结合在了一起。
|
||
|
||
|
||
## 课程资源
|
||
- 课程网站:[CMU15418](http://15418.courses.cs.cmu.edu/spring2016/),[CS149](http://35.227.169.186/cs149/fall21)
|
||
- [课程视频](http://15418.courses.cs.cmu.edu/spring2016/lectures)
|
||
- 课程教材:无
|
||
- [课程作业](http://35.227.169.186/cs149/fall21):5个编程作业
|
||
|
||
## 资源汇总
|
||
我在学习这门课中用到的所有资源和作业实现都汇总在[这个Github仓库](https://github.com/PKUFlyingPig/CS149-parallel-computing)中。 |