学术信息网 西电导航 关于 使用说明 搜索 系统首页 登录 控制面板 收藏 朱虎明的留言板
课程教学

目前本人承担的教学任务:

 

(1)软件技术基础(本科)

        欢迎本科生来实验室进行合作研究。

(2)高性能计算实验(研究生)            

    

             

高性能计算实验

 

高性能计算实验课程网站

课程背景

现在科学技术的发展依赖于理论、实验、计算三大手段的进步,高性能计算作为当今最先进的科学计算手段,在科学研究中起着非常重要的作用,已经广泛使用在遥感大数据处理、雷达信号处理、电磁计算和计算生物信息学等领域,但是由于信息技术的飞速发展,对高性能计算的授课提出了挑战,因此本课程采用理论授课和上机实践相结合的授课方式。既可以让学生掌握最新的高性能计算技术,又可以让不同的学生将高性能计算应用于自己的研究领域。 

课程编号:X16EE1905Z08EE1905

课程名称:高性能计算实验

课程英文名称:High Performance Computing Experiment

开课单位:电子工程学院

教学大纲撰写人:朱虎明

授课方式:讲授结合实验

考核方式:考察

先修课程:计算机程序设计

教学目标:

 通过本课程的学习,使学生熟悉高性能计算的硬件架构,初步掌握常用的高性能计算并行编程接口,如OpenMP、MPI、CUDA和OpenCL等,并初步具备运用高性能计算技术解决实际问题的能力。学生能理解集群计算、GPU计算、并行算法设计和应用等技术,并能够通过上机实践将高性能计算机应用于自己的科学研究和工程应用。

英文简介:

     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 you 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 and Open Computing Language.

课程主要内容:

Ⅰ理论部分

    1  概述 (2学时)

高性能计算的意义,国内外研究进展;能够解决的科学和工程问题。

2  高性能计算平台 (2学时)           

 高性能计算机硬件体系结构介绍;集群软件环境的组成,大规模异构并行计算。

               3  并行程序设计模型与性能评价(2学时)

并行程序设计方法PCAMAmdahl定律,Gustafson定律,加速比等。

4  基于消息传递编程(MPI)的并行程序开发 (2学时)

        MPI并行程序设计开发,点对点通信,阻塞和非阻塞通信,聚合通信

5  开放计算语言OpenCL(2学时)

        平台模型、存储器模型、执行模型以及编程模型。

6  开放计算语言OpenCL (2学时)

        大规模异构并行矩阵计算及其优化方法。

7  高性能计算与大数据处理 (2学时)

            基于MapReduce的大数据并行处理框架

8  学生Project分享  (2学时)

          学生讲解自己的并行计算实践经验

Ⅱ实验部分

实验

教学内容及要求

课时

1

熟悉高性能计算机运行环境

2

2

OpenMP

2

3

消息传递编程的通信方式

4

4

基于OpenCL的并行矩阵计算程序开发

4

5

基于CUDA的并行矩阵计算程序开发

4

参考书目:

1、              陈国良,并行算法的设计与分析(第3版) ,高等教育出版社,2009

2、              Benedict Gaster, Lee Howes, David R. Kaeli. Heterogeneous Computing with OpenCL, Morgan Kaufmann, 2011

3、              柯克大规模并行处理器编程实战(2),清华大学出版社,2013

 

国外著名高校高性能计算课程主页:

1、Carnegie Mellon University,Parallel Computer Architecture and Programming》.

2、U.C. Berkeley,Applications of Parallel Computers

3、Rice University,Parallel Computing

4、加州理工,《GPU Programming

 

其它有用资源:

1、OpenCL规范

2、AMD OpenCL资源

3、Intel OpenCL资源

4、Nvidia CUDA资源

 

注:本课程得到了西安电子科技大学研究生课程建设项目的支持。AMD公司提供了对OpenCL部分授课内容的技术支持,对此一并表示感谢。