首页 > 其他分享 >高等数值分析(高性能计算,并行计算) (Parallel and High Performance Computing)

高等数值分析(高性能计算,并行计算) (Parallel and High Performance Computing)

时间:2023-12-19 18:22:19浏览次数:36  
标签:Computing 编程 示例 MPI High 并行计算 OMP OpenMP

https://github.com/OpenMP

https://math.ecnu.edu.cn/~jypan/Teaching/ParaComp/

Parallel and High Performance Computing(高等数值分析(高性能计算,并行计算))

基本信息:
教材:本课程主要讲授数值并行计算,内容以课堂讲义为主
主要参考资料:
并行计算与实现技术,迟学斌等,科学出版社,2015
并行计算导论,张林波等, 清华大学出版社,2006
Parallel Programming: Concepts and Practice, Schmidt et al, 2018 (并行程序设计: 概念与实践, 张常有等译, 2020)
Parallel and High Performance Computing, Robey & Zamora, 2021 (并行计算与高性能计算, 殷海英译, 2022)
The Art of High Performance Computing, Eijkhout, 2023
远程客户端: SSH Secure Shell Client-3.2.9, SecureCRT
电子课件:
02.27,并行计算介绍
网络资源: Introduction to Parallel Computing Tutorial (Lawrence Livermore National Lab)
计算机体系结构基础
课外阅读: 第60届全球超级计算机TOP500排名及分析,2022.11
03.06,Linux 操作系统介绍
参考资料: Linux Command Quick Reference, Vi 简介, Vi 小结, vim cheat sheet
Linux 就该这么学 (第 2 版), 刘遄, 2021
Linux命令行与shell脚本编程大全 (第 4 版), Blum 等著, 2020, 门佳译, 2022
网络资源: Linux 教程, Shell 教程, Linux 常用命令, Linux 命令搜索
vim 入门基础, vi/vim 菜鸟教程
CentOS/Ubuntu 下载: 上海交大FTP, 清华开源软件镜像, 阿里巴巴开源镜像, 网易开源镜像
03.13,C 语言编程介绍 (示例代码)
参考资料: C 语言程序设计笔记, C Reference Card, 常用头文件
C Primer Plus (第 6 版), Prata 著, 2014, 姜佑译 2016, 涵盖 C11
零基础学 C 语言 (第 4 版), 康莉等著, 2019
网络资源: C 语言入门, C 语言教程, C reference, C 语言运算优先级, GCC docs online
编译器: https://gcc.gnu.orghttps://clang.llvm.org
03.20,C 语言编程介绍 (续)
应用举例: 矩阵乘积快速计算
课外阅读: Why GEMM is at the heart of deep learning
作业:用 C 语言编程实现矩阵乘积的各种不同算法, 并比较这些算法的计算效率.
03.27,OpenMP并行编程(一)
参考资料: Quick Card 4.0, Quick Card 5.0, Specification 4.0, Specification 5.0, OpenMP Examples 4.0.2
网络资源: OpenMP 主页, OpenMP Tutorial (Lawrence Livermore National Lab)
示例代码: OMP_hello.c, OMP_parallel_01.c, OMP_parallel_02.c
OMP_for.c, OMP_parallel_for.c, OMP_for_schedule.c
OMP_pi.c, OMP_pi_critical.c, OMP_pi_for.c
04.03,OpenMP并行编程(二)
示例代码: OMP_sections.c, OMP_critical_pi.c, OMP_atomic_01.c, OMP_atomic_02.c
04.10,OpenMP并行编程(三)
示例代码: OMP_lock.c, OMP_lock_pi.c, OMP_lock_atomic_critical.c
作业:实现 Jacobi 迭代算法的 OpenMP 并行计算.
04.17,矩阵-向量乘积并行算法, 矩阵-矩阵乘积并行算法
示例代码: C_MatVec_for.c, OMP_MatVec_for.c, OMP_MatVec_row.c
OMP_MatMul_for.c, OMP_MatMul_row.c
04.24,线性方程组直接法并行计算
示例代码: C_LU.c
作业:实现部分选主元 LU 分解的串行算法和 OpenMP 并行算法.
05.01,五一放假
05.08,消息传递编程接口 MPI:(一)编程基础
参考资料: MPI 3.1 Report (2015), MPI 4.0 Report (2021), 被替换的 MPI 旧函数 (2021)
网络资源: MPI-Forum, mpitutorial
MPI 实现: MPICH, OpenMPI
示例代码: MPI_hello.c, MPI_pi.c
MPI_Sendrecv_01.c, MPI_Sendrecv_02.c, MPI_Sendrecv_03.c, MPI_Sendrecv_04.c
05.15,消息传递编程接口 MPI:(二)消息传递
示例代码: MPI_pi_reduce.c
作业:使用 reduce 计算 pi 的值,连续分配计算小区间.
05.22/29,基于 MPI 的矩阵向量乘积, 基于 MPI 的矩阵矩阵乘积
示例代码: MPI_matvec.c, MPI_matvec_v.c, MPI_matvec_swap.c
MPI_matmul.c, MPI_matmul_swap.c
06.05,消息传递编程接口 MPI:(三)MPI 数据类型
消息传递编程接口 MPI:(四)进程与通信器操作
基于 MPI 的 LU 分解
06.12,基于 MPI 的二维 Poisson 方程求解
示例代码: jacobi.c, MPI_jacobi.c
参考资料:
Pacheco 著,邓倩妮等译,并行程序设计导论(An Introduction to Parallel Programming),机械工业出版社,2012
李晓梅等著,数值并行算法与软件,科学出版社,2014
陈国良, 《并行计算: 结构、算法与编程》第二版, 高等教育出版社, 2003
陈国良, 安虹等,《并行算法实践》, 高等教育出版社, 2004.
J. Dongarra等著, 莫则尧等译, 《并行计算综论》, 电子工业出版社, 2005(英文版2003)
Introduction To Parallel Computing (中文翻译)
OpenMP/MPI
M. Quinn著, 陈文光等译, 《MPI与OpenMP并行程序设计(C语言版)》, 清华大学出版社, 2004
秋明等著, OpenMP编译原理及实现技术, 清华大学出版社, 2012.
张武生等, 《MPI并行程序设计实例教程》, 清华大学出版社, 2009.
M. Snir, et al, 《MPI: The Complete Reference》, 1996, 2nd 2001.
W. Gropp, et al, 《MPI: The Complete Reference, Vol.2, MPI-2 Extensions》, 1998.
W. Gropp, et al, 《Using MPI: Portable Parallel Programming With the Message-passing Interface》, 2nd, 1999.
MPI Turorial
MPI2 介绍(中文)
Fortran
S.J. Chapman 著, 《Fortran 95/2003程序设计》(第3版), 中国电力出版社, 2009.
I. Chivers, J. Sleightholme, Introduction to Programming with Fortran, 2nd, 2012
(中译本, Fortran权威指南, 第一版, 2009)
GPU
J. Sander 等著, 《GPU高性能编程CUDA实战》, 机械工业出版社, 2012.
R. Farber 著, 《高性能CUDA应用设计与开发:方法与最佳实践》, 机械工业出版社, 2013.
A. Munshi 等著, 《OpenCL编程指南》, 机械工业出版社, 2012.
并行程序编程实现:
MPI: MPI Forum, MPICH, Open MPI (原 LAM)
MVAPICH -- MPI over InfiniBand and iWARP
PVM - Parallel Virtual Machine
OpenMP 一个共享存储并行系统上的应用编程接口
HPF - High Performance Fortran
中科院超级计算中心 (超级计算环境基础并行软件平台建设与应用)
Top 500 supercomputer (浮点运算性能)
Graph 500 supercomputer (在数据密集型应用上的性能)
Netlib (国内镜像) Collection of Mathematical Software, Papers and Database
PETSc: Portable, Extensible Toolkit for Scientific Computation
Last modified: Sep. 1, 2019

