并行计算、分布式计算以及网格计算和云计算都是属于高性能计算(HPC)的范畴,主要目的在于对大数据的分析与处理,但它们却存在很多差异。我们需要了解两者的原理、特点和运用的场合,对云计算的了解大有裨益。
之所以将两种计算技术放在一起,是因为这两种计算具有共同的特点,都是运用并行来获得更高性能计算,把大任务分为N个小任务。但两者还是有区别的,关于两者的区别在后面有介绍。
1、并行计算概念
并行计算(Parallel Computing)又称平行计算是指一种能够让多条指令同时进行的计算模式,可分为时间并行和空间并行。时间并行即利用多条流水线同时作业,空间并行是指使用多个处理器执行并发计算,以降低解决复杂问题所需要的时间。
并行计算同时使用多种计算资源解决计算问题的过程。为执行并行计算,计算资源应包括一台配有多处理机(并行处理)的计算机、一个与网络相连的计算机专有编号,或者两者结合使用。并行计算主要目的在于两个方面:
-
(1) 加速求解问题的速度。
-
(2) 提高求解问题的规模。
2、并行计算的原理
并行计算能快速解决大型且复杂的计算问题。此外还能利用非本地资源,节约成本 ― 使用多个“廉价”计算资源取代大型计算机,同时克服单个计算机上存在的存储器限制。
为提高计算效率,并行计算处理问题一般分为以下三步:
从上图可以看出,串行计算必须按步骤一步一步计算才能出来最终结果。而并行计算则要将问题分成N多个子任务,每个子任务并行执行计算。而每个子任务是非独立的,每个子任务的计算结果决定最终的结果。这个和分布式计算不同。
3、并行计算需满足的基本条件
-
(1)并行计算机。并行计算机至少包含两台或两台以上处理机,这此处理机通过互联网络相互连接,相互通信。
-
(2)应用问题必须具有并行度。也就是说,应用可以分解为多个子任务,这些子任务可以并行地执行。将一个应用分解为多个子任务的过程,称为并行算法的设计。
-
(3)并行编程。在并行计算机提供的并行编程环境上,具体实现并行算法,编制并行程序并运行该程序,从而达到并行求解应用问题的目的。
分布式计算
1、分布式计算概念
分布式计算是一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式计算和集中式计算相对应的概念。
2、分布式计算的优点
分布式计算是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。
分布式计算比起其它算法具有以下几个优点:
3、分布式计算原理
Hadoop计算框架是出现比较早的一个分布式计算框架,由Apache基金会所开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。
并行计算与分布式计算区别与联系
并行计算和分布式计算既有区别也有联系。从解决对象上看,两者都是大任务化为小任务,这是他们共同之处。 具体区别和联系如下表所示:
并行计算、分布式计算以及网格计算和云计算都是属于高性能计算(HPC)的范畴,主要目的在于对大数据的分析与处理,但它们却存在很多差异。我们需要了解两者的原理、特点和运用的场合,对云计算的了解大有裨益。(来源
“
Tsarpro智能科技”)。
推荐阅读:
温馨提示:
请搜索
“ICT_Architect”
或
“扫一扫”
二维码关注公众号,点击
原文链接
获取更多
电子书
详情
。
求知若渴, 虚心若愚
(本文为新竹清华大学《
并行计算
与并行编程》课程笔记 )
关于
分布式
系统和
并行计算
,其实没有必要非得区分个一二来。当然它们各有侧重,
分布式
系统是基于网络的一种软件,而
并行计算
更像是一种概念,这个概念可以在硬件中出现,也可以在软件中出现。再比如
分布式
系统更偏向于管理一组计算机,而
并行计算
关注的是每一个计算节点即一个处理器、一个core。因此,一个CPU或GPU芯片也是
并行计算
施展的领域。
在这门课程里,
并行计算
其实是在硬件、系统、编程模型和编程语言四个不同的层次上讨论的。
它们的应用场景也很类似:如
并行计算
、
分布式计算
以及网格计算和云计算都是属于高性能计算(HPC)的范畴,主要目的在于对大数据的分析与处理,但它们却存在很多差异。我们需要了解两者的
原理
、特点和运用的场合,对云计算的了解大有裨益。之所以将两种计算技术放在一起,是因为这两种计算具有共同的特点,都是运用并行来获得更高性能计算,把大任务分为N个小任务。但两者还是有
区别
的,关于两者的
区别
在后面有介绍。
1、...
分布式计算
是指将一个大型计算任务分解成多个子任务,并通过网络连接的多个计算节点来并行处理这些子任务的过程。各类
分布式计算
可以根据实现方式和应用场景的不同进行分类。
1.
分布式计算
框架:如MapReduce、Spark等,这些框架提供了一套
分布式计算
的编程模型和基础设施,为开发者提供了统一的
分布式计算
平台。
2.
分布式
数据库:如Hadoop HDFS、Cassandra等,这些数据库通过数据分片和副本机制实现了数据的
分布式
存储和访问。
3.
分布式计算
平台:如Amazon EC2、Microsoft Azure等,这些平台提供了云计算环境和资源管理服务,用户可以在其中部署自己的
分布式计算
应用。
各类
分布式计算
之间的
联系
在于它们都是为了解决大规模计算和数据处理问题而设计的,并且都具备
分布式计算
的特点,即将计算任务分解成多个子任务进行并行处理。同时,这些
分布式计算
技术也都需要依赖网络连接的多个计算节点来协同工作。
各类
分布式计算
之间的
区别
在于它们的实现方式和应用场景的不同。例如,
分布式计算
框架主要用于批量数据处理和分析,
分布式
数据库主要用于数据存储和访问,而
分布式计算
平台则主要用于云计算环境下的资源管理和
分布式
应用部署。
shing1098:
谈谈CMDB,ITIL和ITSM概念和简史
Zoho_Manager:
针对静默数据错误,如何采用DIX和DIF保证数据一致性?
weixin_42995907:
SCM和NVM是什么鬼,与NVMe是什么关系?
Strive_wen:
必看: 原来PCIe技术原理这么简单!
weixin_41852443: