当前位置: 首页 > news >正文

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

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. 《并行与分布式处理》

相关文章:

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

5分钟了解超算,高性能计算,并行计算,分布式计算,网格计算,集群计算以及云计算的区别 1. 超算2. 高性能计算3. 并行计算4. 分布式计算5. 网格计算6. 集群计算7. 云计算小结相关资料 1. 超算 超级计算机(Sup…...

6大场景,玩转ChatGPT!

文章目录 一、故事叙述提问举例 二、产品描述提问举例 三、报告撰写提问举例 四、邮件和信件撰写提问举例 五、新间稿和公告撰写提问举例 六、学术论文和专业文章撰写提问举例 本文是在GPT3.5版本下演示的 我们知道AI技术不仅能够自动生成文章和内容,还可以根据我们…...

工业废水再利用在哪些地方

工业废水再利用主要应用于以下几个方面: 工业生产:回收废水中含有的各种有价值的资源,如水、盐、油、悬浮物等,用于生产过程。预处理和深度处理:为满足工业生产过程对水质的要求,对废水进行预处理和深度处…...

Spring Cloud的ElasticSearch的进阶学习

目录 数据聚合 Bucket示例 Metric示例 RestAPI实现聚合 自动补全 使用拼音分词 自定义分词器 实现自动补全 RestAPI实现自动补全功能 数据同步 同步调用 异步通知 监听binlog 数据聚合 聚合可以实现对文档数据的统计、分析、运算。聚合常见的有三类: …...

WordPress恢复时候遇到的几个问题

1,一键安装 LAMP 最好是选择 CentOS 这种成熟的系统,最开始用 Alibaba Linux 报了好几个错,懒得折腾,最后重置镜像了。 https://lnmp.org/ wget https://soft.lnmp.com/lnmp/lnmp2.0.tar.gz -O lnmp2.0.tar.gz && tar z…...

设备码解释

一、名词解释 Device ID:设备ID。 IMEI:(International Mobile Equipment Identity)国际移动设备标识的缩写。是由15位数字组成的“电子串号”,它与每台手机一一对应,每个IMEI在世界上都是唯一的。 MEID…...

基于Docker-consul容器服务更新与发现

目录 一、什么是服务注册与发现: 二、Docker-consul介绍: 三、consul的关键特性: 四、consul部署: 1.部署规划: 2.consul服务器部署: 2.1 建立consul服务: 启动consul后默认会监听5个端口&a…...

firefox浏览器添加自定义搜索引擎方法

firefox浏览器添加自定义搜索引擎方法 1.在地址栏添加搜索引擎2.Mycroft Project 搜索引擎附加组件3.通过扩展插件添加自定义搜索引擎 Firefox这货居然不支持直接网址%s的搜索引擎定义方式,以下是添加方法。 firefox国际版119.0 1.在地址栏添加搜索引擎 &#xff…...

redis rdb aof

appendonly yes # appendfsync always appendfsync everysec # appendfsync no E:\Document_Redis_Windows\redis-2.4.5-win32-win64\64bit appendonly.aof...

浮动模块布局

基本思路 若宽度和浏览器一样宽,则不需要设置width 一般父盒子使用标准流,然后标准流内使用浮动 一般父盒子需要居中显示,使用 margin: 0 auto; 注意浮动盒子之间的margin值 与 父盒子width、height值之间的相等关系,一定要计算…...

信号、进程、线程、I/O介绍

文章目录 信号进程进程通信线程可/不可重入函数线程同步互斥锁条件变量自旋锁读写锁 I/O操作阻塞/非阻塞I/OI/O多路复用存储映射I/O 信号 信号是事件发生时对进程的通知机制,可以看做软件中断。信号与硬件中断的相似之处在于其能够打断程序当前执行的正常流程。大多…...

【css3】涟漪动画

效果展示 dom代码 <div class"mapSelfTitle66"><div></div> </div> 样式代码 .mapSelfTitle66{width:120px;height:60px;position: relative;&>div{width:100%;height:100%;background: url("~/assets/images/video_show/err…...

基础课17——智能客服系统

客户服务是一种以客户为中心的服务模式&#xff0c;旨在提高客户满意度和忠诚度&#xff0c;促进企业业务增长和可持续发展。在客户服务中&#xff0c;企业需要了解客户需求&#xff0c;提供优质、高效、个性化的服务&#xff0c;解决客户问题&#xff0c;满足客户需求&#xf…...

vue3 ts 导出PDF jsPDF

jsPDF 是一个基于 HTML5 的客户端解决方案&#xff0c;用于生成各种用途的 PDF 文档。 1、安装&#xff1a;npm install jspdf npm install --save html2canvas 2、引入&#xff1a;import jsPDF from "jspdf" import html2canvas from html2canvas 3、使用 <…...

Agent 应用于提示工程

如果Agent模仿了人类在现实世界中的操作方式&#xff0c;那么&#xff0c;能否应用于提示工程即Prompt Engingeering 呢&#xff1f; 从LLM到Prompt Engineering 大型语言模型(LLM)是一种基于Transformer的模型&#xff0c;已经在一个巨大的语料库或文本数据集上进行了训练&…...

云原生安全日志审计

记得添加&#xff0c;把配置文件挂载进去 - mountPath: /etc/kubernetes/auditname: audit-policyreadOnly: true.....- hostPath:path: /etc/kubernetes/audit/type: DirectoryOrCreatename: audit-policy/etc/kubernetes/manifests/kube-apiserver.yaml 具体配置文件如下 a…...

2023 辽宁省大学数学建模 B 题 数据驱动的水下导航适配区分类预测

“海洋强国”战略部署已成为推动中国现代化建设的重要组成部分&#xff0c;国家对 此提出“发展海洋经济&#xff0c;保护海洋生态环境&#xff0c;加快建设海洋强国”的明确要求。 《辽宁省“十四五”海洋经济发展规划》明确未来全省海洋经济的发展战略、 发展目标、重大任…...

ES 8.x新特性一览(完整版)

一、看点 在 2022 年 2 月 11 日&#xff0c;Elasticsearch&#xff08;ES&#xff09;正式发布了 8.0 版本&#xff0c;而截止到 2023 年 10 月&#xff0c;历经一年半时间&#xff0c;ES官方已经连续发布了多个版本&#xff0c;最新版本为 8.10.4。这一系列的更新引入了众多引…...

生产实战shell,给安全部门提供日志

生产实战shell,给安全部门提供日志 #!/bin/bashbackup_dir"/data/rw_copy" log_dir"/data/weblogic_log/test/yingyong" nginx_log_dir"/data/nginx_log" apache_log_dir"/data/apache_log" weblogic_log_dir"/data/weblogic_lo…...

HarmonyOS数据管理与应用数据持久化(一)

一. 数据管理概述 功能介绍 数据管理为开发者提供数据存储、数据管理能力&#xff0c;比如联系人应用数据可以保存到数据库中&#xff0c;提供数据库的安全、可靠等管理机制。 数据存储&#xff1a;提供通用数据持久化能力&#xff0c;根据数据特点&#xff0c;分为用户首选项、…...

小型气象站在智慧农业高标准农田建设中的作用

了解“小型气象站在智慧农业高标准农田建设中的作用”&#xff0c;我们需要了解什么是小型气象站&#xff1f;什么是高标准农田&#xff1f; 所谓小型气象站是一种气象观测设备&#xff0c;根据应用领域不同可分为农业气象站&#xff0c;校园气象站&#xff0c;森林气象站&…...

kruskal求最小生成树

算法思路&#xff1a; 将所有边按照权值的大小进行升序排序&#xff0c;然后从小到大一一判断。 如果这个边与之前选择的所有边不会组成回路&#xff0c;就选择这条边分&#xff1b;反之&#xff0c;舍去。 直到具有 n 个顶点的连通网筛选出来 n-1 条边为止。 筛选出来的边…...

876. 链表的中间结点

876. 链表的中间结点 算法 快慢指针 & 题目特征 需要对链表中的节点进行遍历&#xff0c;并且需要根据节点之间的相对位置或者距离进行操作 题目链接&#xff1a;https://leetcode.cn/problems/middle-of-the-linked-list/ 算法 快慢指针 & 题目特征 需要对链表中…...

【机器学习】二、决策树

目录 一、决策树定义&#xff1a; 二、决策树特征选择 2.1 特征选择问题 2.2 信息增益 2.2.1 熵 2.2.2 信息增益 三、决策树的生成 3.1 ID3算法 3.1.1理论推导 3.1.2代码实现 3.2 C4.5 算法 3.2.1理论推导 ​ 3.2.2代码实现 四、决策树的剪枝 4.1 原理 4.2 算法思路&#xff1a…...

低代码PAAS加速推进企业数字化转型

无论是“十四五”规划从国家层面提出的“加快数字化发展 建设数字中国”&#xff0c;还是后疫情时代企业自身的感受&#xff0c;数字化转型已成为必答题。当前 企业 业务场景化、线上趋势愈加明显&#xff0c;越来越多并发的数字化应用场景&#xff0c;而原有集中式架构扩展能力…...

时间复杂度为 O(nlogn) 的排序算法

归并排序 归并排序遵循 分治 的思想&#xff1a;将原问题分解为几个规模较小但类似于原问题的子问题&#xff0c;递归地求解这些子问题&#xff0c;然后合并这些子问题的解来建立原问题的解&#xff0c;归并排序的步骤如下&#xff1a; 划分&#xff1a;分解待排序的 n 个元素…...

掌控你的Mac性能:System Dashboard Pro,一款专业的系统监视器

作为Mac用户&#xff0c;你是否曾经想要更好地了解你的电脑性能&#xff0c;以便优化其运行&#xff1f;是否想要实时监控系统状态&#xff0c;以便及时发现并解决问题&#xff1f;如果你有这样的需求&#xff0c;那么System Dashboard Pro就是你的不二之选。 System Dashboar…...

C++ Qt如何往Windows AppData目录写数据

在使用Qt开发客户端软件时,我们可以把程序相关信息保存到AppData目录, 下次启动时读取,就可以保存程序的状态,便于用户使用。 Windows AppData目录是Windows操作系统中的一个重要目录,主要用于存储应用程序的自定义设置、文件和数据。这个目录包含了许多与应用程序相关的配…...

xargs命令

xargs命令 xargs 命令是一个非常好用的 Linux 命令&#xff0c;它可以将管道或标准输入转换成命令行参数&#xff0c;并用这些参数来执行指定 的命令。默认情况下&#xff0c; xargs 命令会将输入按照空格、制表符、换行符等符号进行分隔&#xff0c;并将它们作为一组参数 传…...

【原创】java+swing+mysql无偿献血管理系统设计与实现

摘要&#xff1a; 无偿献血管理系统是为了实现无偿献血规范化、有序化、高效化的管理而设计的。本文主要介绍使用java语言开发一个基于C/S架构的无偿献血管理系统&#xff0c;提高无偿献血管理的工作效率。 功能分析&#xff1a; 系统主要提供给管理员、无偿献血人员&#x…...