标签:Computing,编程,示例,MPI,High,并行计算,OMP,OpenMP
From: https://www.cnblogs.com/abaelhe/p/17914403.html

相关文章

  • RefineNet: Multi-path Refinement Networks for High-Resolution Semantic Segmentat
    RefineNet:Multi-pathRefinementNetworksforHigh-ResolutionSemanticSegmentation*Authors:[[GuoshengLin]],[[AntonMilan]],[[ChunhuaShen]],[[IanReid]]DOI:10.1109/CVPR.2017.549Locallibrary初读印象comment::(RefineNet)一种多路径的用于高分......
  • A Deformable Attention Network for High-Resolution Remote Sensing Images Semanti
    ADeformableAttentionNetworkforHigh-ResolutionRemoteSensingImagesSemanticSegmentation*Authors:[[RenxiangZuo]],[[GuangyunZhang]],[[RongtingZhang]],[[XiupingJia]]DOI:10.1109/TGRS.2021.3119537初读印象comment::(MDANet)提出了可变形注意力,结......
  • HighCharts 以轴标签为标签+蓝色圆圈跟随鼠标移动
    需求:画一个蓝色圆圈跟随鼠标移动,点击图表并保存这个点,点的右侧有以轴标签为标签的标签分析:调用load事件,使用renderer画个圆圈跟随鼠标,点击图标保存点用click事件,在click事件里使用renderer画一个圆和标签,标签以轴为单位解决:源代码:示例:HighCharts以轴标签为标签及蓝色圆圈跟随鼠......
  • Ansor:Generating High-Performance Tensor Program for Deep Learning
    Ansor:GeneratingHigh-PerformanceTensorProgramforDeepLearningAbstract高性能的张量程序对于保证深度神经网络的高效执行十分关键,但是在不同硬件平台上获取高性能的张量程序并不容易。近年的研究中,深度学习系统依赖硬件供应商提供的算子库,或者多种搜索策略来获得高性能的......
  • Highcharts 用SVGRenderer方法点击鼠标移动光标​
    需求演示如何使用SVGRenderer方法来实现点击鼠标移动光标,并解释说明属性功能。分析使用SVGRenderer方法来实现点击鼠标移动光标,可以按照以下步骤进行操作:创建SVGRenderer实例:首先,你需要创建一个SVGRenderer实例,用于渲染SVG元素和操作SVG属性。设置SVG元素属性:使用SVGRenderer的方法......
  • 【愚公系列】2023年12月 通用职责分配原则(四)-高内聚原则(High Cohesion Principle)
    ......
  • 智能计算与图形图像处理Intelligent Computing and Graphics and Image Processing
      智能算法IntelligenceAlgorithms图形图像处理Graphics&ImageProcessing机器视觉machinevision计算机视觉computervision 计算机视觉(computervision),用计算机来模拟人的视觉机理获取和处理信息的能力。就是是指用摄影机和电脑代替人眼对......
  • High-Efficiency Lossy Image Coding Through Adaptive Neighborhood Information Agg
    目录简介创新点内容EntropyCodingUsingMultistageContextModel模型结构残差邻域注意力块ResidualNeighborhoodAttentionBlockRNAB激活函数高斯误差线性单元激活函数GELU并行解码简介创新点IntegratedConvolutionandSelf-Attention(ICSA)unit提出集成卷积和自......
  • Highcharts 用SVGRenderer方法使柱状图连接列边​
    需求在Highcharts中,可以使用SVGRenderer方法来创建路径连接柱状图的列边,并根据具体的数据和需求进行适当的调整和扩展。分析要使用Highcharts的SVGRenderer方法来绘制柱状图并连接列边,可以按照以下步骤进行操作:创建柱状图:使用Highcharts的 chart 方法创建一个柱状图,并......
  • 2020CVPR_High-Resolution Image Synthesis with Latent Diffusion Models
    1.AutoEncoderAutoEncoder(自编码器)是一种无监督学习的神经网络模型,用于学习有效的数据表示。它的目标是将输入数据编码成一种潜在的、紧凑的表示形式,然后从这个表示中重构原始输入。自编码器由两部分组成:编码器(Encoder)和解码器(Decoder)。编码器(Encoder):将输入数据映射到潜在表示空......