课程大纲

课程大纲

并行处理

课程编码:180086081201P2001H 英文名称:Parallel Processing 课时:60 学分:3.00 课程属性:专业核心课 主讲教师:叶笑春等

教学目的要求
近年来,多核处理器逐渐占据了通用处理器市场的主导地位,并行计算机因此也成为人们日常使用的主要计算机类型。由此,如何用好并行计算机,必然成为系统开发人员和计算机用户们无法回避的关键问题。作为一门计算机系统结构专业的研究生专业课,本课程主要讨论各类并行计算机系统设计中的核心问题,涉及计算模型、编程模型、体系结构、性能分析等内容,帮助学生建立并行计算机系统设计和应用的整体概念和基本思路,为今后从事多核和众核处理器及各种并行计算机系统的设计、编程和应用打下基础。

预修课程
计算机体系结构

大纲内容
第一章 并行处理基础
第1节 课程介绍,并行处理基础知识、发展历史 2学时 叶笑春
第2节 并行体系结构分类介绍,数据并行、共享内存并行、消息传递并行体系结构原理及其典型案例 2学时 叶笑春
第3节 并行编程模型介绍,数据并行、共享内存并行、消息传递并行编程模型原理及其典型案例 2学时 叶笑春
第4节 并行编程基础:如何编写并行程序 2学时 叶笑春
第5节 并行编程基础:如何优化并行程序,包括负载平衡、局部性、通信和竞争优化 2学时 叶笑春
第二章 性能评价方法
第1节 性能评价方法:性能模型-并行程序性能评测指标包括加速比、扩展性;计算模型包括BSP、LogP 2学时 叶笑春
第2节 性能评价方法:系统评测及仿真、基准测试程序 2学时 叶笑春
第3节 性能评价方法:Gem5模拟器和PARSEC程序运行 3学时 叶笑春
第4节 性能评价方法:Roofline模型及案例分析 2学时 叶笑春
第三章 数据并行结构及编程
第1节 数据并行结构及编程:向量计算机及处理器、GPU 2学时 王展
第2节 数据并行结构及编程:SIMD指令并行及编程 3学时 王展
第3节 数据并行结构及编程:CUDA编程模型 2学时 王展
第四章 共享内存结构及编程
第1节 共享内存结构及编程:相关性协议及一致性模型设计原理及案例剖析 2学时 王展
第2节 共享内存结构及编程:Snoop & Directory协议实现 4学时 王展
第3节 共享内存结构及编程:OpenMP编程模型 2学时 王展
第五章 互连网络和消息传递编程
第1节 系统互连网络:协议、拓扑结构及案例分析 2学时 王展
第2节 系统互连网络:大规模互连网络模拟 2学时 王展
第3节 消息传递结构及编程:RDMA硬件体系结构 2学时 王展
第4节 消息传递结构及编程:系统级编程接口-IB verbs编程 2学时 王展
第5节 消息传递结构及编程:用户级编程接口-MPI编程 2学时 王展
第六章 同步操作设计与实现
第1节 同步操作设计与实现:锁、栅障的设计与实现 2学时 王展
第2节 同步操作设计与实现:事务性内存结构 2学时 王展
第3节 同步操作设计与实现:无锁算法实现 2学时 王展
第七章 并行文件系统
第1节 并行文件系统:硬件、系统设计及案例 2学时 王展
第2节 并行文件系统:并行I/O系统级和用户级编程接口和框架 2学时 王展
第八章 其他并行应用介绍
第1节 数据仓储级并行:数据中心、云计算的扩展性、大数据体系结构及编程模型 2学时 王展
第2节 深度学习中的并行:深度学习体系结构及编程并行框架和算法 2学时 王展
第九章 课程总结
第1节 考试:以课程总结的方式:比如结合实验课的实践或者自己科研项目制作报告演讲 2学时 王展

教材信息
1、 Parallel Computer Architecture: A Hardware/Software Approach David Culler 2003-1 机械工业出版社

参考书
1、 并行计算-结构·算法·编程 陈国良 2003年 高等教育出版社

课程教师信息
叶笑春,研究员,博导,中国科学院计算技术研究所高通量计算机研究中心主任。主要从事众核处理器设计及并行算法研究,先后参与多款高通量众核处理器芯片研制。主持国家重点研发计划课题、国家自然科学基金项目、中科院先导课题等十余项。发表学术论文100余篇,授权发明专利20余项。曾获北京市技术发明一等奖,产学研合作创新成果二等奖等

王展,副研究员,硕导,中国科学院计算技术研究所高性能计算机研究中心互连架构课题组长,主要研究方向为高性能计算机系统结构、高性能互连网络等,先后参与了曙光6000/7000等高性能计算系统的研发工作,在相关领域发表学术论文40余篇,申请发明专利10余项,曾获北京市科学技术进步一等奖。