CPU多核一定比单核性能强吗

news2024/11/24 20:00:03

在一般人的眼中,多核性能肯定比单核强,处理器核心越多越好,但果真如此吗?

许多人认为CPU 内核越多越好。然而,情况并非总是如此。这就是为什么更多内核并非在所有情况下都是好的选择,这不仅仅是因为在芯片上放置更多内核的问题,还因为性能原因。

处理器有多少个内核更好?

许多人的想法是,内核越多越好。然而,它并不总是那样。例如,有些软件并不足以利用所有内核,因此考虑更多内核是荒谬的,而且在许多视频游戏中都会出现这种情况,其中单核性能优于多核。像这样的情况还有很多。

至于HPC领域,Top500数据似乎证明了更多 CPU 核心更好的错误想法。但是如果你和这个领域,比如联想HPC部门的、欧洲Atos的、HPE的,或者IBM的专家交谈你就会发现,情况并不总是这样。

事实上,如果您询问他们,他们会告诉您,他们的许多客户都在寻求更高的带宽、更快的 I/O 和更高的时钟速率。那么为什么像 AMD、Intel、Ampere、Annapurna、IBM、Fujitsu 等公司不断制造具有越来越多 CPU 内核的单元?

这些提供商在寻找 HPC 客户之前,需要考虑到计算能力,这越来越需要高性能的 GPGPU,而且他们还考虑到云提供商的业务,它们是超大规模企业,需要寻找更多核心。

这些云业务寻求更多的核心,因为这意味着每个节点有更多的客户端。在 VPS(虚拟专用服务器)服务器的情况下可以很好地看到这一点,其中那些物理内核变成 vCPU 以交付给平台客户端。这就是核心数量不断增加的原因。

但是,这并不是说在HPC中内核不重要,它们很重要。核心数越多,超级计算机支持的工作量就越大。此外,机器将具有更高的处理或计算能力(FLOPS),这意味着更高的性能。然而,对于 HPC,带宽也很重要。

带宽的重要性

许多 HPC 客户更关心内存带宽而不是 CPU 核心数量,但这并不意味着他们忽略了其他问题。但是,对于使用这些机器的任务或应用程序,最好具有良好的带宽和更高的 I/O 敏捷性。事实上,EPYC 和 Xeon 等也经过优化以提供此功能。

例如,我们一直在说DDR4 和 DDR5之间的差异对用户来说并不重要,没有那么多的性能提升,而且 DDR5 更贵。然而,对于 HPC,DDR5 提供了一个很好的机会,与 DDR4 相比,带宽增加了大约 50%。

一方面,在为某些软件或操作系统许可证付费时,更多的内核可能是一个劣势,因为它们是根据内核或插槽的数量收费的。当我们谈论像 SUSE Linux 或 Red Hat 这样的操作系统时,也会发生类似的情况,因为如果您需要技术服务,您还必须根据机器的内核付费。换句话说,更多的核心也将意味着更多的软件方面的支出。

对于 HPC 处理器,许多人选择使用高带宽或HBM 内存,以及 CPU 内核来提高带宽。比如Intel Xeon Max“Sapphire Rapids”就是这样,它在CPU周围有HBM2E内存芯片,可以实现64GB/s的内存带宽。当然,必须考虑到数据在这个 HBM 和伴随它的 DDR 之间的移动,扩展 HBM 的容量限制,将在很大程度上取决于芯片的固件和 ISV(Independent软件供应商)。

另一方面,虽然 AMD 也一直在寻求 HBM,但他们选择在他们的 EPYC(霄龙)中添加更多的内存通道以获得带宽,尽管这有一些缺点,例如需要占用主板空间和稍高的延迟。此外,使用像 Genoa 这样的 12 通道在带宽方面不会接近 Xeon Max,但这是另一种有趣的方法。正是这让他们可以使用普通的 DDR5,而不依赖于 ISV,这可能是一个主要障碍。

例如,对于研究天气、空气动力学、流体等的流体动力学或 CFD 等工作负载来说,这是必不可少的,因为它们是带宽敏感的应用程序,在处理过程中必须使用内存中的大量数据。因此,在这些情况下增加带宽会带来显著的改进。

此外,由于 CPU-RAM 带宽问题,许多客户选择使用 GPGPU而不是 CPU 来处理某些工作负载,但这可能会随着 HBM 集成到 CPU 中而改变。

平衡

您肯定听说过很多有关服务器和 HPC 方面的负载平衡的信息。这意味着以平衡和高效的方式在不同处理器之间分配必须处理的任务的方式。为此,在平衡处理核心方面,拥有更多带宽具有优势。因此,我们在行业中看到更多的 HBM,尤其是在 AI 工作负载方面,也就不足为奇了。此外,Ampere、Fujitsu A64FX 等一些 CPU 也选择了 HBM。

此外,AMD在其X系列EPYC中也做了一些有趣的事情。虽然它没有在单独的芯片上使用 HBM,但它在其处理芯片之上使用了高速、高带宽的 SRAM 内存芯片来支持 L3 缓存,也就是3D V-Cache。

这些3D 封装显示出巨大的优势,因为这种存储器的延迟低于 RAM,并且直接通过 TSV 链接。因此,它不会像其他情况那样依赖于主 RAM 内存的延迟和带宽。

事实上,AMD 在其Milan-X中证明,由于其卓越的 L3,它可以增加工作负载,从而提高需要高带宽的密集型工作负载的性能。例如,使用 Synopsys VCS 进行的测试显示出 66.4% 的改进。然而,这些类型的封装具有较高的性价比,因此并非都是优势。

因此,HBM 似乎有望在工作负载(例如 CFD 等)方面提供更大的灵活性和收益。这意味着也许将来我们会看到更多带有 HBM 的单元。尽管我们将看看最终是否可以将这两种技术混合起来作为解决方案,即使用 3D 封装将 HBM堆叠在计算单元上。

更高的频率与更多的 CPU 内核

正如可以验证的那样,CPU基本时钟频率在过去十年中一直停滞不前。目前,我们的 CPU 在大多数情况下的时钟频率在 2 到 3 Ghz 之间,但有一些例外情况可能会超过这些数字,而且我们不是在谈论 Turbo 模式。

但这不仅与制造技术有关,还与 CPU 核心数量的扩展有关。您在单个硅芯片上封装的内核越多,您可以使用的功率就越少,因此需要管理时钟速度。如果找不到解决方案,3D 封装甚至可能会恶化这种情况,因为我们已经看到,3D 封装也需要通过将芯片堆叠在一起来降低功耗。

APU领域

GPU也已成为提高性能的关键部分,因为这些单元可以比 CPU 更快、更高效地处理某些工作负载,因为它们的内核数量更多。这就是为什么它们近年来被用作某些工作负载的加速器。

在服务器和HPC领域,GPU已经扮演了非常重要的角色,因此,只需看看几年前的Top500榜单和现在的榜单。

因此,AMD 想在其 Fusion中看到未来,将 CPU 和 GPU 结合起来也就不足为奇了。然而,这些 APU 已经出现在低功耗台式机或笔记本电脑中,但并未在其他领域占据主导地位,例如 HPC。但这种情况也在改变。

就是这样,最近AMD展示了其新产品 Instinct MI300。它不是传统的图形卡,不像我们过去看到的用于加速 HPC 和 AI 的其他 Instincts。在这种情况下,它是一个APU(加速处理单元)。这个单元结合了 Zen 4 内核和 GPU 内核。

Instinct MI300 是用于数据中心的 CPU+GPU 混合体。它采用 1460 亿个晶体管,采用小芯片设计和 3D 封装。它使用两种制造工艺,一些是 6nm 芯片,另一些是 5nm,都是使用台积电的工艺。里面有:

  • 24 个 Zen 4 CPU 核心(它不会取代 CPU,事实上,它将与 AMD EPYC 4th Gen Genoa 一起出现在主板上)。
  • 具有 CDNA3 架构的 GPU。
  • HBM3 芯片,内存为 128 GB,总线宽度为 8192 位。

与 Instinct MI250 相比,这可以将 AI 工作负载加速 8 倍,并提供高达 5 倍的每瓦特 TFLOPS 性能。

就其本身而言,英特尔已经对其名为 Falcon Shores 的 CPU-GPU 架构做了类似的事情。这将具有 Xe 图形,这是 Ponte Vecchio GPU 和即将推出的 Rialto Bridge 的核心。此外,它还将包括 CPU 内核和 HBM3 内存池。而不是像 AMD 那样的 APU,Intel 一直想称它为 XPU。

与此同时,英伟达也做了类似的事情,尽管它看起来更像 AMD Instinct MI300 而不是英特尔的 Falcon Shores。这是 Grace-Hopper,它包括一个带有 512 GB LPDDR5X 内存的 Grace CPU 裸片(基于 ARM),以及一个带有 80 GB HBM 并通过 NVLink 互连的 Hopper GPU 裸片。

然而,这些新型混合动力驱动器也对高性能设备制造商提出了挑战,因为它们意味着数百瓦的非常高的消耗,甚至可能很快达到1 kW 以上的 TDP。这在家用电脑上是个问题,但当涉及拥有成百上千个此类驱动器的电脑时,问题就更糟了,因为它涉及散热和提供足够电力的挑战。

此外,不仅如此,软件生态系统也是一个问题,必须进行调整才能利用这些新单元。然而,随着这些问题的解决,HPC、服务器和数据中心中的许多现有瓶颈将得到解决。

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

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

相关文章

数据结构——单向链表(万字讲解)

单向链表(又名单链表、线性链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过从头部开始,依序往下读取。 //单链表的打印 void SLTPrint(SLTNode* phead) {SLTNode* cur phead;while (cur){pri…

数据孤岛如何形成,企业如何破解?

国内企业数据化现状 在数字化时代,数据已经成为了企业不可或缺的重要资产。企业内部部门或系统之间存在着数据割裂现象,导致数据无法流通和共享,从而形成数据孤岛的现象。对于企业来说,数据孤岛问题是十分普遍的,它阻…

如何在项目管理中获得更多权威和影响力?这篇文章告诉你!

1 透明力 信息力和感知力是对环境的观察、观察、再观察,这些 观察的结果只有透明出来,才能发挥效用。你要想法把你看到的问题可视化,让决策者和团队都能看到问题。即透明的力量。 1.1 怎么运用透明的力量呢? 我曾在某团队经常听…

win11 系统安装 wsl

1. 打开虚拟设置 在【开始】搜索【启用或关闭 Windows 功能】,打开Windows 功能对话框,勾选“适用于Linux的Windows子系统”和“虚拟机平台”两个选项。 2. wsl 安装 管理员模式启动powershell 设置wsl版本:wsl --set-default-version 1 更新…

业务 IT 一体化:华为云 SaaS Package 做到了

SaaS 这个概念在近两年可谓十分火热,特别是进入到了后疫情时代,似乎离不开 SasS。然而很多人并没有真正理解 SaaS 的概念,对 SaaS 的认知还是比较片面。 你要弄清 SaaS,首先就绕不开 laaS 和 PaaS。下面这张图可以很直观地让你明…

leetcode40. 组合总和 II (java-回溯算法)

组合总和 II leetcode40. 组合总和 II题目描述解题思路代码演示 回溯算法专题 leetcode40. 组合总和 II 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/combination-sum-ii 题目描述 给定一个候选人编号的集合 candida…

【滤波】扩展卡尔曼滤波器

本文主要翻译自rlabbe/Kalman-and-Bayesian-Filters-in-Python的第11章节11-Extended-Kalman-Filters(扩展卡尔曼滤波)。 %matplotlib inline#format the book import book_format book_format.set_style()我们发展了线性卡尔曼滤波器的理论。然后在上两…

Fiddler之日常使用简介

目录 前言: Fiddler界面简介 一、Fiddler抓取http、https请求配置 二、抓取指定域名会话 三、http请求统计试图 前言: Fiddler是一款功能强大的Web调试工具,它可以帮助开发人员在开发和测试过程中捕获、修改和检查HTTP请求和响应。 使用Fiddl…

Python基础(11)——Python循环(while、for)

Python基础(11)——Python循环(while、for) 文章目录 Python基础(11)——Python循环(while、for)目标一. 循环简介1.1 循环的作用1.2 循环的分类 二. while的语法2.1 快速体验 三. w…

全球开源 AI 游戏开发挑战赛,只等你来!

我们在之前的文章中 预告过 (*划重点,IP 属地法国):7 月初,我们将举办一次与 AI 游戏相关的黑客松活动,这是有史以来的首次开源游戏开发挑战赛,借助人工智能工具释放你的创造力,一起打破游戏开发的边界。 比…

Python自动化测试 软件测试最全教程(附笔记),看完就可就业

最近看到很多粉丝在后台私信我,叫我做一期Python自动化测试的教程,其实关于这个问题,我也早就在着手准备了,我录制了一整套完整的Python自动化测试的教程,都上传在B站上面,大家有兴趣的可以去看一下&#x…

Redis 2023面试5题(二)

一、Redis key没设置过期时间却被redis主动删除了 如果一个 Redis 键没有设置过期时间,那么 Redis 无法判断该键是否应该自动删除。因此,如果一个没有设置过期时间的键被 Redis 主动删除了,可能是以下原因之一: 内存不足&#x…

工程机械比例阀电流采集方案

工程机械的需求量变得越来越大,而关于工程机械,其比例阀的控制问题不容忽视。比例阀是一种新型的液压控制装置。在普通压力阀、流量阀和方向阀上,用比例电磁铁替代原有的控制部分,并按输入的电气信号连续、按比例地对油流的压力、…

VUE 2X 条件列表渲染 ⑧

目录 文章有误请指正,如果觉得对你有用,请点三连一波,蟹蟹支持✨ V u e j s Vuejs Vuejs条件渲染列表渲染 基本列表 Key的原理 列表过滤 列表排序 列表更新小问题 监测数据改变的原理~对象 V u e S e t VueSet VueSet的…

常见web中间件漏洞复现总结

文章目录 IISPUT漏洞iis6.0 解析漏洞IIS短文件漏洞远程代码执行(RCE-CVE-2017-7269)iis7.x文件解析漏洞HTTP.SYS远程代码执行 (MS15-034) apache未知扩展名解析漏洞AddHandler解析漏洞目录遍历漏洞Apache HTTPD 换行解析漏洞(CVE-2017-15715) Nginx文件解…

RabbitMQ入门学习笔记

文章目录 RabbitMQ学习笔记前言1、RabbitMQ概述1.1 MQ概述1.2 RabbitMQ概述 2、RabbitMQ的安装3、RabbitMQ初体验4、工作队列4.1 消息应答4.1.1 消息应答简介4.1.2 消息手动应答 4.2 队列和消息的持久化4.2.1 队列持久化4.2.2 消息持久化 4.3 消息分发4.3.1 不公平分发4.3.2 预…

[进阶]Java:线程池、处理Runnable、Callable任务、使用Executors得到线程池

什么是线程池? 线程池就是一个可以复用线程的技术。 不实用线程池的问题? 用户每发起一个请求,后台就需要创建一个新线程来处理,下次新任务来了肯定又要创建新线程处理的, 而创建新线程的开销是很大的,并…

MIT 6.S081 (BOOK-RISCV-REV1)教材第四章内容 --中

MIT 6.S081 教材第四章内容 -- 中 引言Debug Trap代码执行流程进入Trap前发生Trap时uservec函数Issue usertrap函数usertrapret函数userret函数 小结 引言 MIT 6.S081 2020 操作系统 本文为MIT 6.S081课程第四章教材内容翻译加整理。 本课程前置知识主要涉及: C语言(建议阅读…

二进制部署k8集群(上)搭建单机matser和etcd集群

1. 单机matser预部署设计 组件部署: 2.操作系统初始化配置 注意:该操作在所有node节点上进行,为k8s集群提供适合的初始化部署环境 #关闭防火墙 systemctl stop firewalld systemctl disable firewalld iptables -F && iptables -t n…

985大学学生故意挂科为延毕?赖校族的无奈。

“他室友挂了4科,答辩随便写了几句,一问三不知。” “然后呢?他室友延毕了吗?” “没有。导员找他谈话,说让他室友按时毕业,因为想延毕的人太多了,别人挂的都比他室友多。” 以上对话不仅仅是…