【计算系统】5分钟了解超算,高性能计算,并行计算,分布式计算,网格计算,集群计算以及云计算的区别

news2024/11/25 23:12:54

5分钟了解超算,高性能计算,并行计算,分布式计算,网格计算,集群计算以及云计算的区别

  • 1. 超算
  • 2. 高性能计算
  • 3. 并行计算
  • 4. 分布式计算
  • 5. 网格计算
  • 6. 集群计算
  • 7. 云计算
  • 小结
  • 相关资料

1. 超算

超级计算机(Supercomputer)是一种计算力极强的计算机,学术界通常称这一领域为高性能计算(High-Performance Computing)。超级计算机主要为最顶尖的科学研究服务,包括核聚变模拟、石油勘探、量子力学、气候模拟、癌症研究、基因组学、分子动力学、飞机和航天器空气动力学、量化金融、计量经济和当前火热的各类民用人工智能。简而言之,超算(超级计算机)主要用于处理复杂的科学计算、模拟和大规模数据处理等任务,具备出色的计算性能和处理能力

从实现上来看,超级计算机是一种高性能计算集群,集群有众多计算节点,通常由大量的处理器、高速互联网络和大容量存储器组成。集群由众多计算节点组成,由集群管理系统通过高速IB网或专用网络将多个计算机节点连接在一起,统一调度管理,从而实现强大的计算功能。

当前,多数高性能计算系统都是通过加持GPU来实现超高性能的,也就是常说的GPU运算,不同于CPU,GPU一般集成了上千个核心于一体,具备普通CPU无法比拟的浮点计算性能,因此非常适用于图像处理、虚拟现实和计算机仿真等一类科学领域的应用,近几年发展火热的人工智能、机器学习等技术应用背后也是依靠GPU运算在做支撑。

从实际使用上看,并不是将成千上万个CPU和GPU都拿过来跑一个任务,也不是某一个人独占,而是按需所取,使用一种叫做调度器的软件来分配计算资源。超级计算机上的CPU和GPU等计算资源更像是城市中的共享单车,服务方先提供好一批计算资源放置在那里,使用方如有需求,向调度器申请,如有闲置的资源则分配给需求方。超算中心提供一个共享的资源池,每个用户每次占用部分资源,多个用户在调度器的调度下按照一定的规则排队。当然,这个资源池越大,每个用户能够获得的资源就会越多,排队等待的时间也就越短,加上一些合理的编程优化,每个计算任务的耗时就会越短,以此加速科研进程。


补充1:CPU与GPU的特点与优势

  • 首先,CPU在处理逻辑和控制流方面表现出色,而GPU在并行计算和数据密集型任务方面具备强大的计算能力。将CPU和GPU融合在一起,可以充分发挥它们的优势,提供更全面、更强大的计算能力。
  • 其次,CPU和GPU的融合可以减少数据传输和通信的开销。通常情况下,GPU作为加速器与CPU之间需要频繁进行数据传输,这会导致较大的延迟和能耗。通过将CPU和GPU融合在一起,可以实现更紧密的协作和数据共享,减少数据传输的需求,提高计算效率和性能。
  • 第三,融合CPU和GPU还可以简化系统架构和编程模型。当前,使用GPU进行加速计算需要使用专门的编程模型(如CUDA或OpenCL),并且需要管理CPU和GPU之间的数据传输和同步。然而,将CPU和GPU融合在一起,可以使用统一的编程模型,简化编程和系统管理的复杂性。
  • 最后,融合CPU和GPU还可以降低系统成本和功耗。独立的CPU和GPU需要占用额外的硬件资源和能源消耗。而将它们融合在一起,可以节省硬件成本、减少系统功耗,提高能源效率。

补充2:超算vs云计算
超算与云计算有些相似,但不同的地方在于:

  • 云计算一般将一台物理机上安装多台虚拟机,用户在一个虚拟机资源池上申请资源;
  • 超算上的程序一般直接跑在物理机上。

虚拟机会导致性能的损耗,其优点在于将资源划分的粒度更细,虚拟机资源能够的到充分利用物理机的优势在于硬件性能可以100%提供给使用者,缺点是如果使用不当,会造成硬件资源的浪费

近年来,随着虚拟化技术的成熟,虚拟机的损耗越来越小,超算也在往虚拟化方向发展,超算和云计算之间界线似乎不那么明显。


2. 高性能计算

高性能计算(High Performance Computing,HPC)是指利用超级计算机或高性能计算机来解决需要大量计算资源和高速数据处理的问题。高性能计算侧重于提供强大的计算能力和高效的数据处理能力,通常运行复杂的科学模型、大规模的数值模拟和数据分析等任务。

  • 高性能计算(High Performance Computing,HPC)是一种计算领域的技术和方法,旨在利用超级计算机或高性能计算机解决需要大量计算资源和高速数据处理的复杂问题。
  • 高性能计算的主要目标是提供强大的计算能力和高效的数据处理能力,以应对科学、工程、商业和其他领域中日益增长的计算需求。它通常用于处理大规模的、计算密集型的任务,涉及复杂的模拟、建模、仿真、优化和数据分析等应用。

高性能计算通常依赖的计算机系统具有以下特点:

  1. 高度并行化:高性能计算系统能够同时执行多个计算任务,利用并行处理来提高计算速度和效率。它可以包括多个处理器、多个计算节点、多核处理器、加速器(如GPU)等,以支持并行计算。
  2. 大规模存储器:高性能计算通常需要处理大规模的数据集。因此,它需要具备大容量和高带宽的存储系统,以存储和访问海量数据。
  3. 高速互联网络:高性能计算系统中的计算节点需要通过高速互联网络进行通信和数据交换。这样可以实现节点之间的数据共享、协作和任务调度。
  4. 高性能软件和编程模型:高性能计算需要使用高效的算法和优化技术来充分发挥硬件的计算能力。并行编程模型如MPI(Message Passing Interface)和OpenMP(Open Multi-Processing)等被广泛用于高性能计算应用的开发和优化。

3. 并行计算

并行计算(Parallel Computing)是指同时执行多个计算任务,以便更快地完成工作。可分为时间并行空间并行。时间并行即利用多条流水线同时作业,空间并行是指使用多个处理器执行并发计算,以降低解决复杂问题所需要的时间。

并行计算过程涉及将一个大型计算问题分成多个小问题,然后在多个处理单元(通常是 CPU 核心或多个计算机)上同时处理这些小问题。这种方式可以显著提高计算速度和效率,尤其是在需要处理大规模数据或复杂数学模型的情况下。并行计算可应用于各种规模的计算系统,包括超级计算机、多核处理器、GPU等。通常,我们可以认为并行计算是高性能计算的学术上的叫法

为执行并行计算,计算资源应包括一台配有多处理机(并行处理)的计算机、一个与网络相连的计算机专有编号,或者两者结合使用。并行计算主要目的在于两个方面: 
(1) 加速求解问题的速度。
(2) 提高求解问题的规模。
并行计算院里
为提高计算效率,并行计算处理问题一般分为以下三步: 
(1)将工作分离成离散独立部分,有助于同时解决;  
(2)同时并及时地执行多个程序指令;   
(3)将处理完的结果返回主机经一定处理后显示输出。

并行计算需满足的基本条件

  1. 并行计算机。并行计算机至少包含两台或两台以上处理机,这此处理机通过互联网络相互连接,相互通信。
  2. 应用问题必须具有并行度。也就是说,应用可以分解为多个子任务,这些子任务可以并行地执行。将一个应用分解为多个子任务的过程,称为并行算法的设计。
  3. 并行编程。在并行计算机提供的并行编程环境上,具体实现并行算法,编制并行程序并运行该程序,从而达到并行求解应用问题的目的。

补充3:串行计算方式vs并行计算方式
串行计算vs并行计算
从上图可以看出,串行计算必须按步骤一步一步计算才能出来最终结果。而并行计算则要将问题分成N多个子任务,每个子任务并行执行计算。而每个子任务是非独立的,每个子任务的计算结果决定最终的结果。这个和分布式计算不同。


4. 分布式计算

分布式计算(Distributed Computing)是指将计算任务分布到多台计算机或计算节点上进行并行计算的方法。分布式计算系统通常由多个独立的计算节点组成,通过网络进行通信和协作。分布式计算可通过利用多台计算机的计算资源来解决大规模的计算问题,提高计算效率和吞吐量。


