并行与分布式计算基础课程详细信息
课程号 英文名称 先修课程 00137150 学分 3 Foundations of Parallel and Distributed Computing 计算概论,数据结构与算法,机器学习基础. 在过去的十年里,并行和分布式计算正经历爆炸式增长,已经从一个选修课程变成了数据科学本科计算课程的核心组成部分。本课程包含关于并行中文简介 计算和分布式计算的计算模型理论的基本概念和分布式内存体系结构上的MPI编程技术、共享内存体系结构上的OpenMP编程技术以及在GPU众核体系结构上的CUDA编程技术等。 The past decade has seen explosive growth with parallel and distributed computing, which has moved from a largely elective topic to become more of a core component of undergraduate computing curricula in data sciences. This course encompasses the basic 英文简介 concepts on the theory of computational models for parallel and distributed computing, with hands-on practice of programing techniques on distributed memory architectures with MPI, on shared memory architectures with OpenMP and on many-core GPU architectures with CUDA. 开课院系 通选课领域 是否属于艺术与美育 平台课性质 平台课类型 授课语言 数学科学学院 否 中文 无; Programming Massively Parallel Processors: A Hands-on Approach,D. 教材 Kirk, W. Hwu,Morgan Kaufmann,2016,Introduction to High Performance Computing for Scientists and Engineers,G. Hager, G. Wellein,CRC Press,2010, 参考书 3; 1; 本课程主要面向北京大学数学科学学院数据科学与大数据技术专业的三年级本科生。通过本课程的学习,学生将对并行与分布式计算的基础理论、编程方法及其与数据科学结合的相关技术有较为系统性的了解,从而提高学生从事大数据算法设计、编程与应用等的相关能力。 教学大纲 1. 预备知识:2学时 2. 高性能计算编程与开发环境:3学时 3. 当代高性能处理器架构:3学时 4. 程序的性能优化基础:2学时 5. 程序的性能优化实践:2学时
6. 并行计算模型与框架:3学时 7. 多线程并行编程(1):2学时 8. 多线程并行编程(2):2学时 9. 分布式并行编程(1):2学时 10. 分布式并行编程(2):2学时 11. 大数据的分布式处理技术(1):2学时 12. 大数据的分布式处理技术(2):2学时 13. 众核处理器编程:3学时 14. GPU编程基础(1):2学时 15. GPU编程基础(2):2学时 16. GPU与大数据:3学时 17. GPU与深度学习:3学时 18. 若干前沿问题选讲(1):2学时 19. 若干前沿问题选讲(2):2学时 20. 课程总结与作业展示(1):2学时 21. 课程总结与作业展示(2):2学时 课堂讲授占80%,报告展示和讨论占20% 平时作业 50 %,大作业 50% 教学评估 杨超: