课程大纲

课程大纲

并行处理

课程编码:180086085404P2002H 英文名称:Parallel Processing 课时:60 学分:3.00 课程属性:专业核心课 主讲教师:谭光明等

教学目的要求
本课程是为计算机专业研究生开设的专业课。并行处理一直是提高计算机系统性能的主要技术路线之一,尤其是近年来随着多核处理器的发展,并行处理已经是从传统的高性能计算机覆盖到了终端计算设备和个人电脑,深入地从系统的角度理解并行处理无论是对硬件设计还是软件开发都极为重要。本课程主要介绍处理器和高性能计算机系统结构、优化和性能建模、并行编程等内容,重点结合具体的案例剖析各种并行技术对性能提升的影响及其与其他性能因素的关联,帮助学生建立软硬件协同的系统性思维和实践能力,为今后从事并行计算机系统相关的设计、编程和应用打下基础。

预修课程
Linux、C/Fortran编程、计算机体系结构、操作系统、数值方法

大纲内容
第一章 课程介绍,并行处理基础知识、发展历史 3学时 谭光明
第1节 课程介绍
第2节 超算发展简史
第3节 为什么所有计算机都采用并行处理器?
第4节 大规模计算科学与工程问题需要强大的计算机
第5节 为什么编写高性能并行程序如此困难?
第二章 并行体系结构和编程模型的基础介绍:现代处理器(多核、GPU)、共享内存、分布式内存 3学时 谭光明
第1节 现代处理器架构的不同分类
第2节 并行计算机体系结构简介
第3节 并行编程模型(共享内存、消息传递、数据并行、混合并行)
第三章 并行性:(1)理解并行来源及其基本限制(强可扩展和弱可扩展);(2)测量性能的方法和基准程序 3学时 谭光明
第1节 理解并行来源及其基本限制(强可扩展和弱可扩展)
第2节 测量性能的方法和基准程序
第四章 性能模型(1):ECM(授课+实验) 3学时 谭光明
第1节 ECM性能模型
第2节 单核与多核情形案例剖析
第3节 In-core执行模型
第4节 x86 ISA与OSACA介绍
第五章 性能模型(2):roofline(授课+实验) 3学时 谭光明
第1节 Roofline性能模型
第2节 运用性能模型指导优化
第3节 改进与拓展Roofline性能模型
第六章 逼近硬件浮点计算峰值性能(CPU)(授课+实验) 3学时 王银山
第1节 达到CPU峰值效率的尝试
第2节 延迟分析
第3节 指令级并行
第4节 吞吐分析
第七章 存储层次的数据移动代价和优化(授课+实验) 3学时 王银山
第1节 访存受限型算法
第2节 处理器、缓存及内存的组织结构
第3节 数据移动的代价
第4节 获取更大带宽的优化手段
第5节 线程间数据通信的代价
第八章 性能工程实战优化分析:稀疏矩阵向量乘(授课+实验) 3学时 王银山
第1节 SpMV算法介绍
第2节 如何理解SpMV的性能表现
第3节 如何优化SpMV
第九章 高阶共享内存并行优化(授课+实验) 3学时 王银山
第1节 OpenMP简介
第2节 Advanced 1: data scope
第3节 Advanced 2: Work Sharing Schemes
第4节 Advanced 3: Task
第5节 Advanced 3: Barrier and synchronization
第十章 性能工程实战优化分析:雅克比模板运算(授课+实验) 3学时 王银山
第1节 2D stencil计算简介
第2节 Layer condition 分析
第3节 从2D问题到3D问题
第4节 OpenMP 并行策略与Layer condition
第5节 NT store情形分析
第十一章 逼近硬件浮点计算峰值性能(GPU)(授课+实验) 3学时 王银山
第1节 CUDA介绍
第2节 延迟分析
第3节 查看底层代码
第4节 提升吞吐
第5节 GPU与CPU编程异同分析
第十二章 网络通信与并行 3学时 谭光明
第1节 基本概念
第2节 通信拓扑模型介绍
第3节 3D Jacobi案例通信策略分析
第十三章 点到点通信(上)(OpenMPI+UCX实现介绍) 6学时 谭光明
第1节 OpenMPI软件栈介绍
第2节 通信协议
第3节 关键算法
第十四章 矩阵乘法优化案例剖析(授课+实验) 6学时 谭光明
第1节 矩阵乘算法介绍
第2节 Step1:baseline
第3节 Step2:SIMD 优化
第4节 Step3:Tiling
第5节 Step4:Blocking
第6节 Step5:Packing
第十五章 课程项目辅导 3学时 王银山
第1节 HPL软件架构、模块及并行算法介绍
第2节 HPCG软件架构、模块及并行算法介绍
第3节 课程项目介绍
第十六章 前沿技术介绍(1):自动调优 3学时 谭光明
第1节 趋势与挑战、技术变革与最新进展
第十七章 前沿技术介绍(2):HPC+AI 3学时 谭光明
第1节 趋势与挑战、技术变革与最新进展
第十八章 考试周(学生汇报课程项目) 3学时 王银山
第1节 考试周(学生汇报课程项目)

参考书
1、 Parallel Computer Architecture: A Hardware/Software Approach David E. Culler, Jaswinder Pal Singh 2011年 Morgan Kaufmann Publishers
2、 Introduction to High Performance Computing for Scientists and Engineers Georg Hager and Gerhard Wellein 2011年 CRC Press

课程教师信息
谭光明,中科院计算技术研究所研究员、高性能计算机研究中心主任。国家杰出青年基金获得者,曙光系列高性能计算机系统研制骨干。发表学术论文100余篇,曾任IEEE TPDS编委和多个CCF A类会议国际会议的程序委员。曾获得国家科技进步奖二等奖、北京市科技进步奖一等奖、卢嘉锡青年人才奖和全国向上向善好青年称号。
王银山,中科院计算技术研究所副研究员,硕士生导师。中科院青促会会员,主要研究方向并行计算,稀疏基础算法优化,曙光7000超算系统,先进处理器结构等中科院先导C项目骨干成员。