并行计算概述

本文介绍了并行计算的三种形式:并发、并行和分布式计算的定义和区别,强调了并行计算与分布式计算的相似性和界限模糊性。接着探讨如何编写并行程序,包括任务并行和数据并行两种方法,以及共享内存和分布式内存系统。提到了C语言的三个函数库:MPI、POSIX线程和OpenMP,分别用于分布式内存和共享内存系统的并行编程,比较了它们的特点和使用场景,并指出混合系统编程中MPI+OpenMP的应用。
摘要由CSDN通过智能技术生成

一 并行计算概述:

(1)并发、并行、分布式之间的差别(尚无统一意见,比较认同的如下):

*并发计算中,一个程序的多个任务会在同一时段内可以同时执行。

*并行计算中,一个程序通过多个任务紧密协作来解决某个问题。

*分布式计算中,一个程序需要和其它程序协作来解决某个问题。

*并行计算和分布式计算都是并发的,某些程序如多任务操作系统也是并发的,因为即使它运行在单核机器上,多个任务都能在同一个时间里同时执行。

*并行计算和分布式计算之间没有一条明确的分界线。并行程序往往同时在多个核上执行多个任务,这些核在物理上紧密靠近或者通过高速网络相互连接。分布式程序的任务是在多个计算机上执行,这些计算机之间相隔较远并且任务是由独立创建的程序来完成的。


二 怎么编写并行程序?

(1)基本思想:都是将要完成的任务分配给各个核。

1.两种广泛采用的方法:任务并行和数据并行。

*任务并行:将待解决问题所需要执行的各个任务分配到各个核上执行。

*数据并行:将待解决问题所需要处理的数据分配给各个核,每个核在分配到的数据集上执行大致相似的操作。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值