概念区分:并行、分布式、集群、云、超算
并行计算(Parallel Computing)并行计算的主要目的是快速解决大型且复杂的计算问题。并行计算可以划分成时间并行和空间并行。时间并行即流水线技术,空间并行使用多个处理器执行并发计算,当前研究的主要是空间的并行问题。以程序和算法设计人员的角度看,并行计算又可分为数据并行和任务并行。数据并行把大的任务化解成若干个相同的子任务,处理起来比任务并行简单。空间上的并行导致两类并行...
并行计算(Parallel Computing)
并行计算的主要目的是快速解决大型且复杂的计算问题。
并行计算可以划分成时间并行和空间并行。时间并行即流水线技术,空间并行使用多个处理器执行并发计算,当前研究的主要是空间的并行问题。
以程序和算法设计人员的角度看,并行计算又可分为数据并行和任务并行。数据并行把大的任务化解成若干个相同的子任务,处理起来比任务并行简单。
空间上的并行导致两类并行机的产生,按照Michael Flynn(费林分类法)的说法分为单指令流多数据流(SIMD)和多指令流多数据流(MIMD),而常用的串行机也称为单指令流单数据流(SISD)。
MIMD类的机器又可分为常见的五类:并行向量处理机(PVP)、对称多处理机(SMP)、大规模并行处理机(MPP)、工作站机群(COW)、分布式共享存储处理机(DSM)。
分布式计算(Distributed Computing)
分布式计算,把需要进行大量计算的工程数据分区成小块,由多台计算机分别计算,在上传运算结果后,将结果统一合并得出数据结论。
目前常见的分布式计算项目通常使用世界各地上千万志愿者计算机的闲置计算能力,通过互联网进行数据传输。如分析计算蛋白质的内部结构和相关药物的Folding@home项目。
并行计算与分布式计算的区别
并行计算的任务包之间相互影响,要求每个的计算结果要绝对正确,而且在时间上要尽量做到同步。
而分布式的任务包互相之间有独立性,上一个任务包的结果未返回或者是结果处理错误,对下一个任务包的处理几乎没有什么影响。因此,分布式的实时性要求不高,而且允许存在计算错误(因为每个计算任务给好几个参与者计算,上传结果到服务器后要比较结果,然后对结果差异大的进行验证。
集群计算(Cluster Computing)
计算机集群将一组松散集成的计算机软件或硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接。
根据组成集群系统的计算机之间体系结构是否相同,集群可分为同构与异构两种。集群计算机按功能和结构可以分为:
高可用性集群(High-availability (HA) clusters)一般是指当集群中有某个节点失效的情况下,其上的任务会自动转移到其他正常的节点上。某节点进行离线维护再上线,也并不影响整个集群的运行。
负载均衡集群(Loadbalancing clusters),又称服务器群(Server Farm),一般通过一个或者多个前端负载均衡器,将工作负载分发到后端的一组服务器上。一般会同时具有高可用性与负载均衡的特点。
高性能计算集群(High-performance (HPC)clusters)主要用于科学计算,适合完成并行运算,在计算中各计算节点之间会发生大量数据通讯。
网格计算(Grid Computing)
组合与共享资源并确保系统安全,利用大量异构计算机的未用资源(CPU周期和磁盘存储),将其作为嵌入在分布式电信基础设施中的一个虚拟的计算机集群,为解决大规模的计算问题提供一个模型。
集群计算与网格计算的区别
网格与传统集群的主要差别是网格是连接一组相关并不信任的计算机,它的运作更像一个计算公共设施而不是一个独立的计算机。
网格本质上就是动态的,集群包含的处理器和资源的数量通常都是静态的。在网格上,资源则可以动态出现或从网格中删除。集群互连技术可以产生非常低的网络延时,而网格由于动态特性,可以提供很好的高可扩展性。很多网格都在自己管理的资源中采用了集群。
云计算(Cloud Computing)
云计算除了计算概念,还有运营服务等概念,应用分布式存储和分布式缓存、虚拟化等技术。主要面向社交网络、企业IT建设和信息化等领域,以数据密集型、I/O密集型应用为主。它是分布式计算、并行计算和网格计算的发展,或者说是这些概念的商业实现。
超算 (HPC)
超级计算机,主要面向科学计算、工程模拟等领域,大多属于计算密集型的应用。
超算与云计算的区别
超级计算机就好比是F1,而云就好比是公共汽车。F1可以非常快地把一个人带到目的地,而公共汽车擅长同时为多个乘客服务。云使用虚拟化技术提高CPU和IO利用率,而超级计算机生来就是为了跑满CPU的,使用虚拟化技术反而拖后腿。
更多推荐
所有评论(0)