CPU(中央处理器) 是一台计算机的运算核心和控制核心。CPU 主要功能是解释计算机指令以及处理计算机软件中的数据。CPU 由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。
CPU 的运作原理可分为四个阶段: 提取 (Fetch)、解码 (Decode)、执行 (Execute) 和写回 (Writeback)。 CPU 从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令。
CPU 的主要性能参数包括:主频,倍频,外频。CPU 的主频也叫时钟频率,CPU 主频为 CPU 的额定工作频率,当内核数目和缓存大小一样时,主频越高的 CPU 性能越好。通常,主频越高 CPU 处理数据的速度就越快,CPU 的主频=外频×倍频系数。
为什么会有外频和倍频的区分呢?这个是和 CPU 的发展有关的。简单说来,就是 CPU 发展太快,而其他硬件无法达到同样频率来交互,于是 CPU 进行妥协,将外频作为和主板其他部件之间通讯的频率,而工作频率靠倍频来调节提升。
- CPU 的主频,即 CPU 内核工作的时钟频率 (CPU Clock Speed)。通常所说的某某 CPU 是多少 MHz 的,而这个多少兆赫就是 「CPU 的主频」。
- 外频是 CPU 的基准频率,单位是 MHz。CPU 的外频决定着整块主板的运行速度。
- 倍频系数是指 CPU 主频与外频之间的相对比例关系。一般情况下,同代 (同针脚) 的 CPU,其外频往往是一样的,只是倍频系数的变化导致主频不同。
Intel TurboBoost 技术中文叫做 Intel 睿频加速技术,此技术运行 Intel CPU 工作在标称频率之上,性能分配上实现按需分配。
2017 年 7 月份,英特尔 (Intel) 正式发布了代号为 Purley 的新一代服务器平台,包括代号为 Skylake 的新一代至强 (Xeon)CPU,命名为英特尔至强可扩展处理器 (Intel Xeon Scalable Processor,SP),也宣告了延续 4 代的至强 E5/E7 系列命名方式的终结。
至强可扩展处理器不再以 E7、E5 的方式来划分定位,而代之以铂金 (Platinum)、金 (Gold)、银 (Silver)、铜 (Bronze) 的方式。
Skylake 是新命名方式的一代,Cascade Lake 是二代,两代共用 Purley 平台。
- 第一位数字:8(铂金)、6/5(金)、4(银)、3(铜)
- 第二位数字:(新命名体系下的) 代次
- 第三四位数字:具体 SKU(库存单位) 编号
Intel 处理器工艺和架构更新成为 Tick-Tock。Tick 年 (工艺年) 更新制作工艺,Tock 年 (架构年) 更新微架构。
2006 年,Intel 正式发布了酷睿 2/Core 2 处理器,同时宣布了每年更新 CPU 的 「Tick-Tock」 计划,「Tick」 代表 CPU 制作工艺上的改进,而 「Tock」 则代表 CPU 架构上的更新。
Tick-Tock 就是时钟的 「嘀嗒」 的意思,一个嘀嗒代表着一秒,而在 Intel 的处理器发展战略上,每一个」Tick-Tock」 代表着 2 年一次的工艺制程进步。
这样在制程工艺和核心架构的两条提升道路上,总是交替进行,一方面避免了同时革新可能带来的失败风险,同时持续的发展也可以降低研发的周期,并可以对市场造成持续的刺激,并最终提升产品的竞争力。
多核处理器把多个 CPU(核心) 集成到单个集成电路芯片 (Integrated Circuit Chip) 中。一个双核的 CPU 有 2 个中央处理单元,操作系统可以看到真正的 2 个核心,所以 2 个不同的进程可以分别在不同的核心中同时执行,这大大加快了系统的速度。由于 2 个核心都在一个芯片上,因此它们之间的通信也要更快,系统也会有更小延迟。
超线程 (Hyper Threading) 其实就是同时多线程技术,是一项允许一个 CPU 执行多个控制流的技术。它的原理就是把一颗 CPU 当成两颗来用,将一颗具有超线程功能的物理 CPU 变成两颗逻辑 CPU,而逻辑 CPU 对操作系统来说,跟物理 CPU 并没有什么区别。因此,操作系统会把工作线程分派给这两颗 (逻辑)CPU 上去执行,让 (多个或单个) 应用程序的多个线程,能够同时在同一颗 CPU 上被执行。注意:两颗逻辑 CPU 共享单颗物理 CPU 的所有执行资源。实际上,超线程技术就是对 CPU 的虚拟化。
多核处理器把多个 CPU(核心) 集成到单个集成电路芯片中。多核 CPU(处理器) 是指在一枚处理器中集成两个或多个完整的计算引擎 (内核)。超线程 (hyper-threading) 其实就是一项允许一个 CPU 执行多个控制流的技术。
关于异构,从计算单元角度来看,x86 处理器之外的计算单元,都可认为是异构单元,例如 GPU、FPGA 加速卡等。
从软件系统集群角度来看,基于不同处理器的服务器可以认为是异构;例如基于 E5-2650v4 的大数据集群使用基于 Gold 5115 或者鲲鹏 916 的服务器来扩容,就属于扩容异构节点。
关于众核,它是相对于单核而言,即最早的芯片只有一个核,到后来的双核 (Dual Core) 和四核 (Quad Core)。超过这个数量的,不多于 10 个核的,一般称为多核 (Multi Core)。当前的 CPU 核数达到 32~64,业界称为众核 (Manycore)。多核和众核之间并没有严格的限制。
随着云计算,大数据和人工智能技术发展,边缘计算发挥着越来越重要的作用,让越来越多的数据在边沿计算,补充数据中心算力需求。边沿计算对计算架构要求多样化,需要不同的处理器架构来满足不断增长的算力需求,同时需要 GPU,NPU 和 FPGA 等技术加速特定领域的算法和专用计算。以此,不同 CPU 架构,不同加速技术应用而生。
目前两大 CPU 处理器指令体系 CISC 和 RISC 架构都在互相取长补短,走向融合。CISC 借用 RISC 的理念优化指令系统效率,RISC 引入增强指令提高复杂任务处理效率。所以,不必过分关心 CISC 和 RISC 的区别,两种架构都是非常先进,并且会长期发展演进的。
CISC 复杂指令集特点在于指令多,一条指令执行多个功能。优点体现在特定功能执行效率高,例如多媒体处理;缺点是系统设计复杂,执行效率低;典型架构包括 x86。
RISC 精简指令集特点是指令少,复杂任务由多个精简指令组合完成。优点是常用工作执行效率高,功耗低;缺点是部分复杂任务处理效率偏低,例如多媒体处理;典型架构是 ARM、Power、MIPS、Alpha 和 SPARC 等。
RISC 架构相比 x86 架构来说,物理核心更多,适用于当前数据中心主流的分布式计算场景;例如大数据、分布式存储、HPC 等;能耗更低,节能环保,相比同样性能的 x86 处理器,功耗低 20% 左右。
然而,RISC 架构相比 x86 架构也存在明显不足,如单核性能稍弱于 x86;相比于 Intel AVX512,向量指令运算能力偏弱,在 HPC 部分场景性能低于 x86;对通用场景无任何影响;
ARM 架构 RISC-V 和 MIPS 架构都是比较主流和流行的 RISC 架构,但两者存在比较大的差异。
- ARM 具有更好的软件生态:ARM 处理器在移动终端、IoT 等领域广泛使用,也建立了良好的软件生态;移动端和数据中心的基础软件库是通用的;
- ARM 性能更高:ARM 是主流的,活跃的架构,有多家主流参与者,迅速发展,目前性能已经可以媲美主流 x86 处理器。
MIPS 公司经营不善,MIPS 架构已经基本没有发展。Wave Computing 公司宣布开源 MIPS,龙芯是中国科学院计算所自主研发的通用 CPU,基于 MIPS 指令集研发几代 CPU,因此,MIPS 技术还是相对比较成熟。MIPS 指令集架构 (ISA) 和 MIPS 的最新核心 R6 在 2019 年第一季度公开发布。
随着技术贸易战愈演愈烈,自主研发已经成为当代热词,中国研发 CPU 芯片的公司也犹如雨后春笋,目前主要的 CPU 研发公司包括: 华为 (ARM),飞腾 (ARM),海光 (x86),龙芯 (MIPS),兆芯 (x86),申威 (Alpha) 等。
这些公司中,有多家为服务器厂商提供芯片。目前采用上述芯片提供服务器的厂商包括:技嘉 (Cavium),HPE(Cavium),联想 (Ampere、飞腾),Ampere(Ampere),浪潮 (飞腾),长城 (飞腾),同方 (飞腾),宝德 (飞腾),云海麒麟 (飞腾)。
芯片的整体性能与制造工艺和内核的深度设计都有关系。工艺越先进,芯片集成度越高,芯片运行频率越快,功耗相对越低,整体竞争力越强。
目前主要的 CPU 芯片代工生产商是台积电 (TSMC),它是全球最大的晶圆代工龙头企业,拥有世界最高 7nm 生产工艺的台湾公司,制造工艺全球领先。此外,可代工生产 CPU 的中国企业包括中芯国际、华虹半导体和华力微电子等公司,中芯国际预计 19 年可实现 14nm 工艺,国产厂商也发展迅速。
本文作者为 Hardy,转载请注明。
你图片的水印是每张都自己手动加的还是有脚本啊??
--- 原 沉潇先生
@一只胖橘不是,我用的七牛云的存储,可以设置