补充4:并行计算与分布式计算的区别
并行计算更多的是为了解决高性能计算的问题,更多的强调计算性能;分布式计算一般是为了解决任务量大的计算问题。并行计算是在同一台计算机上同时处理多个任务,而分布式计算是将任务分发到多个计算机或节点上。

  • 并行计算一般用于解决需要大量计算的问题,如生命科学研究中的分子动力学分析、地质勘探中的地震建模、成像、转位等,这些计算任务数量不多,但每个任务都需耗费极强的计算能力。
  • 分布式计算一般应用于超大任务量的场景,如当今非常流行的hadoop分布式系统就非常适合用来处理海量数据,淘宝的分布式系统TFS(Taobao File System)每天都可以处理千万乃至上亿次的订单等。

并行计算与分布式计算


5. 网格计算

网格计算是一种计算基础设施,它结合了分布在不同地理位置的计算机资源以实现共同目标。多台计算机上所有未使用的资源都汇集在一起,可供单个任务使用。组织使用网格计算来执行大型任务或解决在单台计算机上难以完成的复杂问题。

例如,气象学家使用网格计算进行天气建模。天气建模是一种计算密集型问题,需要执行复杂的数据管理和分析。在单台计算机上处理大量天气数据不仅缓慢,而且相当耗时。为此,气象学家在地理上分散的网格计算基础设施上运行分析并结合结果。
网格计算
从效率上看,使用网格计算,可以将一个庞大而复杂的任务分解为多个子任务。多台计算机可以同时处理子任务,这使网格计算成为一种高效的计算解决方案。
从成本来看,网格计算适用于现有硬件,这意味着可以重复使用现有计算机。可以在访问多余的计算资源的同时节省成本。还可以经济高效地访问云中的资源。
灵活性方面,网格计算不限于特定的建筑物或位置。可以建立一个跨越多个区域的网格计算网络。这使得不同国家的研究人员可以使用相同的超级计算能力进行协作。

网格计算中需要有哪些组件?

  1. 节点。网格计算网络上的计算机或服务器称为节点。每个节点向网格网络提供未使用的计算资源,例如 CPU、内存和存储。同时,还可以使用节点执行其他不相关的任务。网格计算中的节点数量没有限制。存在三种主要类型的节点:控制节点提供者节点用户节点
  2. 网格中间件。网格中间件是一种专门的软件应用程序,它将网格操作中的计算资源与高级应用程序连接起来。例如,它处理用户对网格计算系统的额外处理能力的请求。 它控制用户对可用资源的共享,以防止网格计算机不堪重负。网格中间件还提供防止网格计算中出现资源滥用的安全性。
  3. 网格计算架构。网格体系结构表示网格计算机的内部结构。以下层广泛存在于网格节点中:
    • 顶层由高级应用程序组成,例如执行预测建模的应用程序。
    • 第二层,也称为中间件,管理和分配应用程序请求的资源。
    • 第三层由可用的计算机资源组成,例如 CPU、内存和存储。
    • 底层允许计算机连接到网格计算网络。

网格计算有哪些类型?

  • 计算网络。计算网格由高性能计算机组成。它使研究人员可以使用计算机的综合计算能力。研究人员使用计算网格计算来执行资源密集型任务,例如数学模拟。
  • 拾遗网络。虽然与计算网格类似,但 CPU 拾遗网格包含许多常规计算机。拾遗一词描述了在常规计算机网络中搜索可用计算资源的过程。当其他网络用户访问计算机执行与网格无关的任务时,网格软件会在这些节点空闲时使用它们。拾遗网格也称为 CPU 拾遗或循环拾遗。
  • 数据网络。数据网格是连接多台计算机以提供大数据存储容量的网格计算网络。可以像在本地计算机上一样访问存储的数据,而不必担心数据在网格上的物理位置。

补充5:分布式计算与网格计算的比较
分布式计算用于在任一时间实现单一目标。相比之下,网格计算并没有协同性,而是在其网络上为多个相关的子任务分配资源。一个网格计算网络可能包含几个分布式计算系统。


6. 集群计算

