超级计算机:关于这些未知机器的所有信息

西班牙巴塞罗那的Mare Nostrum

我想今天 如果不将超级计算与Linux相关联,就无法谈论超级计算,事实是,尽管Linux最初被认为是个人计算机领域,但是可以说它已经统治了所有领域,除了稍后我们将看到一些有趣的统计数据。 此外,在这个领域中,没有多少西班牙语可以发布给所有人。

相反,我已经能够验证 超级计算机的世界 或超级计算的兴趣,但总的来说,对于许多用户来说,它还是一个未知数。 这就是为什么我花时间创建和发布有关超级计算机的大型文章的原因,我希望该文章能教给您很多有关“神秘”事物的所有秘密,并且当您阅读完所有这些文章后,它不再具有任何秘密。你 ...

不仅仅是文章或大型帖子,这将是一种 理论-实践Wiki 您可以随时咨询有关超级计算的信息。 这就是目标,这篇LxA文章是一个转折点,一个前后。 我会得到它? 让我们来看看 ...

超级计算导论

超级计算机和系统管理员

从一开始就明确指出,我们家里的计算机是目前功能最强大的计算机之一。 我的意思是,没有比我们每天使用的微处理器功能强大得多的微处理器。 超级计算机的关键不在超能力的微处理器或非常奇特的组件中,而与我们每天在家中使用的组件不同, 超级计算的关键是并行性.

让我解释一下,RAM存储器组,硬盘驱动器,微处理器,主板等。 一台超级计算机的功能可能与您现在想像的或在家中使用的超级计算机相似。 仅在超级计算机的情况下,它们才被分组为成百上千个,以加总这些独立的“计算机”中每一个的力量,从而构成 一台出色的机器,可以作为单个系统运行.

我说的是 并行计算, 是的。 一种允许创建超级计算机或我们称为HPC(高性能计算)或高性能计算的范例。 我的意思是,如果您在家中拥有一个AMD Ryzen 7、16 GB的RAM,一个网卡和一个8 TB的硬盘,...想象一下,如果将其乘以1000并使其正常工作,将会发生什么情况?如果它们只是一台PC。 这将是并行运行的1000 Ryzen,16 TB的RAM和8 PB的存储。 哇 !! 这已经开始看起来更像是一台超级计算机,对吗?

对不起,如果您认为一个 非常简单的介绍和有点俗气的定义,但这是有意的。 因为我希望即使是最不懂知识和最有经验的用户也要掌握这种范例的想法,否则他们将不会理解本指南的其余部分。 我希望您坚持这个想法,因为如果您明白了这一点,您将看到那些占据较大表面的大型奇怪机器看起来不会那么奇怪...

什么是超级计算机?

IBM超级计算机

在上一节中,我们介绍了术语并行性和HPC很好。 为了创建超级计算机,即具有这些HPC功能的计算机,我们已经明确指出,需要并行处理。 根据定义, 超级计算机是那些具有能力的计算机 某种 他们远远优于 就像我们在家中可以拥有的普通计算机一样

通常,超级计算机的几乎所有功能都远远优于PC,但特别是它们可以引起人们的注意 计算能力 这是由于核心或处理单元, RAM 可用于此类处理单元,并在较小程度上 储存容量,因为通常前两种对于这类机器的正常应用更为重要。 尽管确实有一些大型计算机需要比计算能力或RAM更多的存储和带宽,但这是存储服务器的情况...

超级计算机的历史:

克雷1:历史照片

也许最早的超级计算机之一,或者像历史学家那样对它进行分类,是60年代制造的机器 斯佩里·兰德 为美国海军。 到那时,IBM成为了IBM 7030等机器以及其他许多机器的伟大之王。 也是60年代初曼彻斯特大学和Ferranti大学的地图集,作为欧洲对美国机器的竞争。 已经开始使用锗晶体管代替旧的真空管(不是集成电路)和磁存储器的机器,但是它们仍然非常原始。

然后是另一个时代,另一个伟大的时代进入了CDC,它由一位老朋友设计的CDC 6600,后来又任命了一家重要的公司,如今该公司已成为该领域的领导者。 我说 西摩克雷。 他设计的机器于1964年完成,是最早使用硅晶体管的机器之一。 新的硅技术带来的速度和Cray设计的体系结构使该机器的速度比竞争对手快10倍,以每台100万美元的价格出售了其中的8.000.000台。

Cray dejaría CDC (Control Data Corporation) en 1972 para formar la compañía líder que os he comentado, se trata de la Cray Research, creando el Cary-1 de 80 Mhz y uno de los primeros CPUs de 64-bit en 1976, convirtiendose en la supercomputadora más exitosa de la época y que podéis ver en la imagen principal de este apartado en la fotografía en blanco y negro. La Cray-2 (1985) seguiría el exitoso camino de la primera, con 8 CPUs, refrigeración líquida y marcando el camino de las modernas supercomputadoras en muchos sentidos. Aunque el rendimiento era de 1,9 GFLOPS.

考虑到您现在口袋中拥有的智能手机已经超出了这些超级计算机的数量,这看起来似乎非常可笑。 例如,一个 SoC Snapdragon 835或Exynox 8895 它分别来自高通或三星,功率约为13,4 GFLOPS,即比Cray-10高出近2倍,比Cray-100高出约1倍。 那些巨大的机器无法像鞋子一样轻巧,轻而易举。 我想在几十年内,我们可以拥有与当前超级计算机一样强大或更强大的设备,但体积却可以缩小到很小。

故事继续,这次来了 大规模并行设计的时代就是说,由于芯片生产成本较低且互连能力得到了改善,因此可以代替超级计算机,而通过结合成百上千的芯片来构建超级计算机,这些芯片与我们在家用设备中所使用的芯片非常相似。之前评论过。 实际上,在1970年代,有一台使用这种新的大规模设计的机器远远超过了Cray-1(250 MFLOPS),即ILLIAC IV,其中256个微处理器达到了1 GFLOPS,尽管它存在一些设计问题,并且尚未完成,仅实施了带有64个微处理器的设计。

大阪大学的LINKS-1图形超级计算机将是这些大规模并行计算机中的另一台,具有 257个Zilog Z8001微处理器 和257个Intel iAPX 86/20 FPU,在当时表现良好,并能够以3 GFLOPS渲染逼真的1.7D图形。 而且功能会越来越强大,从数百个微处理器到现在的数千个……

在西班牙,我们拥有欧洲最强大的超级计算机之一,也是世界上最强大的超级计算机之一,它是由IBM创建并称为 头晕,位于巴塞罗那,属于西班牙超级计算机网络,该网络由其中的几个组成,例如马拉加大学的毕加索(Picasso),它以MareNostrum定期接收的更新中废弃的材料为基础。 实际上,MareNostrum是一台使作者Dan Dan着迷的机器,它被选为最漂亮的数据中心(将老修道院的建筑与最高技术融合在一起),正如您在本文的主图中所看到的那样。

最高性能 11.15 浮点数
微处理器 165.888英特尔至强白金
内存 390结核病
红色 全能者
设计师 IBM
操作系统 SUSE Linux

超级计算机功能:

IBM z13大型机

尽管许多作者分开(我认为是错误的) 超级计算机服务器 甚至大型机,按照我为您定义的超级计算机的定义,服务器也可以完美地包含在超级计算机中,因为它们不过是功能远远优于普通计算机的计算机,而只是致力于在其中提供某种类型的服务。网络...唯一必须区别的是,根据机器的用途,我们将拥有我们想要的功能,高于其他功能。

例如,对于用于数据存储的服务器(例如Cloud Storage服务),我们感兴趣的是它具有残酷的存储容量。 对于要处理交易和银行业务的大型机而言,重要的是它的计算能力。 但是我坚持认为,两者都是超级计算机。 话虽如此,让我们来看一些 我们感兴趣的主要特征 从超级计算机/大型机/服务器:

  • 安全:如果是隔离的超级计算机(即与Internet断开连接),则可能必须实施外围安全措施,但是系统本身的安全性不如所连接的服务器以及与之相连的服务器那么重要连接了许多客户端,或者在连接到Internet时可能成为攻击的目标。 但是,无论是哪种情况,总会有安全措施。
  • 高可用性:服务器或超级计算机必须正常运行,并最大程度地减少可能的硬件或软件问题,因为停止运行对于服务器的构造可能是致命的,并且在100%的情况下,关闭计算机将意味着大量损失。 这就是为什么要在操作系统中采取措施来减少必要且可靠的重新引导(UNIX / Linux),在电源中断的情况下使用备用电源(UPS),在出现无法复制的副本而导致故障的情况下减少系统冗余的原因对于一般性能而言,隔离技术可以隔离一个节点,这样它就不会影响其他节点,并且可以在不影响其余节点的情况下进行热更换,并具有诸如硬盘驱动器上的RAID,ECC内存之类的系统的容错能力,避免裂脑,具有DRP(灾难恢复计划)以在出现问题等情况下采取行动。 而且,我们希望可靠性达到最大,并且使用寿命也要尽可能长,以下参数始终取决于其最低或最高值:
    • 平均无故障时间 (平均故障时间):这是平均故障时间,即它衡量系统在出现故障之前能够不中断地工作的平均时间。 因此,越高越好。
    • 平均无故障时间 (两次故障之间的平均时间):这是两次故障之间的平均时间,也很重要,它应该更长,因为我们不希望故障连续发生,否则设备的可靠性会变差。
    • 平均修复时间 (平均修复时间):平均修复时间,即可维护性。 我们希望它更低,以便该系统在很长一段时间内不会出现故障。
  • 高性能和负载平衡: 当涉及需要为其客户端,在超级计算机或大型机上运行用于数学计算或科学模拟等功能的客户端的云服务时,这一点尤其重要。 这是通过增加RAM的数量以及微处理器的数量和/或性能来实现的。 另外,我们必须具有良好的负载平衡,这取决于我们对进程的管理,因此我们不会使某些节点比其他节点过载更多,但我们将使整个超级计算机上的工作负载相等或最均匀地平衡。可能的。
  • 标量:软件和硬件的适应能力,而不受更改配置或大小的限制。 如果要在不需要购买新超级计算机的情况下发生故障,则在扩展计算能力或内存容量等方面,此类机器必须具有灵活性。
  • 考斯特:这不仅取决于机器本身的成本和维护费用(很容易达到数百万美元),还取决于通常以MW(兆瓦)为单位的机器消耗量以及冷却系统的成本,它们产生的热量也很高。 例如,如果我们以Facebook数据中心为例,该中心拥有托管服务的服务器,那么我们将花费数十亿美元,大约有1600名工程师在工作,而其中不包括专门的技术人员和管理人员,平流层(请注意,今天的数据中心消耗了全世界2%的电能,即数十亿瓦特和数十亿欧元。实际上,只有Google消耗了世界上0,01%的电能,这就是为什么它通常安装其数据中心的原因在世界上电价便宜的地区,因为这样可以节省数百万美元),等等。 您可以想象维持这样一个团队并不便宜……而且代价不菲,因为Facebook在俄勒冈州拥有的那台可怕的服务器位于约28.000平方米,价值数亿欧元的仓库中,这是一个巨大的数目服务器场中有数千个处理器,硬盘驱动器增加了PB的存储量,RAM存储器的存储库很多,野外的网卡(计算出有2 km的光纤缆线用于隔行扫描),所有这些都消耗了6 MW的光缆。电力和柴油发电机作为停电的UPS模式,产生的所有热量都需要复杂的散热系统和大规模的空调。

这是最重要的功能,尽管可能存在 具体应用 需要更具体的东西。

实际趋势:

IBM z13芯片

来自 几乎定制的系统 像IBM,CDC或Cray的第一个产品一样,随着芯片或集成电路的到来以及它们的低成本,一切都发生了非常迅速的变化,从而允许启动具有数千个元素的新型大规模并行超级计算。 但是,不要以为当前的超级计算机是只需要组装成千上万个设备的简单系统,仅此而已,它们是复杂的机器,需要仔细的设计和制造,以精心设计每个细节,才能最大程度地利用它。确保一切正常,并根据我们要实现的功能或特性来选择适当的形式。

在那些最初的机器组成之后 定制电路 或专为机器设计的定制芯片,我们已经开始使用更多标准系统,例如微处理器,我们将在下一部分中看到。

特定的微处理器:

带两个插槽的AMD Epyc主板

最初,几乎使用与家用计算机相同的处理芯片,但如今,IBM,AMD和Intel等大型公司为台式机或其他目的设计其微处理器的特定模型。 例如,我们都知道IBM的PowerPC微处理器,直到几年前他们采用Intel的芯片时,它们才安装在Apple的计算机中。 苹果公司使用的这些相同的芯片也为超级计算机提供了动力。 但是,IBM为大型计算机提供了几种特定的设计,这些设计可以一起实现更好的性能,例如 动力,即使它们与PowerPC共享ISA。

SPARC也会发生同样的事情,尽管SPARC目前没有针对台式机的特定模型,因为它们是一个不占主导地位或对其非常感兴趣的部门,是的,过去的工作站中都具有这些相同的微处理器,尽管当前的机器是专门为在这些出色的机器上工作而设计的。 芯片也可以这样说 英特尔与AMD,而不是像Intel Xeon这样的特定微处理器,它们与当前的Core i3 / i5 / i7 / i9及其许多特性(在Intel Itanium中不是)共享微体系结构,只是对它们进行了优化以使其在MP模式下工作。 AMD也是如此,它为其K8或Athlon64超级计算机(称为Opteron)和当前的EPYC(基于Zen)设计了一种特殊的实现。

我再次在这里停下来,我想定义 微处理器的类型 根据某些参数:

  • 根据其架构:根据CPU或微处理器本身的体系结构,我们可以找到:
    • 微处理器:无论采用何种微体系结构或技术,它都是普通的CPU或微处理器。
    • 微控制器:它是与RAM,I / O系统和总线(即芯片上的微型计算机)一起驱动在同一芯片上的普通(通常是低性能)CPU。 通常,它们不在超级计算机中使用,但在许多家用和工业设备,Arduino等板卡中非常常见。 但是对于超级计算机的问题,请忘记它们...
    • DSP(数字信号处理器):您可能还认为这些数字信号处理器不适合进行超级计算,但是当我们对异构计算有更多了解时,您将看到它们的意义。 但是现在您只需要知道它们是特定的处理器,就可以在处理数字信号时拥有出色的性能,这使其非常适用于声卡,视频等。 但这将在某些计算中具有某些优势,正如我们将看到的...
    • SoC(片上系统):顾名思义,它是片上系统,即其中包含了比微控制器所包含的功能更多的芯片。 除CPU(通常为ARM)外,它还包括闪存,RAM,I / O和某些控制器。 但是对于SoC,集成CPU通常是高性能的,适用于智能手机,平板电脑等,尽管我们现在看到,有些微服务器正在使用这种类型的芯片作为处理单元。
    • 向量处理器:是一种SIMD微处理器,即它执行带有多个数据的指令。 可以说,由于我们讨论了诸如MMX,SSE等多媒体扩展,许多现代微处理器都具有SIMD功能。 但是,当我说向量处理器时,我指的是纯处理器,它们是基于为每条指令处理向量或数据数组而设计的。 这种类型的处理器的示例是在某些日本超级计算机中使用的Fujitsu FR-V,也可以将GPU视为此类处理器。
    • ASIC的:这些是专用集成电路,即根据用途定制的芯片。 尽管它的设计意味着比使用通用处理单元要高的成本,但在某些特定的应用程序中却可以提供出色的性能。 同样,如果使用FPGA来实现它们,那么从电子角度来讲,这将不是最有效的方法。 例如,如今,它们已被广泛用于构建加密货币挖掘机器。
    • 他人:目前,对于此主题,还有其他我们不太感兴趣,例如APU(CPU + GPU),NPU,无时钟微处理器,C-RAM,桶式处理器等。
  • 根据它们的核或核心:我们已经从单核或单核CPU变为拥有多个CPU,但是在具有多个CPU的微处理器中,我们可以区分:
    • 多核:这些是我们经常使用的传统多核,例如双核,四核,八核等。 它们通常在同一芯片上或在不同封装的同一包装中具有2、4、8、12、16、32,...个或多个内核。
    • 众核:类似于上面的内容,但是它们通常是成百上千个内核,并且要使其成为可能,例如,集成内核必须比Intel和AMD设计更简单,更小,并且要更节能。 这就是为什么它们通常基于图块形式放置的ARM内核的原因。 通过将许多这些放在一起,可以实现很高的计算能力。 英特尔也很喜欢这个家伙,即他们的至强融核处理器(Xeon Phi),它们是使用更简单的内核的多核x86,但捆绑了许多芯片(57至72个)以驱动当前的某些超级计算机。
  • 根据用途注意:在这种情况下,我们只对一种类型感兴趣,即MP或多处理器系统。 在台式机或笔记本电脑中,您会看到主板上只有一个用于插入微处理器的插槽,另一方面,服务器主板上每个都有2、4,...个插槽,这就是我所说的MP 。

但是,微处理器逐渐被其他更具体的处理单元所取代,这些处理单元可以实现更好的计算能力,即更好的处理能力。 每瓦FLOPS之间的效率 正如我们将在下一节中看到的那样。

其他处理方法:

尼维达DGX

就像我说的那样,尽管微处理器仍占有很大的市场份额,但它们一直在逐步发展,但是最近还有其他一些处理单元正在大量涌入,例如 GPGPU或通用GPU。 而且,图形卡的芯片通常是SIMD或矢量类型的,它们可以将同一条指令同时应用于多个数据,从而提高性能。

最好的是,通过修改控制器和 以编程方式这些GPU无需修改硬件就可以像CPU一样用于数据处理,也就是说,不仅可以像专用GPU一样用于一般处理,而且还可以用于图形处理,从而充分利用了其巨大的计算潜力,因为图形卡实现的FLOPS远远高于CPU。

它们之所以能够获得如此出色的计算性能,是因为它们可以与图一起使用,并且需要大量的数学计算才能使它们移动。 除了像我所说的那样是SIMD,它们通常遵循并行编程类型的范式 SIMT(单指令-多线程),即使内存延迟很高,也可以实现良好的吞吐率。

请记住 生成3D图形,则需要进行建模,该建模需要首先将一系列三角形与平面上的W,X,Y和Z坐标相结合,然后应用颜色(R,G,B,A)并创建表面,提供照明,对表面进行纹理化,混合等这些数据和颜色坐标意味着它们包含可配置的处理器来处理它们,并且可以理解,这些坐标精确地形成了GPU处理单元所使用的向量,并且是用于进行目的计算的向量。 例如,虽然CPU必须执行4条加法指令以添加X1X2X3X4 + Y1Y2Y3Y4,即X1 + Y1,然后是X2 + Y2,依此类推,但GPU可以一次性完成。

因此,我们的GPU能够以非常低的时钟频率工作,比CPU的时钟频率低多达5或6倍,并且实现了更高的FLOPS速率,这意味着 更高的FLOPS / W比。 例如,英特尔酷睿i7 3960X可以达到141 GFLOPS的计算性能,而AMD Radeon R9 290X可以达到5.632 GFLOPS,每个GFLOP的成本大约为0,08欧元,而在2004年,日本的超级计算机NEC Earth推出了带有矢量处理器的模拟器,总性能为41.000 TFLOPS,其每GFLOPS的成本约为10.000欧元,因为它由数千个处理器组成,每个处理器具有8 GFLOPS。

如您所见,这就是创造兴趣所在 当前基于GPU的超级计算机 从NVIDIA或AMD而不是使用CPU。 异构计算也变得越来越重要,也就是说,将各种类型的处理单元组合在一起,并将每个操作委托给在更短的时间内或更有效地对其进行处理的单元。 这与同类计算范例相冲突,在同类范例中,CPU处理逻辑,GPU处理图形,数字信号的DSP等。

相反,为什么不按建议使用它们呢? 异构计算 优化性能。 这些芯片中的每一个都擅长某些东西,它们都有其优点和缺点,所以让我们让每个芯片都尽其所能...

并行性:

卡里徽章2

尽管我不希望获利,但至少不如 超级计算机驱动器是的,我想回到并行性的术语,并进行一些解释。 而且,几乎从计算开始,并行性就已经在某种意义上得到了增强:

  • 位级并行:我们都已经看到了微处理器是如何从4位,8位,16位,32位和当前的64位发展而来的(尽管有些多媒体扩展达到128、256、512等)。 这意味着一条指令可以操作更多的数据或更长的数据。
  • 数据级并行:当我们使用向量或数据矩阵代替标量数据时,对指令进行操作。 例如,标量将为X + Y,而DLP将对应于X3X3X1X0 + Y3Y2Y1Y0。 这就是这些扩展在我在位级并行性中提到的指令集中所做的工作。
  • 指令级的并行性:打算在每个时钟周期处理多个指令的技术。 也就是说,要使CPI <1.在这里,我们可以引用管道,超标量体系结构和其他技术作为实现CPI的主要方法。
  • 任务级并行:我的意思是多线程或多线程,也就是说,要同时执行操作系统内核调度程序建议的几个线程或任务。 因此,在这种情况下,该软件将允许将每个过程划分为可以并行执行的更简单的任务。 如果在Linux中将ps命令与-L选项一起使用,则会出现一列,其中包含LWP(轻量级进程)的ID,即轻进程或线程。 尽管达到这种并行性的方法有几种:
    • CMP (多处理器芯片):即使用多个内核,每个内核处理一个线程。
    • 多线程:每个CPU或内核可以同时处理多个线程。 在多线程中,我们还可以区分几种方法:
      • 临时多线程 或超线程:这是某些微处理器(例如UltraSPARC T2)所使用的,其作用是在一个线程和另一个线程的处理之间交替进行,但实际上并没有同时对其进行并行处理。
      • 同时多线程或 SMT (同时进行多线程处理):在这种情况下,它们是并行处理的,从而允许CPU资源动态规划,并可以进行多个广播。 这就是AMD或Intel所使用的,尽管Intel已注册了HyperThreading商标,仅不过是SMT。 但是,在AMD Zen中采用SMT之前,AMD在Fusion中使用了CMT(集群多线程),即基于物理内核而不是逻辑内核的多线程。 换句话说,在SMT中,每个内核或CPU就像它们是几个逻辑内核一样工作,以便并行执行这些任务,另一方面,在CMT中,几个物理内核用于执行此多线程处理...
  • 内存级并行:并不涉及系统中安装的内存量,因此是一个令人困惑的术语。 它指的是可以同时进行的未决访问的数量。 大多数超标量具有这种类型的并行性,这要归功于几个预取单元的实现,这些预取单元可以满足对缓存故障,TLB等的各种请求。

不管这些并行度如何,它们都可以与其他 建筑类型 获得更多的并行性,例如:

  • 超标量和VLIW:简单来说,它们是具有多个复制功能单元的处理单元(CPU或GPU),例如多个FPU,多个ALU,多个分支单元等。 这意味着,根据可用单元的数量,可以通过二乘二或三乘三等执行由这些类型的单元执行的操作。 例如,如果要执行一个过程或程序,则需要处理指令Y = X + 1,Z = 3 + 2和W = T + Q,在标量中,您应等待第一个操作完成后再输入第二个一个,如果有3个ALU,则可以同时完成... * VLIW:对于VLIW,通常存在一些单元的副本,并且编译器会调整指令以使其适应整个宽度CPU的数量,以及每个周期中全部或大部分的单元都被占用。 也就是说,VLIW是一条长指令,由以某种特定方式打包以符合硬件体系结构的一些更简单的指令组成。 您将如何理解其优点和缺点,在此不再赘述...
  • 管道:通过引入寄存器来实现通道化或分段,该寄存器将电路划分开来,将每个功能单元划分为多个阶段。 例如,假设您有一个3层深度的管道,在这种情况下,功能单元被分为三个独立的部分,就好像这是一个链条制造过程一样。 因此,一旦输入的第一条指令腾出了第一阶段,另一条指令可能已经进入该第一阶段,从而加快了执行速度。 另一方面,在非流水线系统中,只有在第一个指令完全完成后才能输入下一条指令。
  • 执行乱序:在有序体系结构中,当编译器生成指令以构成运行程序时,指令将按顺序执行。 另一方面,这并不是最有效的方法,因为在等待阻塞指令结果发生的事件时,某些处理器可能会花费更长的时间,或者不得不在CPU中引入冒泡或死区时间。 另一方面,无论顺序如何,它将不停地向CPU提供指令,这会增加生产时间。 这是通过我将不介绍的算法来实现的。

通常,当前的大多数CPU(英特尔,AMD,IBM POWER,SPARC,ARM等)混合使用所有级别的并行性,管线,超标量,乱序执行,知名度等,以获取更多性能。 。 如果您想了解更多,可以咨询 弗林的分类法,这使系统与众不同:

  • 可持续发展研究所:仅可使用单个数据处理单个指令的处理单元。 即,它逐个顺序地执行指令和数据。
  • SIMD:单个指令和多个数据,在这种情况下,并行性仅在数据路径中,而在控制路径中。 本处理单元将能够同时对多个数据执行相同的指令。 向量处理器,GPU和一些多媒体扩展已经在微处理器中实现了这种情况(例如:SSE,XOP,AVX,MMX等)。
  • 误报:在这种情况下,并行性处于指令级别,从而允许在单个数据流上执行多个指令。 假设您有X和Y,并且可以同时操作X + Y,XY,X·Y和X /Y。
  • MIDM:这是最并行的,因为它可以同时对多个数据执行多个指令...

我认为与此相关的并行性原理非常明确。 如果您想更深入一点,可以访问我在本文最后部分留下的资料,以及我生命中最后17年中一直在其中工作的资料来源。

内存系统:

RAM模块

无论使用哪种处理方法或处理单元,都需要一个存储器。 但是在这里,我们遇到了一些更为严峻的问题,因为有了并行性, 内存系统必须一致 并且具有避免产生错误数据的一系列特性。 不用担心,我将通过一个示例以非常简单的方式向您解释。

想象你有 单CPU 执行一条加法指令,假设这是Z = Y + X,在这种情况下就不会有问题,因为CPU会带来加法指令并告诉其算术单元将存储位置Y和X加到它们所在的位置数据,最后将结果保存在存储器的Z位置。 没问题! 但是,如果有多个CPU,该怎么办? 假设有一个相同的示例,CPU A的Z = Y + X,但另一个CPU B的X = Y-2。

好, 让我们给它值 每个字母:Y = 5,X = 7。 在这种情况下,如果CPU A首先执行操作,则Z = 5 + 7,即Z =12。但是,如果CPU B首先执行操作,则X = 5-2 = 3,则它将访问内存,并且将3存储在存储X的地址中,因此,如果CPU A访问该位置,它将执行相同的指令,但结果将为Z = 3 + 7,因此Z = 10。 我们已经遇到了我们无法承受的严重失败,否则任何事情都无法正常进行...

因此,存储系统已经开发了一系列 保持一致性的方法 并知道应该在该操作之前或之后执行哪个操作,以确保结果正确。 即使在您的家用计算机上,也会发生这种情况,因为现在您有多个内核正在访问同一内存,不仅如此,还使用了微架构,这些微架构利用了多线程,超标量系统和乱序执行的优势,如果不采取纠正措施,这种一致性就很高。 想象一下,在一台拥有数千个此类超级计算机的超级计算机上...

但是,当然 降低制造成本 芯片质量和 技术的成熟 网络导致了具有许多相互连接的处理器的机器的快速变化,并且这也迫使存储系统发生了变化(请参阅耦合),因为家用计算机中存在的那些问题会因为有这么多处理器同时运行而成千上万倍。

耦合 我提到的是随着时间的推移而发展的,首先是紧密耦合的系统,其主内存由所有处理单元共享; 以及与每个处理器具有其自己独立(分布式)内存的系统的松散耦合。 另一方面,最近我提到的两个系统已逐渐被淡化,并取得了进展 杂种,使用UMA(统一内存访问)和NUMA(非统一内存访问)方案,尽管这是我可以详细讨论的另一个主题,并且将为我们提供另一篇大型文章。

如果您需要一些信息,只需在页面中简短地告诉您 UMA架构 不管执行访问的处理器是什么(我将访问理解为读或写操作),对任何统一主存储器位置的存储器访问时间都相同。 那是因为它是集中的。

而在 NUMA,它不是统一的,访问时间将取决于请求它的处理器。 也就是说,存在一个本地和非本地内存,换句话说,就是一个共享且物理分布的内存。 如您所知,要使其高效,必须将平均等待时间减小到最大,并且只要有可能存储处理器将要在本地执行的数据和指令。

未来:量子计算

La 后硅 并且当前微电子的所有替代技术还很不成熟,并且处于开发阶段。 我认为不会发生根本性的转变,但是当前的硅的可能性将开始耗尽,直到达到其物理上限为止,然后混合技术的时代将到来,其基础将继续是硅。使量子计算实现飞跃的更遥远的未来...

在那次转变中,我认为 ARM将发挥关键作用 以及能源效率(性能/消耗)的众说纷and,这已经是非常个人的看法,也许在2020年代将达到硅的极限,而在2030年代,它将继续利用硅技术利用投资来制造硅您说的是铸造厂的数量,并扩大它们的范围,因为更大的模具现在意味着更高的制造成本,但是当您不必进行巨额投资来更新铸造厂时,我认为稳定性将有利于价格。 但是,从设计者的角度来看,这意味着要付出更大的开发努力,因为要在不减小制造尺寸的前提下增加表面积,并假定性能会有所提高,那么他们可能不得不纵容未来的微体系结构,而朝着微体系结构方向发展。像我命名的那些ARM一样高效...

回到量子计算的话题,实际上已经建立了一些 量子计算机但是,老实说,看到我所看到的东西仍然很有限,需要更多的发展才能成为公司的实用工具,而在它们成熟到足以成为家庭可以负担的东西之前,还有很多工作要做。 正如在打开本节的图像中看到的那样,它们似乎仍然是相当复杂的科幻小说,需要冷却以使其保持在绝对零ºK(-273ºC)附近。

该温度限制了它的实际应用和大规模应用,例如 超导体。 在超导体领域,已经采取了重要的措施,但是工作温度仍然远低于0ºC,尽管如果它们能够使其在室温或更正常的余量下工作将是非常有趣的。 除了温度屏障外,还必须处理其他问题因素,例如当前二进制计算的基础和基础不适用于量子...

我想提到超导体,因为它是某些量子计算机所基于的技术之一,能够量化或隔离我们将要讨论的那些量子比特。 但是,它不是唯一的基础技术,我们也有 离子型量子计算机 (原子数少一个或多个的原子)基于激光阱中捕获的量子位的电子数。 另一种选择是 基于核自旋的量子计算,使用分子的自旋态作为量子位...

撇开陷阱,我将尝试以一种非常简单的方式进行解释 什么是量子计算,供大家理解。 简而言之,这是并行化的又一步,它允许未来的量子计算机处理如此大量的数据或信息,同时允许我们进行新的发现并解决超级计算机无法解决的问题。 因此,它们不仅代表着技术革命,而且将极大地促进其他领域的科学技术和人类的福祉。

我们一起去 量子计算机是什么的简单解释。 您知道当前的计算机是基于二进制系统的,也就是说,它们处理的位可以取零或一的值(如果从电路的角度来看,则为开或关,高电压或低电压),并且这些代码二进制信息是可以处理的信息,可以运行程序并完成我们今天在计算机上可以做的所有事情。

