当前位置: 代码迷 >> 综合 >> NVIDIA CUDA入门(3)并行计算
  详细解决方案

NVIDIA CUDA入门(3)并行计算

热度:113   发布时间:2023-11-18 01:49:00.0

任务

并行任务

串行任务

共享存储

分布式存储

通信

同步

粒度

加速比

并行开销

可扩展性

 

存储器架构:共享存储、分布式存储、吻合分布式存储。

并行程序的编程模型:共享存储模型、线程模型(启动多线程)、消息传递模型(MPI,彼此独立的存储单元上,通过消息传递)、数据并行模型(整个数据进行切分)

SPMD 单个程序多个数据 MPMD 多个程序多个数据

设计并行处理程序和系统

  • 自动和手动并行,简单模型可以,复杂不可以
  • 理解问题和程序
  • 分块分割,任务分配
  • 通信、同步
  • 数据依赖
  • 负载均衡,多个任务之间是否平衡
  • 粒度,每个人办多少砖
  • I/o
  • 成本,可用性的关键因素,性能付出的成本
  • 性能分析和优化

  Amdahl's Law程序可能的加速比取决于可以被并行化的部分

 P是可并行化的部分

如果没有课并行化的部分,P= 0.加速比为1。

如果有N个处理器并行处理

P= 并行部分,N = 处理器数码,S= 串行部分

并行化的可扩展性有极限,当P=0.5时,处理器增多,加速比最高为2