集群计算描述了由同构计算机组成的网络系统。同构计算机具有相同的硬件和软件。可以将它们连接到高速本地网络以创建运行类似任务的计算机集群。中央服务器可以控制和协调机器


补充6:集群计算与网格计算的比较
集群计算具有稳定和特定的硬件、任务和控制结构,而网格计算则在资源共享方面具有灵活性。网格网络上的计算机独立工作,没有义务共享资源。它们有一个资源管理器,在运行时共享未使用的资源。


7. 云计算

云计算(Cloud Computing)是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,或者说是这些计算机科学概念的商业实现

云计算的基本原理是,通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将更与互联网相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。

小结

超算是一种大型高性能计算系统,高性能计算是解决大规模问题的计算方式,并行计算和分布式计算是实现高性能计算的两种方式。

相关资料

  1. 什么是网格计算?
  2. 分布式计算、网格计算和云计算
  3. 《并行与分布式处理》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1161187.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android拖放startDragAndDrop拖拽onDrawShadow静态添加xml布局View,Kotlin(4)

Android拖放startDragAndDrop拖拽onDrawShadow静态添加xml布局View,Kotlin(4) import android.content.ClipData import android.graphics.Canvas import android.graphics.Point import android.os.Bundle import android.util.Log import a…

MATLAB 支持向量机(SVM)

MATLAB 支持向量机(SVM)详细解释(含代码) 基础线性可分最大间隔超平面 SVM分类基本代码和工具二分类线性非线性 多分类详细解释 基础 线性可分 简单来讲就是如何将两个数据用点、直线、平面分开。。。。。 二维空间中&#xff…

ios原生分享