相反,在量子计算机中,量子位(称为 量子比特,不仅可以在开启或关闭状态(1或0)下工作,而且还可以在两种状态下(即, 状态重叠 (开和关)。 之所以如此,是因为它不是基于传统力学,而是基于量子物理学定律。 这就是为什么我说数字或二进制逻辑不起作用,我们必须开发另一种量子逻辑来建立等待我们的新计算机世界的原因。

与IBM Q平台一起练习:IBM设立的在线实验室,因此任何人都可以使用16量子位量子计算机。 它是一个具有基于Web的图形界面的编辑器,可用于创建程序...

因此,由于这种并行性或对偶性,我们可以同时处理更多可能性或数据的这种新的信息量子位单元(将取代该位)具有潜在的潜力。 我把你 一个例子 为了使您更好地理解它,假设您有一个程序,如果一个附加位为0,则将两个位(a,b)相加,如果该附加位的值为1,则将它们相减。因此,加载到内存中的指令为(在位为0的情况下添加a,b),在位为1的情况下添加(sub a,b)。要获得结果,加法和减法,我们必须执行两次,对吗? 如果该额外位的状态可能同时处于两种状态,该怎么办? 您不再需要运行两次,对吗?

再举一个例子,假设您在一台非量子计算机中有一条NOT指令被抛出3位以上。 如果在启动该指令时这三个位的值为010,则结果将为101。另一方面,具有qubits的同一条指令,其中每个值可以同时处于两种状态,结果将为一次的所有可能值:111、110、101、100、011、010、001和000 科学模拟,密码学,数学问题解决等等,真是太神奇了。

谁在这项技术中处于领先地位? 好吧,目前看来 IBM是领导者,尽管Google,Intel和其他公司或大学也每次都在竞争并推出能够处理更多qubit的量子计算机原型,尽管它们已经在前面提到的问题中增加了一个问题,那就是有时它们需要其中一些qubit作为“奇偶校验”的量子位,即确保结果没有错误。

问题:用电量和产生的热量

以微处理器为中心的主板的热像图(热点)

El 这些大型机器的能耗和散热是一个巨大的挑战 对于工程师。 目的是大幅度减少这种消耗并以廉价的方式处理热量,因为冷却系统还假定必须将电能消耗添加到计算机本身的消耗中。 这就是为什么要考虑一些奇特的想法的原因,例如将数据中心淹没在海中,以便它们将自己的水用作冷却液(例如:商业品牌 氟惰性 来自3M,它们是基于氟化物的冷却剂),并节省了复杂的空调或冷却剂泵送系统...

我已经说过了 Google搜索能源费率最低的地区 安装服务器中心,因为即使差异很小,多年来,这也意味着节省了数百万的电费,我想在西班牙,由于我们心爱的Endesa为我们提供的费率,它们的成本变得很复杂...

恩CUANTO一个 热密度,这还会产生另一个潜在的问题,那就是服务器或超级计算机组件寿命的减少,这会影响我们在超级计算机应具有的特性部分中描述的耐用性和使用寿命特性。 热量是由于电路部件的电气性能造成的,它浪费了大部分以热能形式消耗的能量,就像内燃机一样,其性能不太高,范围在25%至30%之间。汽油或柴油为30%或更多,某些涡轮为40-50%。 这意味着,例如对于汽油,您消耗的汽油中只有25%或30%实际上用于将动力传递到车轮,其余的75-70%由于元件的摩擦而浪费为热量。 详细地说,电动机可以达到90%或更高的效率...

尽管该电动机示例并不十分相关,但是我想告诉您,只要看到设备中的热量,就意味着能量以热量的形式被浪费了。

一旦提出了这两个问题并明确了 热量/能量比我可以举一个中国超级计算机Tianhe-1A消耗4,04兆瓦电的示例为例,如果将其安装在一个以kWh为单位收取0,12欧元的国家(例如西班牙)的情况下,则意味着480欧元/每小时(4000 kW x 0,12欧元),考虑到它全年都连接在一起,每年要支付的费用为4.204.800欧元(480x24x365)。 XNUMX万欧元是一笔不小的数目的电费,对不对?

如果我们知道,由于我们的电路效率低下,这4.204.800欧元,那么支付它就更烦人了 只有一个百分比对我们真的有用,而其他的好百分比已经以热的形式浪费了。 不仅如此,我们还必须投入资金来缓解这种无用的热量,但这种热量会影响我们的团队。 此外,考虑到环境,如果能源来自产生某种类型的污染(不可再生)的能源,那么这种不成比例的消耗也是一个大问题。

另一个示例性案例是中国超级计算机,它现在在Top500中排名第一,也就是说,它在2018年具有最高的计算能力。 被称为 双威太湖之光 旨在进行石油研究以及其他科学方面的研究,例如药物研究和工业设计。 它运行RaiseOS(Linux),总共使用40.960个SW26010微处理器,这些微处理器是多核的(每个芯片具有256核,共10.649.600核),硬盘驱动器可完成20 PB的存储,以及1,31 PB的RAM内存(如果添加)所有模块。 这使您具有93 PFLOPS的计算能力(如果您不知道,我将在后面解释FLOPS是什么)。 它的价格约为241亿欧元,消耗量为15兆瓦,这就是为什么它在最节能的排名(16 GFLOPS / W)中排名第6,051位的原因。 那些15兆瓦意味着您必须将天河1A的电费乘以3,75 ...

我说的是,甚至相对于生成所述计算量所需的瓦特数来计算计算功率比。 FLOPS / W单元。 机器可以产生的每瓦FLOPS越多,效率越高,电费和所产生的温度就越低,因此冷却它的成本也就越高。 甚至这种关系也可能是一个限制因素,因为如果无法使用我们拥有的设施进行充分的冷藏,则用于已安装制冷的基础设施将无法在将来进行扩展。 请记住,这也要注意它们必须具有的特征之一:标量。

超级计算机分类法:

超级电脑

好吧,有很多方法可以 分类超级计算机,但我有兴趣解释如何根据某些因素对它们进行分类。 正如我已经说过的,许多人不认为服务器是超级计算机,并且我认为这是一个大错误,因为它们是超级计算机,或者说,超级计算机是它们在其中寻求增强计算能力的特定类型的服务器。

所以我会说超级计算机的类型 根据其用途 是:

  • 服务器:这是一种非常常见的超级计算机,类型从几个微处理器,几个RAM模块和配置有某些RAID级别的硬盘驱动器,到具有数千个微处理器,大量可用RAM和大存储容量的大型计算机。 它们之所以被称为服务器,恰恰是因为它们旨在提供某种类型的服务:存储,托管,VPS,邮件,Web等。
  • 超级电脑:服务器场和超级计算机在视觉级别上的差异为零,您无法区分两者。 唯一使它们与众不同的是,超级计算机旨在执行复杂的数学或科学计算,模拟等。 因此,这里最感兴趣的质量是计算质量。 但是,请不要混淆我们给该组的“超级计算机”一词,并认为服务器和大型机不是超级计算机(我再次坚持)。
  • 主机:它们是特殊的超级计算机,尽管从定义上讲它们是大型且昂贵的机器,具有很高的处理大量数据的能力,例如保留某种形式的民用控制,银行交易等。 另一方面,大型机和超级计算机之间有明显的区别,那就是大型机必须增强其I / O功能并且必须更可靠,因为大型机必须访问大量数据,例如外部数据库。 通常,大型机更多地用于政府部门或某些银行或公司,而超级计算机则更受科学家和军队的追捧。 IBM是大型机领域的领先公司,例如其基于计算野兽(例如其芯片)的z / Architecture以及其上的诸如SUSE Linux之类的发行版……

关于类型 根据基础设施:

  • 聚类:这是一种通过网络将彼此连接的计算机连接在一起以创建大型超级计算机,大型机或服务器的技术。 也就是说,这是我们在前面各节中讨论的基础。
    • 集中式:所有节点都位于同一位置,例如大型机和大多数服务器或超级计算机。
    • 分布式:所有节点都不位于同一位置,有时它们可​​以相距很远,也可以按地理位置分布,但它们相互连接并像它们只是一个节点一样运行。 我们在西班牙超级计算机网络中有一个例子,该网络由分布在整个半岛上的13台超级计算机组成。 那些13是相互连接的,以便为科学界提供非常高性能的计算。 组成它的超级计算机的一些名称是:MareNostrum(巴塞罗那),Picasso(马拉加),Finisterrae2(加利西亚),Magerit和Cibeles(马德里)等。
  • 网格计算:这是开发和使用非集中式异构资源的另一种方法,通常可以将全世界分布的各种设备的计算能力,存储空间等用于某些应用程序。 例如,我们可以利用成千上万的台式机或许多用户的笔记本电脑,智能手机等的计算能力。 它们都通过Internet形成了一个互连的网格,以解决问题。 例如,SETI @ home是一个分布式或网格计算项目,可在BOINC平台(伯克利开放式网络计算基础设施)上工作,您可以通过在计算机上安装简单的软件来与之合作,以便它们占用您的资源并添加他们到那个伟大的网络寻求外星生命。 我遇到的另一个例子(虽然不合法)是一种恶意软件,它劫持了计算机资源的一部分来挖掘加密货币,其中有...

虽然它们存在 其他对它们进行分类的方法,我认为这些是最有趣的。

超级计算机有什么用?

数学公式

好吧,超级计算机具有的高存储,内存或计算能力使我们能够完成普通PC无法完成的许多工作,例如某些科学模拟,解决数学问题,研究,托管,为成千上万的企业提供服务连接的客户等简而言之,它们是我们了解的最好方式 加快人类进步,尽管所调查的某些事物具有破坏性(用于军事目的)或盗窃我们的隐私,例如某些社交网络服务器以及您肯定知道的其他情况。

服务器,大数据,云...

带有位的网络电缆

超级计算机 提供服务 如您所知,它们被称为服务器。 这些服务可能是最多样化的:

  • 文件服务器:它们可以来自托管服务,也可以托管网页,存储,FTP服务器,异构网络,NFS等。
  • LDAP和DHCP服务器:存储数据的其他特殊服务器,如以前的服务器,尽管它们的功能是另一种功能,例如在LDAP中是集中登录,在DHCP中是提供动态IP。
  • 网络服务器:它们可以包含在上一组中,因为它们还存储数据,但是它们是纯粹用于存储网页的服务器,因此可以通过HTTP或HTTPS协议从网络进行访问。 客户因此可以从其浏览器访问此页面。
  • 邮件服务器:您可以提供电子邮件服务,以便客户可以发送和接收电子邮件。
  • NTP服务器:它们提供时间同步服务,对于Internet来说非常重要。 它们是网络时间协议的缩写,并且按层分布,最低的层是最精确的层。 这些主要层受原子钟控制,这些原子钟全年变化很小,因此它们提供了超精确的时间。
  • 他人:其他服务器可以存储大型数据库,大数据,甚至可以存储多种云服务(IaaS,PaaS,CaaS,SaaS)。 VPS(虚拟专用服务器)就是一个例子,也就是说,在大型服务器中,虚拟机中会生成数十个或数百个隔离的虚拟服务器,并且客户可以拥有其中一台服务器来执行他想要的任务而不必付费真正的服务器并支付基础设施和维护费用,只需支付从提供商处获得此服务的费用即可...

至此,我们结束了这一类别中最杰出的。

IA:

电子电路中的大脑

一些超级计算机旨在 实施AI系统(人工智能)就是说,能够通过使用人工神经网络学习的结构,可以通过软件算法或神经芯片来实现。 我现在想到的例子之一是IBM Blue Gene超级计算机和由IBM和斯坦福大学开发的BlueMatter算法,能够在超级计算机中实现人工大脑,从而分析某些精神疾病或其他疾病中发生的事情。神经退行性疾病(例如阿尔茨海默氏病),因此可以更好地了解大脑内部发生的情况,并能够进行新的治疗,或者对我们最神秘的器官有更深入的了解。

此外,我们使用的许多AI服务都基于超级计算机,例如Siri或Amazon(请参阅Alexa了解Echo)等。 但也许我最感兴趣的例子是 IBM Watson,是一种超级计算机,它实现了也称为Watson的AI计算机系统,该系统能够回答以自然语言提出的问题以及对其进行编程的其他事件,例如“烹饪”或了解某些可能使上颚感到愉悦的成分混合物。

它基于一个大型数据库,其中包含来自书籍的大量信息, 百科全书 (包括英语Wikipedia)以及许多其他来源,您可以在其中搜索信息以提供答案。 它基于IBM POWER7微处理器,具有约16 TB的RAM和几个PB的存储空间,可存储大量信息,而硬件的成本超过3万美元。 此外,其开发人员表示,它每秒可以处理500 GB的信息。 令我们高兴的是,它基于一些免费项目和SUSE Linux Enterprise Server操作系统。

科学应用:

但是超级计算机主要用于 科学应用,用于一般研究或特定军事用途。 例如,它们用于执行量子和核物理的大量计算,对诸如CERN的超级计算机之类的物质的研究,用于理解基本分子或粒子行为的模拟,诸如用于研究赛车空气动力学的CFD之类的流体模拟。汽车,飞机等

也用于其他研究 化学,生物学和医学。 例如,试图更好地了解某些疾病的行为或重现肿瘤的繁殖方式,从而找到更好的癌症解决方案。 丹·布朗(Dan Brown)谈到MareNostrum时说,也许可以治愈癌症,希望如此,而且越早越好。 在UMA(马拉加大学)工作 米格尔·乌贾登(Miguel Ujaldon) 我们能够在LxA上独家采访他在NVIDIA CUDA中超级计算的发展,他可以谈论这些将改善我们健康状况的发展...我还可以想到其他实际应用,例如自然科学的研究和预测诸如天气,DNA链和突变研究,蛋白质折叠和核爆炸分析等现象。

请记住,对于所有这些研究和调查 需要大量的计算 非常精确的数学家,并且可以快速移动大量数据,如果人类必须在他们的智力的唯一帮助下完成此任务,则可能需要几个世纪的时间才能找到解决方案,而使用这些机器仅需几秒钟即可开发出解决方案残酷的数学过程。

世界上最强大的是什么?

双威太湖光

在某些情况下,我已经暗示过这一点, 世界500强最强大的超级计算机列表 定期更新。 是关于 Top500,您还将在其中找到有关这些计算机,信息等的大量统计信息,以及另一个名为 Green500 它着重于能源效率,即不仅要测量机器可以开发的总FLOPS,而且要在FLOPS / W比率最佳的500台机器中列出。

但是,也许超级计算机的功能比未列出的超级计算机强大得多,原因之一是它们旨在 秘密政府项目 或由于它们的特性而不能满足某些要求,这些要求无法通过我们将在下一部分中描述的基准测试进行分析,因此结果尚未在此Top500中发布。 此外,人们怀疑此列表中一些位置良好的机器可能会改变这些结果,因为它们经过专门优化以在这些性能分析中获得良好的评分,尽管实际上并没有那么多。

基准

FLOPS CPU与GPU的关系图

将这些超级计算机置于“ Top 500”列表中或衡量该列表以外的所有计算机的性能的测试是众所周知的,实际上,这些测试与我们在家用计算机或移动设备上执行的测试相似或相同。你的表现。 我说的是软件 基准。 这些类型的程序是非常特定的代码段,它们执行某些数学运算或循环,这些运算或循环用于衡量计算机执行它们所花费的时间。

通过 获得的等级,它将被放置在上述列表中,或者将确定机器在现实世界中可能具有的性能,用于我们之前已详细介绍的那些调查。 通常,基准测试还测试其他组件,不仅是处理单元,还测试RAM,图形卡,硬盘驱动器,I / O等。 此外,它们不仅是了解机器可以达到的性能,而且要了解需要增强或扩展的功能,都是最实用的...

MGI 测试类型 它们可以分为合成,低/高等。 前者是专门用来衡量性能的测试或程序(例如Dhrystone,Whetstone等),而底层则是直接衡量组件性能(例如内存的延迟)的测试或程序,内存访问时间,IPC等相反,高级组件尝试测量组件集的性能,例如编码,压缩等的速度,这意味着测量会干扰该组件,驱动程序和操作的硬件组件的整体性能。操作系统可以做到这一点。 其余测试可用于测量能耗,温度,网络,噪声,工作量等。

也许在超级计算机上进行基准测试的最著名的程序是 林帕克,因为它是用来衡量科学和工程系统的性能的。 该程序大量使用浮点运算,因此结果在很大程度上取决于系统的FPU潜力,而这恰恰是大多数超级计算机中最重要的测量指标。 在这里,我们可以衡量在整篇文章中讨论过的那个单位:FLOPS。

MGI FLOPS(每秒浮点操作数) 它测量计算机在一秒钟内可以执行的计算或浮点运算的数量。 您已经知道计算机可以执行两种类型的运算,即整数和浮点运算,即使用自然数集中的数字(…-3,-2,-1,0,1,2,3、3、XNUMX、XNUMX,…)。 )和有理数集(分数)。 精确地,当我们使用仿真,XNUMXD图形或复杂的数学计算,物理学或工程学时,正是这些浮点运算最为丰富,并且我们对一台能够更快处理它们的机器感兴趣……

多个名字 简称 等价
- 跳板 1
公斤 浮点数 1000
兆丰 每秒运算次数 1.000.000
GIGA GFLOPS 1.000.000.000
万亿 TFLOPS 1.000.000.000.000
佩塔 浮点数 1.000.000.000.000.000
EXA 丢包 1.000.000.000.000.000.000
泽塔 零浮点数 1.000.000.000.000.000.000.000
Yota公司 每秒浮点运算次数 1.000.000.000.000.000.000.000.000

也就是说,我们在谈论机器 双威太湖之光 它可以在最大负载下每秒执行约93.014.600.000.000.000浮点运算。 感人的!

超级计算机的各个部分:它们是如何构建的?

超级计算机的节点

您已经在整篇文章中看到了许多关于这些照片的照片。 服务器场,即那些典型的大型房间,这些房间的天花板或地板下有大量的布线,这些布线将那些大的壁橱互连在一起,这些壁橱在走廊中排成一列。 好了,现在该看看那些柜子是什么以及它们包含在里面了,尽管在这一点上,我认为您已经非常了解我们在说什么。

超级计算机的部件:

超级计算机的零件

如果您看一下以前的IBM超级计算机体系结构图像,它显示得很好。 它们是如何构成的。 可以很好地赞赏 零件 从最简单的到组装的套装。 如您所见,基本组件是芯片,即用作基础的CPU或微处理器。 例如,假设它是AMD EPYC。 然后,将所述AMD EPYC插入通常具有两个或四个插槽的主板中,因此与非MP计算机中的主板相比,它们每个都将具有1或2个EPYC。

好了,我们已经有一块带有多个芯片的电路板,当然,主板也将添加正常的组件。 placa基地 在家用计算机上,即存储库等。 这些板块之一通常被称为 计算车 如您在图片中看到的。 而且它们通常单独放置在金属抽屉中或分成几组。 这些抽屉是您在恶魔照片中看到的 节点卡。 这些节点或抽屉插入到通常按组进行标准测量的导轨中(中平面),尽管并非始终都与计算汽车的节点相对应,但是某些托架的底部和顶部没有空余空间来容纳其他“抽屉”或带有网卡的节点以及将所有这些元素与其他元素互连的链接系统机柜,PSU或电源,将包含RADI中配置的硬盘驱动器的其他托盘等。

这些我们已经讨论过的“抽屉”或节点插入其中的那些导轨以两种可能的方式安装:刀片和  机架(机架), 就像我们在不同照片中看到的一样。 就像我已经说过的那样,它们通常具有标准的尺寸,以使进入内部的元件与台式计算机塔架中的元件完全吻合,尺寸以英寸为单位,因此在托架中插入任何组件都没有问题。 此外,子通常不单独使用,因为如果需要,它们也可以分组为看起来像大柜子的柜子,并带有其他辅助元件。

取决于主机,服务器或超级计算机的大小,机柜的数量或多或少,但是它们通常总是通过功能强大的网卡相互连接。 互连系统 高性能和 光纤,这样它们就可以作为一台计算机使用。 请记住,我们谈论的是分布式机柜,因此,这些机柜可以位于同一建筑物中,也可以分布在其他位置,在这种情况下,它们将连接到WAN或Internet网络,以便它们可以协同工作。 顺便说一下,那些愚弄我们最快的家庭光纤连接的网络...

冷却方式:

冷却Google数据中心

我们已经谈到了对 冷藏实际上,当您进入服务器场或数据中心时脱颖而出的一件事就是其中的一些草稿通常带有很大的噪音。 这是因为这些冷却系统需要将系统保持在合适的温度下。 在上图中,您所看到的既不是一个房间,也不是这些中心之一的整个辅助制冷系统所处的房间,因为您看到它很大,很复杂,维护起来似乎并不便宜。

风冷的那些需要巨大 空调房如果您在夏天抱怨放置小工具的账单,请想象一下。 这产生了我之前所说的巨大噪音和草稿。 并且在存在的情况下 液冷,它并没有什么好得多的,它具有复杂的管道框架,需要进行后续检查以避免泄漏,并且需要使用数千升或数百万升的水。

讨论了有关在处理厂中使用再生水或收集雨水以免浪费大量水的问题,这也是我之前提到的在数据中心中的位置。 在海底 或在平台上 在海洋上使用海水作为制冷剂。 目前,水流经热源以提取多余的热量,然后将热水泵送到冷却塔架,以便再次进行冷却并重新开始循环。 还提出了其他实验方法,该方法在交换系统中使用其他液态制冷剂来降低水温,而无需使用昂贵的流体压缩机。

互连网络:

超级计算机的网络链接

通过哪些网络 相互联系 服务器或超级计算机的不同节点和raks是超高速光纤网络,因为应避免瓶颈,这种瓶颈会使大规模并行分组元素的这种范例变得不太有效。 如果计算机与外部连接,那么我的意思是,如果计算机与Internet连接,则它们处理的带宽将达到您想象的极大。

例如,Myrinet和Infiniand类型的群集互连技术就是典型的。 例如,在 米林特 它由专门为这种类型的连接而开发的网卡组成,这些网卡将放置在我们在部件部分介绍的抽屉或节点中。 连接到单个连接器的光纤电缆(上游/下游)将退出/进入。 互连通过机柜中的交换机或路由器进行。 它们还倾向于具有良好的容错能力,并且已经发展为达到10 Gbit / s的速度。

相反, 无限带宽 它更先进,是使用最多的方法。 它是一个具有高速度,低延迟和低CPU开销的系统,这是优于Myrnet的一个优点,它允许将CPU功率用于预期的用途,从而减少了管理系统的最低要求。 。 另外,它不是由像上一个公司那样的公司而是由一个名为IBTA的协会维护和开发的标准。

像Myrnet一样,Infiniband使用网卡(连接到PCI Express插槽)进行连接,通过光纤电缆,通过 双向串行总线 避免了长距离并行总线的问题。 尽管是串行的,但它可以在每个链接的每个方向上达到2,5 Gbit / s的速度,在某些版本中达到约96 Gbps的最大吞吐量。

维护和管理:

服务器的Sysadmin女人

超级计算机或服务器将具有一个 人员营,他们对机器实际具有的功能或服务都非常感兴趣。 通常,我们习惯于家用计算机,因为我们既是系统的系统管理员,也是使用它的用户。 但这在这种情况下不会发生,如果是服务器,则用户将是客户端,如果是超级计算机,则用户将是科学家或使用它的人……

  • 工程师和开发商:他们会注意机器或操作是否正确。
  • 系统管理员:系统管理员将负责管理安装在超级计算机上的操作系统,以使其正常运行。 通常,这些服务器或超级计算机通常不具有桌面环境或图形界面,因此所有操作通常都在终端上完成。 这就是系统管理员可以通过哑终端物理连接到计算机的原因,或者,如果可以进行远程管理,他们将通过ssh和其他类似协议远程连接以执行必要的命令。

ssh终端Linux

  • 其他管理员:如果机器上存在数据库,网站和其他系统。
  • 安全专家:它们可以有几种类型,其中一些负责物理或外围安全性,即使用监控摄像头,访问数据中心的安全性,以及避免可能发生的事故(例如火灾)等,但是还要保护系统安全以避免可能受到攻击的安全专家。
  • 技师:也将是最多样化的,负责基础结构维护的技术人员,网络技术人员,负责更换损坏的组件或进行维修的技术人员等。 通常情况下,他们的终端笨拙,其中的软件会告诉他们或标记损坏的组件,并且好像它是网格游戏一样,它会给出一系列坐标,以便技术人员知道要替换哪个过道和机架。失败的特定元素。 因此,走廊和架子将被标记为好像是停车场。 另外,在房间本身内,通常会在架子上摆放一些备用物品箱,以替换发生故障的零件。 当然,这是热完成的,也就是说,无需关闭系统。 他们提取节点,更换组件,插入节点并连接,其余的继续工作...

当我说这个词时 哑终端我指的是一种带轮子的桌子,通常在这些类型的中心中找到,并且带有屏幕和键盘。 该总机可以连接到服务器或超级计算机,以便技术人员或sysadmin可以进行检查。

操作系统:

如您所知,Linux的创建是为了征服台式机领域,但自相矛盾的是,它是当今唯一不占主导地位的领域。 这 桌面几乎被微软垄断 和Windows,紧随其后的是Apple MacOS,其份额约为6-10%,而GNU / Linux份额为2-4%...

这些数字不是很可靠,因为专用于进行这些研究的资源有时无法以适当的方式进行测试,或者在地球的某些区域存在偏差。此外,其中一些包括ChromeOS,而另一些仅是发行版GNU / Linux达到了这个配额。 例如, NetMarketShare 发表了一项研究,其中Linux占4,83%,MacOS占6,29%,这非常接近。 我想在这项研究中,他们还包括了ChromeOS。 但是,与Windows的88,88%相比,它几乎没有,尽管比FreeBSD(0,01%)和甚至不完全等同于FreeBSD的其他操作系统要好得多。

另一方面,这些胆小的数字不会出现在诸如 伟大的机器,嵌入式,移动设备等。 例如,在当今我们所关注的超级计算机领域,主导地位几乎是侮辱性的,是绝对的。 如果您查看世界上最强大的超级计算机列表,2018年100月的统计数据表明,在500个最强大的超级计算机中,有XNUMX%使用Linux。

如果回溯到1998年,那年只有一台Linux超级计算机 500更强大。 在1999年,这一数字上升到17,第二年又上升到28年的2000,从那时起,指数增长到198年的2003,在376年上升到2006,在2007年达到427,从那时起,它们一点一点地增长,直到达到一直振荡到490的当前500中的约500的数字。

因此,在这些具有完全安全性的服务器,大型机或超级计算机中,您将看到 红帽和SUSE,安装在其上的RHEL或SLES或其他不同发行版(如Debian,CentOS,Kylin Linux等)。 如果没有Linux,它将有其他一些UNIX,例如Solaris,AIX,UX或某些BSD,但是由于缺少它们而引人注目的是MacOS和Windows。 正如我在上一节中所评论的那样,通常没有台式机环境,因为您希望将这些计算机的所有功能分配给它们设计的目的,而不是在图形环境中浪费掉它们的一部分。处理它们的人几乎没有兴趣。 另一件事是客户端计算机,用户或科学家在其中工作,它们将具有图形化的环境,以更直观和图形化的方式分析信息。

如何创建自制超级计算机?

带有Raspberry Pi板的超级计算机

您可以创建一个自制的超级计算机。 实际上,在网络中,您会发现一些项目,例如由许多板组成的超级计算机。 树莓派加入。 显然,这些机器的功能不会来自另一个世界,但它们确实允许 增加许多这些板的容量 并使它们像一台机器一样工作。 这种DIY项目不仅用于实际用途,还可以教您如何以更便宜的方式和更小的规模制造超级计算机,从而使任何人都可以在家中进行制造。

可以在家里制造或比大型机器便宜的另一种类型的集群或超级计算机称为 贝奥武夫。 可以使用任何类似Unix的方式(例如BSD, Linux 或Solaris,并使用开源项目来利用这种并行的计算机联合。 它基本上可以实现将通过以太网卡和交换机连接的多台PC连接在一起并使它们作为单个系统工作的目的。

有几个 旧电脑 或者您没有使用任何Linux发行版(例如Ubuntu),则可以构建Beowulf。 我建议你回顾一下项目 MOSIX / OpenMOSIX o 鹈鹕。 有了他们,您将能够执行上述实施。 但是,如果它引起您的注意,我将来会尝试在LxA中制作一个有关如何以实际方式逐步实现它的教程。

在计算机上安装操作系统

文字模式下的YAST2

本节很容易描述,因为安装是 几乎与任何计算机相同。 只是我们必须记住,我们应该配置某些方面,例如所使用的LVM或RAID配置。 但总的来说,它与日常安装相差不远。 唯一令人震惊的是,有数百个或数千个,而不是一个处理器,一些RAM模块和一个或两个硬盘驱动器,尽管从管理员的角度来看并没有什么区别。 系统将把机器视为一个整体,只是我们拥有的资源是非凡的。

您还会注意到的区别是 没有BIOS / UEFI因为这些系统通常针对基于SPARC,POWER等的某些平台使用不同的EFI系统或其他非常特定的固件实现。 例如,英特尔®安腾®支持英特尔®EFI。实际上,如果您定期阅读我们的书,您还将了解 Linux启动。 但这并不会带来太多问题,只需熟悉此界面即可,除此之外,关闭/打开或重新启动此类设备的次数几乎为零。

爸妈! 我可以在家里有一台超级计算机吗?

云的云背景

无论我们可以使用Beowulf格式或Raspberry Pi板集群或其他类型的SBC组装的原型,对于您而言,我都是个好消息。 您可以在家中使用超级计算机的功能,而无需购买或安装任何基础结构。 只需每月支付 购买此服务 您可以依靠所有可用的电源来实现您想要使用的任何目的。 这要归功于不同的云服务,例如AWS(Amazon Web Services),Google Cloud Computing,Microsoft Azure,IBM等。

最受欢迎的云服务徽标

此外,与拥有自己的专用服务器相比,租用这种服务不仅意味着节省,而且还允许 其他优点。 例如,它可以让我们通过雇用更高的费用来快速增加服务的潜力或规模,这意味着如果我们实际拥有它,就意味着要购买新设备。 我们也不必支付额外的费用,例如电力消耗或维护人员,因为这将由供应商的技术人员来处理,这将使我们能够以合理的价格为您提供可靠性保证。

有很多服务 以优惠的价格提供VPS,即在真实服务器或超级计算机中的虚拟机上实现的虚拟服务器。 该服务器将访问实际计算机提供给您的部分功能。 您可以找到带有1和1,TMDHosting,HostGator,Dreamhost和许多其他产品的良好VPS平台。此外,您还可以在各个网站上看到VPS的特征以及价格。 在这些特征中,您将看到RAM内存,处理器,可用存储,带宽或允许的网络流量等。 另外,根据您的需要,这些VPS主要可以是Linux或Windows。

另一方面,我们还有其他一些更高级的服务,例如云服务,这使我们能够 合同IaaS (基础架构即服务)或基础架构即服务。 也就是说,它允许我们将超级计算机或服务器作为服务,而无需实际拥有它。 在这种情况下,我们拥有Microsoft Azure,Google Cloud Platform,IBM SoftLayer,CloudSigma,Rackspace,VMWare vCloud Air,Amazon Web Services,Citrix Workspace Cloud,Oracle Cloud Infrastructure等。

来源:

计算机和微处理器体系结构- 比特曼的世界

操作系统和管理- C2GL

不要忘了发表您的评论 带着怀疑,贡献或您发现我的不起眼的贡献...我希望它能帮助您更多地了解这个世界。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   牛油果

    如果我家里有2或3台计算机,如何轻松合并它们的功能? 上载教程

  2.   玛丽亚·塞西莉亚·

    优秀的文章。 感谢您的输入!!!

  3.   帕科特

    精彩的文章,非常具有说明性且易于理解。 感谢您的投入。 我只有一个疑问,就是操作系统是如何安装的,我理解内核必须是为硬件编译的,因为硬件远不是我们通常使用的软件包可以很好地工作的标准。