200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > Nvidia CUDA初级教程2 并行程序设计概述

Nvidia CUDA初级教程2 并行程序设计概述

时间:2021-03-11 17:34:52

相关推荐

Nvidia CUDA初级教程2 并行程序设计概述

Nvidia CUDA初级教程2 并行程序设计概述

视频:/video/BV1kx411m7Fk?p=3

讲师:周斌

本节内容:

为什么需要?怎么做?一些技术和概念

串并行计算模式

串行计算模式

常规软件时串行的 设计运行于一个中央处理器(CPU)上通过离散的指令序列完成一个问题的解决一条一条指令地执行同时只有一条指令在执行

逻辑上定义的串行计算是这样,实际上前面我们也介绍过,在CPU中也有很多的指令级并行优化。

并行计算模式

并行计算是同时应用多个计算资源解决一个计算问题 涉及多个计算资源或处理器问题被分解为多个离散的部分,可以同时处理(并行)每个部分可以由一些列指令完成 每个部分的指令在不同的处理器上执行

并行计算——概念和名词简介

Flynn矩阵

SISD (Single Instruction Single Data)SIMD (Single Instruction Multiple Data)MISDMIMD

常见名词

Task 任务Parallel Task 并行任务Serial Execution 串行执行Parallel Execution 并行执行Shared Memory 共享存储Distributed Memory 分布式存储Communication 通信Synchronization 同步Granularity 粒度Observed Speedup 加速比Parallel Overhead 并行开销Scalability 可扩展性

存储器架构

Shared Memory

Distributed Memeory

Hybird Distributed-Shared Memory

存储系统的编址

并行编程模型

共享存储模型线程模型消息传递模型数据并行模型

具体实例

OpenMPMPISingle Program Multiple Data SPMDMultiple Program Multiple Data MPMD

设计并行处理程序和系统

自动和手动并行

理解问题和程序

理解问题、程序、算法,是我们设计并行处理系统的基础

分块分割

根据具体的任务,数据分块、任务分割

通信

broadcast、scatter、gather、reduction

同步

barrer、lock/semaphore、synchronous communica

数据依赖

负载均衡

粒度

I/O

成本

性能分析和优化

加速比:

Amdahl’s Law speedupmax=11−Pspeedup_{max}=\frac{1}{1-P}speedupmax​=1−P1​ speedup=1PN+Sspeedup=\frac{1}{\frac{P}{N}+S}speedup=NP​+S1​

PPP:并行部分,SSS:串行部分

程序可能的最高加速比取决于可以被并行化的部分(的占比)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。