什么是 ios 系统的原生分享呢,如下图所示 具体使用系统UIActivityViewController,完整代码如下: -(void)shareAny:(NSString *)text url:(NSString *)_url imagePath:(NSString *)_imagePath {NSLog("shareAny, text:%, url:%, imagePa…

Security ❀ DNS协议常见DOS攻击详解

文章目录 1. DNS协议基础概述2. DNS报文详解2.1. DNS Request 请求包2.2. DNS Reply 响应包 3. DNS Request Flood3.1. 攻击原理3.2. 防护方法3.2.1. TC源认证3.2.2. 被动防御3.2.3. CNAME防护模式3.2.4. *CANME类型解析过程** 4. DNS Reply Flood4.1. 攻击原理4.2. 防护方法 5…

【44.全排列Ⅱ】

目录 一、题目描述二、算法原理三、代码实现 一、题目描述 二、算法原理 三、代码实现 class Solution { public:vector<vector<int>> ret;vector<int> path;vector<bool> check;vector<vector<int>> permuteUnique(vector<int>&am…

C语言--温度转化(把华氏度转换为摄氏度)

一.问题描述: 有人用温度计测量出用华氏法表示的温度,今要求把它转换为以摄氏法表示的温度,转换公式如下: 这个代码是C语言的入门代码&#xff0c;难点在于5/9在程序中如何写出。在计算机中5/9等于1。 /符号&#xff1a;整除问题(整数/整数 结果是丢弃小数的整数) 5/2 2。那…

好看的个人导航页源码

这款导航页源码 非常合适个人使用 简洁漂亮 放点自己经常用到的网站 还支持别人自助添加快捷书签 源码获取&#xff1a;https://www.qqmu.com/930.html

UE5——网络——属性复制

当属性被注册进行复制后&#xff0c;您将无法再取消注册&#xff08;涉及到生存期这一话题&#xff09;。之所以会这样&#xff0c;是因为我们要预制尽可能多的信息&#xff0c;以便针对同一组属性将某一工作分担给多个连接。这样可以节省大量的计算时间。 virtual void GetLif…

java入坑之运行管理

一、概述 1.1Java开发和运行过程 编写阶段&#xff1a;采用各种编辑工具&#xff0c;编写.java文件编译阶段&#xff1a;采用javac.exe对java文件编译&#xff0c;产生.class文件运行阶段&#xff1a;采用java.exe加载.class文件运行 详细过程 1.2相关概念 javaOS管理 JavaOS是…

全新二开游戏支付通道/话费/电网、紫水晶带云端源码

源码修复可用&#xff0c;YY业务都可用 本店所售程序只供测试研究&#xff0c;不得使用于非法用途&#xff0c;不得违反国家法律&#xff0c;不得用于进行违法行为&#xff0c;否则后果自负&#xff01;购买以后用作他用附带的一切法律责任后果都由购买者承担于本店无任何关…

Linux开机、重启、关机和用户登录注销

1.【关机】 shutdown shutdown now 表示立即关机 shutdown -h now 表示立即关机 shutdown -h 1 表示1分钟后关机 halt 用来关闭正在运行的Linux操作系统 2.【重启】 shutdown -r now 表示立即重启 reboot 重启系统 sync …

蜜罐系统HFish的部署与功能实测

1. 引入 根据参考1对蜜罐的定义&#xff1a; 蜜罐&#xff08;Honeypot&#xff09;是一个计算机科学领域的术语&#xff0c;指用于检测或防御未经授权的行为或黑客攻击的陷阱。其名称来源于其工作原理类似于用来诱捕昆虫的蜜罐。蜜罐通常伪装成看似有利用价值的网路、资料、…

JVM修炼印记之初识

文章目录 JVM认识JVM的功能常见JVMHotSpot的发展历程 JVM认识 Java虚拟机&#xff08;Java Virtual Machine&#xff0c;JVM&#xff09;是一个用于执行Java字节码的虚拟计算机。它是Java语言的核心&#xff0c;可以在不同的操作系统和硬件平台上运行Java程序。 JVM负责将Java…

[架构之路-252/创业之路-83]:目标系统 - 纵向分层 - 企业信息化的呈现形态:常见企业信息化软件系统 - 企业应用信息系统集成

目录 第一章 什么是企业应用信息系统集成What 1.1 简介 1.2 架构 二、为什么需要企业应用信息系统集成Why 三、如何实现企业应用信息系统集成 3.1 步骤 3.2 企业应用集成的层次 3.3 业务流程重组 第一章 什么是企业应用信息系统集成What 1.1 简介 企业应用信息系统集…

力扣刷题 day62:11-1

1.反转字符串中的元音字母 给你一个字符串 s &#xff0c;仅反转字符串中的所有元音字母&#xff0c;并返回结果字符串。 元音字母包括 a、e、i、o、u&#xff0c;且可能以大小写两种形式出现不止一次。 方法一&#xff1a;双指针 #方法一&#xff1a;双指针 def reverseV…

国际多语言出海商城源码/返佣产品自动匹配拼单商城源码

源码介绍&#xff1a; 国际多语言出海商城返佣产品自动匹配订单拼单商城源码&#xff0c;8国多语言出海拼单商城。此网站是很多巴西客户定制的原型&#xff0c;已投放运营符合当地本地化。 多语言商城返利返佣投资理财派单自带余额宝&#xff0c;采取全新支付端口&#xff0c…

Mac电脑怎么运行 Office 办公软件

虽然 Office 软件也有 Mac 版本的&#xff0c;但是有蛮多小伙伴用起来还是感觉不得劲&#xff0c;毕竟接触了太久的 Windows&#xff0c;所以想要使用 Windows 版本的 Office 软件。 今天就给大家介绍一下怎么在 Mac 电脑中运行 Windows 版本的办公软件&#xff0c;在这里就需…

回归预测 | Matlab实现WOA-CNN-SVM鲸鱼算法优化卷积神经网络-支持向量机的多输入单输出回归预测

回归预测 | Matlab实现WOA-CNN-SVM鲸鱼算法优化卷积神经网络-支持向量机的多输入单输出回归预测 目录 回归预测 | Matlab实现WOA-CNN-SVM鲸鱼算法优化卷积神经网络-支持向量机的多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.WOA-CNN-SVM鲸鱼算法…

解决VSCode使用SSH远程连接时无法指定用户名的问题

Windows 11自带OpenSSH客户端&#xff0c;和VSCode配合得很好&#xff0c;没有这个问题。 今天要说的是旧版本Windows 7/8/10系统遇到的问题。 PS: Windows 7可以运行的最后版本是VSCode 1.80.2 由于Windows 7/8/10没有自带的OpenSSH客户端&#xff0c;但可以调用MSYS环境下的…