个人信息:Personal Information
副教授 博士生导师 研究生导师
主要任职:CCF高性能计算专委会委员
性别:男
毕业院校:西安电子科技大学
学历:博士研究生毕业
学位:博士学位
在职信息:在岗
所在单位:人工智能学院
学科:计算机科学与技术
办公地点:西安电子科技大学网安大楼CII 1008
联系方式:陕西省西安市西沣路兴隆段266号
电子邮箱:
校企联合课程建设项目-高性能计算实验
发布时间:2019-11-06 点击次数:
研究生课程教学大纲模板
课程编号:X16EE1905/ Z08EE1905
课程中文名称:高性能计算实验
课程英文名称: High performance computing experiment
开课单位:人工智能学院
主讲人:朱虎明
教学大纲撰写人:朱虎明
课程学分:2
课内学时:32
适用学生:硕士/专业学位
课程性质:非学位
授课方式:线下
考核方式:考察
适用学科:工科、理科
先修课程:编程语言
推荐教材:
1、 柯克,胡文美. 大规模并行处理器程序设计.北京:机械工业出版社
2、帕切克,邓倩妮等译著. 并行程序设计导论.北京:机械工业出版社
3、雷蒙德·泰. OpenCL异构并行编程实战.北京:机械工业出版社
教学目标:
通过本课程的学习,使学生对高性能计算的特征和发展趋势有比较全面的了解,并初步具备运用高性能计算技术解决实际问题的能力。学生能理解集群计算机和GPU等并行计算的硬件架构,初步掌握MPI、OpenMP、CUDA和OpenCL等并行计算框架,熟悉并行算法设计等技术,能够灵活结合和运用高性能计算的模型和方法,开展围绕高性能计算的理论、模型、技术和应用的研究。
英文简介:
This course is an introductory course on high-performance computing. High-performance computing refers to a specialized use and programming of (parallel) supercomputers, computer clusters, Graphic Processing Unit(GPU),and everything from software to hardware to speed up computations. The CPU clock speed of desktop and commodity processors has reached a maximum range, due to physical limitations. As a result, more advanced use of software and parallel hardware is required to further speed up processing. In this course students will learn how to write parallel code that is highly optimized for modern multi-core processors, clusters and GPU, using modern software development tools, performance profilers, specialized algorithms, parallelization strategies, and advanced parallel programming constructs in MPI ,openMP ,CUDA and Open Computing Language.
课程主要内容:
1、掌握高性能计算的基本概念,会使用高性能计算系统。
2、熟悉集群计算机和图形处理器GPU的硬件架构。
3、重点:初步掌握MPI、OpenMP、CUDA和OpenCL等并行计算框架及其性能优化方法。
4、难点:熟悉基本的并行算法设计方法
5、难点:将所学高性能计算知识应用于图像处理和人工智能等具体应用。
教学大纲
Ⅰ理论部分
第1章 概述 (2学时)
高性能计算的意义,国内外研究进展;能够解决的科学和工程问题。
第2章 高性能计算平台 (2学时)
高性能计算机硬件体系结构介绍;集群软件环境的组成,大规模异构并行计算。
第3章 并行程序设计模型与性能评价(2学时)
并行程序设计方法PCAM,Amdahl定律,Gustafson定律,加速比等。
第4章 基于消息传递编程(MPI)的并行程序开发 (2学时)
MPI并行程序设计开发,点对点通信,阻塞和非阻塞通信,聚合通信。
第5章 CUDA (2学时)
CUDA的基本概念及其并行计算模型
第6章 CUDA (2学时)
基于CUDA的矩阵与矢量乘法、矩阵乘法与优化。
第7章 开放计算语言OpenCL (2学时)
平台模型、存储器模型、执行模型以及编程模型。
第8章 高性能计算与AI系统 (2学时)
深度神经网络的并行化设计方法与性能分析。
Ⅱ实验部分
实验 |
教学内容及要求 |
课时 |
1 |
熟悉高性能计算机运行环境 |
1 |
2 |
练习消息传递编程的通信方式 |
2 |
3 |
基于openMP 的并行程序 |
1 |
4 |
大规模异构并行矩阵计算程序开发 |
5 |
5 |
基于OpenCL 的并行程序与优化 |
3 |
6 |
AI系统并行化 |
4 |
参考书目:
1、 陈国良,并行算法的设计与分析(第3版) ,高等教育出版社,2009
2、 Benedict Gaster, Lee Howes, David R. Kaeli. Heterogeneous Computing with OpenCL, Morgan Kaufmann, 2011
分析报告:
国家正在建设一流大学和一流学科,这对高校的人才培养提出了新的要求。高性能计算机是科学研究和工程应用最重要的平台之一,掌握高性能计算技术是利用好高性能计算机的基础。随着求解问题的日趋复杂和计算机技术的变革,高性能计算日趋重要。例如近年来,深度神经网络已成为机器学习领域的研究热点,并被广泛应用于语音识别、自动驾驶、图像分析等领域。然而随着训练数据集的增大和训练模型的日趋复杂,深度神经网络的训练时间越来越长,因此高性能计算平台成为增强其应用时效性的必要技术手段。高性能计算课程作为一门理论和实践结合紧密的交叉学科课程,在培养学生的创新、专业素养和综合实验能力等方面发挥着重要作用。
ACM和IEEE联合制定的2013计算机科学教学大纲中,共有18个知识模块,其中的并行与分布式计算模块(PD - Parallel and Distributed Computing)就是新增加的知识模块,特别强调了并行计算的重要性。国外知名大学已经开设了很多相关的课程。例如Stanford大学开设的《Parallel Computing》,Carnegie Mellon 大学开设的《Parallel Computer Architecture and Programming》课程,Berkeley开设的《Applications of Parallel Computers》,MIT开设的《Parallel and Heterogeneous Computer Architecture》课程等。
本课程将参照国际知名大学的高性能计算相关课程建设内容,结合西安电子科技大学的学科优势,并利用先进的软硬件技术,最终建设国内领先的开放课程。
课程教学利用计算机课件进行多媒体教学。授课时多媒体课件与黑板粉笔同时使用,上机操作演示实验与多媒体演示相结合,有效地改进课堂教学效果。进行理论与实验整合的试点,拟定理论课与实验课整体优化的教学大纲;对于理论和实验教学可以整合的内容,按照“大课演示现象-理论知识学习-学生自主演示实验-定量实验测量”的步骤组织了单元教学。把研究性教学理念贯穿到教学过程中。
国外知名高校高性能计算相关课程链接
1、UIUC开设的《Applied Parallel Programming》
2、Stanford开设的《Parallel Computing》
3、Carnegie Mellon University 开设的《Parallel Computer Architecture and Programming》
4、Berkeley开设的《Applications of Parallel Computers》
5、MIT开设的《Parallel and Heterogeneous Computer Architecture》
6、剑桥大学开设的《Multicore Semantics and Programming》