2、并行计算基础与架构解析

并行计算基础与架构解析

1 并行编程基础概念

1.1 并行程序设计步骤

并行编程的首要步骤是为给定的应用问题设计并行算法或程序。这一过程始于将应用程序的计算分解为多个部分,即任务,这些任务可以在并行硬件的核心或处理器上并行计算。

1.2 任务相关概念

  • 任务粒度 :任务的大小(例如指令数量)称为粒度,通常可以选择不同大小的任务。
  • 潜在并行性 :它是应用算法的固有属性,影响着应用程序如何被拆分为任务。

1.3 任务分配与调度

  • 调度 :将任务分配给进程或线程,并确定任务执行的顺序。调度可以在源代码中手动完成,也可以由编程环境在编译时或运行时动态完成。
  • 映射 :将进程或线程分配到物理计算单元(处理器或核心),通常由运行时系统完成,但程序员有时也可以施加影响。

1.4 任务依赖与同步

  • 任务依赖 :应用算法中的任务可以是独立的,也可以相互依赖,从而导致任务的数据或控制依赖。这些依赖关系是调度的约束条件。
  • 同步与协调 :并行程序需要线程和进程的同步与协调,以确保正确执行。同步和协调方法与进程或线程之间的信息交换方式密切相关,而这又取决于硬件的内存组织。

1.5 内存组织分类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值