课程大纲

课程大纲

并行算法与高性能计算

课程编码:1800830708Z1P3005H 英文名称:Parallel Programming and High Performance Computing 课时:60 学分:3.00 课程属性:专业课 主讲教师:张怀

教学目的要求
(超)大规模并行数值计算(Massive Parallel Computing)、云计算(Cloud Computing),大数据(Big Data)与人工智能(AI)应用等是目前国际上计算数学、计算机科学和各学科紧密交叉的学科。近几年来,在地球科学上的应用也得到了大量的应用。在地球科学领域,最新发展起来的计算地球动力学学科前沿和焦点,也是最活跃的科学分支之一。我国在这个领域的研究和开发十分落后,尤其在地学领域的应用,部分研究领域还处于空白的地位。
本课程是本课程是一门面对“地球与行星科学学院”中本部和各个研究所未来从事(超)大规模数值模拟在本领域应用的同学专门设计的实用性基础课程。可以作为选修计算地球动力学领域研究生开设的学科基础课程,也可以作为其他专业方向的专业基础。
课程开设的重点是:并行计算机的硬件和网络环境基础;基于点对点通信的Message Passing Interface(MPI)理论和基于区域分解算法的并行软件设计基础;基于地球科学问题的大规模并行数值计算的算法设计和软件实现基础与程序设计;以及目前国际上最前沿的云环境与云计算在人工智能和大数据应用的一些基本知识的理解和编程技巧掌握。
通过本课程的学习,掌握差分法、有限元方法等数值计算的基本概念、方法及原理,初步具有应用计算机从事地球动力学前沿科学问题研究的能力。课程将重点讲述数值计算方法基础、差分法、有限元方法(含谱元法和非连续伽略金算法Discontinuous Galerkin)、地球动力学基本物理模型及其数值解法、国际最新的关于超大规模并行数值模拟前沿发展的一些基本问题,例如区域分解算法、MIC和GPU计算等前沿研究方向和在计算地球动力学的应用问题。
课程同时安排课上上机编程实践和讲述的同时,安排大量的课下作业和2-3个独立完成的Projects,用来加深和巩固同学对课堂理论掌握的同时,更要从实践上,培养学生对知识的理解力和科研创造能力以及独立思维的能力。

预修课程
1. 推免生需要复习数学分析或者高等数学上下册;
2. 数值分析或数值计算方法;
3. Fortran 或者C语言编程

大纲内容
第一章 超大规模计算与大数据应用在地球科学领域应用基本介绍 3.0学时 张怀
第1节 需要掌握的基础知识
第2节 大致内容基本概况
第二章 当代超级计算机的基础架构 3.0学时 张怀
第1节 并行计算的基本概念
第2节 一个简单的并行计算机
第3节 超级计算机的主要基础架构类型
第三章 超级计算机的系统环境 6.0学时 张怀
第1节 并行环境和并行操作系统
第2节 一个简单的并行计算实现
第3节 云环境与云计算
第4节 Message Passing Interface(MPI)基础
第5节 点对点通信
第6节 集群通信
第7节 派生数据类型
第8节 一个简单的并行计算例子
第四章 线性方程组的数值解法 3.0学时 张怀
第1节 顺序Gauss消去法,列主元Gauss消去法
第2节 LU分解,三对角方程组的追赶法,对称矩阵的Cholesky分解,正定矩阵的平方根法
第3节 向量与矩阵的范数
第4节 矩阵的条件数
第五章  解线性方程组的迭代法 3.0学时 张怀
第1节 Jacobi迭代法和Gauss-Seidel迭代法
第2节 超松驰(SOR)迭代法
第3节 迭代法的收敛性定理
第4节  迭代收敛速度
第六章 求解大规模稀疏方程组的Krylov子空间迭代算法 3.0学时 张怀
第1节 Krylov子空间与Arnodi算法
第2节 共轭梯度算法基础
第3节 最小二乘殘量算法基础及其他迭代算法
第4节 大规模稀疏线性系统的特征值问题的求解
第七章 解非线性方程的迭代数值方法 3.0学时 张怀
第1节 定点迭代法的基本思想
第2节 收敛定理与误差估计
第3节 Newton迭代算法及其几何意义
第4节 Newton法的收敛速率
第八章 偏微分方程基础知识 9.0学时 张怀
第1节 偏微分方程基本类型与特征
第2节 有限差分法
第3节 有限元法
第4节 有限体积法
第5节 一个简单的差分算法的并行实现算例
第九章 区域分解算法 9.0学时 张怀
第1节 区域分解算法的基本思想
第2节 加法(additive)schwarz和乘法(multiple)schwarz算法
第3节 Schur complement区域分解算法
第4节 一个简单的并行有限元计算例子
第5节 线弹性并行有限元计算
第十章 发展方程与非线性偏微分方程的并行有限元算法实现 6.0学时 张怀
第1节 一个简单的非线性方程的有限元方法
第2节 一个简单的发展方程的定义与特征
第3节 时间一阶格式的发展方程算法
第4节 Euler向前、Euler向后和Crank-Nicolson算法
第5节 时间二阶格式的有限元算法
第6节 Newmark算法及其特性
第7节 初边值条件、稳定性的讨论
第8节 并行有限元算法实现
第十一章 计算地球动力学中常用的有限元模型和并行算法 6.0学时 张怀
第1节 能量方程:温度场对流扩散方程
第2节 弹性方程:各向同性和各向异性、有限变形基本理论
第3节 粘弹性有限元方程
第4节 Navier-Stokes方程与Stokes方程
第5节 Maxwell方程组的求解算法
第6节 上述方程的并行求解算法
第十二章 当代计算地球动力学:发展方向和前沿研究领域 3.0学时 张怀
第1节 大数据与AI在地球科学应用发展现状和前沿
第2节 大数据与云环境
第3节 AI基本思想、神经网络类型、训练与优化算法
第4节 可视化/超大规模数据的并行可视化
第5节 数据同化方法
第6节 MIC计算(Intel Xeon Many Integrated Cores)与GPU计算
第7节 Knights Landing 计算
第8节 非结构化方格自动生成算法
第9节 谱元法(SEM,Spectral Element Method)
第10节 非连续伽略金算法(DG, Discontinuous Galerkin Method)
第十三章 期终闭卷考试 3.0学时 张怀
第1节 期终闭卷考试

参考书

课程教师信息
张怀:教育背景
1997-09--2000-07 中国科学院数学研究所 理学博士
1995-09--1997-07 哈尔滨工业大学材料科学学院 硕士
1991-09--1995-07 哈尔滨工业大学材料科学学院 学士 工作经历
2009,6-,中国科学院研究生院地球科学学院、计算地球动力学重点实验室,教授;
2003,7-2009,5,中国科学院研究生院地球科学学院、计算地球动力学重点实验室,副教授;
2002,9-2003,3,中国科学院研究生院数学与系统科学学院,高级访问学者;