CPU 架构:ARM 和 x86 架构区别

这篇具有很好参考价值的文章主要介绍了CPU 架构:ARM 和 x86 架构区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

计算机有两种主要的 CPU 架构可供选择。Windows PC 通常建立在 Intel 和 AMD 使用的 x86 平台上,而 Apple 的计算机则使用该公司自己的基于 ARM 架构的 M1 和 M2 处理器。

这些方法之间存在差异,并且对性能的意义具有重大影响。

ARM 与 x86:指令集

x86 和 ARM 处理器平台做相同的事情,但它们以完全不同的方式完成。它们的内部逻辑以不同的方式连接,具有不同的内部数据寄存器配置和不同的hard-coded指令集。也就是说,他们以不同的方式运行软件。

在 x86 平台上,处理器的内部结构和指令集最终基于 Intel 8008,这是一款于 1972 年首次亮相的 8 位 CPU。事实上,为该芯片编写的机器码程序仍然可以汇编并在英特尔或AMD的最新处理器上运行。

不过,从那时起,硬件自然有了很大的发展。在 8008 之后是 8088,然后是 16 位 8086,它为最初的 IBM PC 服务。在 1980 年代,紧随其后的是 80186、80286 等——因此被称为“x86”绰号。

经过几代人的努力,引入了支持多任务处理和虚拟内存的新功能;还增加了对 32 位和 64 位操作的支持,使计算机能够高效地处理庞大的数据集。一系列扩展可加速特定任务,例如图形处理、虚拟化和数据加密。

Apple 的处理器基于ARM 架构。这起源于 1980 年代中期的 Acorn Computers。该公司没有像以前的家用电脑那样从外部供应商那里购买芯片,而是着手设计一种性能优于现有竞争对手的新处理器。它成功了:在推出时,基于ARM的Acorn Archimedes是金钱可以买到的最强大的家用计算机。

如今,ARM平台由剑桥的Arm集团拥有和开发,与x86一样,它自成立以来一直在不断发展壮大。该平台的后续版本增加了 64 位支持和大量扩展,以加速常见的数学运算——包括在最新的 ARMv9 版本中,安全和人工智能 (AI) 功能。

RISC vs CISC:永恒的竞争

虽然 ARM 处理器可以做 x86 可以做的任何事情,但它们有不同的优势和劣势,因为它们遵循不同的设计理念,称为精简指令集计算机 (RISC)。该名称最初代表“Acorn RISC Machines”,后来随着市场扩展,更改为“Advanced RISC Machines”。


在 1980 年代和 1990 年代,英特尔和其他芯片制造商正在将越来越多的特性和功能构建到芯片中,使程序员只需几行代码即可执行复杂的操作。这些处理器后来被称为复杂指令集计算机 (CISC) 芯片。

RISC的理念则相反,旨在通过将CPU简化为最低限度的基本功能,使CPU尽可能简单。因此,ARM 架构仅使用 34 条指令,这些指令主要处理简单的数学运算并在寄存器和存储器位置之间移动数据。相比之下,英特尔 8086 支持 81 条指令,允许更高级的数据操作——随着后续的修订和扩展,它已膨胀到 200 多条指令。

RISC方法似乎有悖常理。较小的指令集意味着程序需要更长、更复杂才能获得相同的结果。但是,RISC芯片的物理设计可能比CISC芯片简单得多。这可以使制造更容易、更便宜,并且可以以更快的速度分解指令——在大多数情况下,每个操作都在一个时钟周期内完成。它也可以消耗更少的功耗,这就是为什么ARM处理器在智能手机中占主导地位的原因,因为电池寿命是关键。

虽然 CISC 和 RISC 方法是相反的,但差异并不像想象的那么重要。如今,很少有程序是用纯汇编语言编写的,因此开发人员无需担心底层架构:他们可以在让解释器或编译器处理翻译之前用 Python、C# 或其他语言编写。事实上,Apple 基于 ARM 的 Mac 包括一个实时转换层,可以运行为 x86 系统编写的程序,而无需修改。

功耗的差异也比以前小。多年来,英特尔一直在努力与ARM芯片的低功耗相匹配,这不仅是因为其CPU设计的复杂性,还因为其内部制造工艺无法像竞争对手那样快速缩小芯片内部晶体管的尺寸。这是一个令人尴尬的点:最新的英特尔芯片仍在使用 10nm 制造工艺(被称为“Intel 7”),而苹果的 M 系列处理器自 2020 年推出以来一直使用 5nm 工艺。

为了提供帮助,英特尔于 2021 年底发布的第 12 代 Alder Lake 处理器引入了异构内核设计。以前的英特尔芯片通常具有四个或八个相同的内核,而当前的型号将轻量级的“效率内核”(E 内核)与强大的“性能内核”(P 内核)相结合,只有在最苛刻的任务需要它们时才会发挥作用。这个想法实际上是由 Arm 开创的——它引入了所谓的“big.LITTLE“设计——但现在英特尔已经加入进来,我们经常看到 Windows 笔记本电脑可以提供超过 10 小时的视频播放续航。

哪些科技公司制造处理器?

除了架构之外,两种主要计算架构之间的另一个显着区别是:与英特尔不同,Arm 不制造自己的任何处理器。相反,该公司将其设计授权给公司,然后公司可以根据需要定制它们,并按照自己的规格制造它们。就Apple Silicon而言,苹果使用核心ARM逻辑,但增加了许多自己的优化,并将制造外包给台积电。

芯片向最终用户推销的方式也不同。虽然英特尔的所有 x86 处理器都使用相同的底层架构,但它提供了大量不同的配置。在每一代酷睿 CPU 中,都有酷睿 i3、i5、i7 和 i9 变体,它们进一步细分为针对移动、台式机或游戏系统的不同型号范围。它们都具有不同数量的处理内核、不同的缓存内存量、不同的时钟速度和不同的电源要求。这很令人困惑,当你选择计算机时,你需要根据自己的需求选择一种型号来满足自己需求。

相比之下,在撰写本文时,苹果总共提供了七种计算机芯片,即 M1、M1 Pro、M1 Max、M1 Ultra、M2、M2 Pro 和 M2 Max。它的阵容比英特尔的要简单得多,即使是普通的 M1 也能与中端英特尔芯片竞争。

ARM 和 x86 CPU 如何访问 RAM

苹果的芯片和英特尔的芯片之间还有最后一个区别——这不是ARM架构所固有的,而是苹果自己做出的设计决定。英特尔的芯片依赖于外部系统RAM,而苹果则将内存直接集成到其M系列处理器的芯片中。

这意味着你永远无法升级 Apple Silicon 计算机上的内存,这可能会导致在选择规格时做出一些痛苦的决定。这也意味着主流芯片上根本没有真正的大量内存分配:M1 提供最大 16GB 的 RAM,而 M2 的 RAM 限制为 24GB。如果你想要 32GB 或更多,则需要升级到昂贵的 M1 Pro、Max 或 Ultra 系统。相比之下,英特尔的所有第 12 代和第 13 代处理器都可以使用高达 128GB 的 RAM。

然而,由于苹果的RAM实际上位于处理器逻辑旁边,并通过最快的结构连接到它,因此其处理器可以非常快速有效地访问代码和数据。标准 M1 的最大内存带宽为 68GB/秒,而 M2 高达 100GB/秒,M1 Pro、Max 和 Ultra 型号分别高达 200GB/秒、400GB/秒和 800GB/秒。对于英特尔来说,这完全取决于处理器、RAM 和主板的具体情况,但即使是最新、最快的酷睿 i9 也被限制在理论上的最大值为 90GB/秒。

更重要的是,苹果使用所谓的“统一内存架构unified memory architecture”,这意味着整个内存范围都可以由CPU或片上GPU直接访问。与传统的 PC 架构相比,这提供了巨大的效率优势,在传统的 PC 架构中,CPU 和 GPU 各自具有独立的内存库,并且如果不来回复制数据,就无法协同处理相同的数据。

是什么让 AMD 比 Intel 更好?

除了英特尔和苹果之外,CPU市场还有第三个主要参与者。然而,AMD的芯片没有如此独特的身份,因为它们使用与英特尔相同的核心x86架构和指令集。

关于英特尔和AMD的共生关系

为什么英特尔让其最大的竞争对手使用其专有架构?在 1980 年代初期,IBM 希望在最初的 IBM PC 中使用英特尔的芯片,但不想依赖单一的芯片来源。

它告诉英特尔,只有当第二家公司可以在许可下制造硬件时,它才会使用x86处理器。AMD 被授权制造 Intel 8086、80186 和 80286 处理器。后来,AMD创造了自己的芯片设计来与英特尔的芯片竞争。1990 年代后期发布的 K5 和 K6 以低于英特尔奔腾处理器的价格提供 x86 兼容性。

2000 年后,AMD 将新的 64 位处理模式嫁接到 x86 架构上,并增强了支持处理更大数字、更大数据集和更多 RAM 的功能。英特尔获得了这些扩展的许可,两家公司实际上相互依赖

尽管AMD的处理器可以运行与英特尔相同的程序,但存在一些关键差异。AMD销售自己的芯片,但并不自己制造芯片;这意味着它可以使用任何提供最佳技术的代工厂。虽然前两代Ryzen CPU是由Global Foundries生产的,但AMD在2019年转向台积电,以利用其7nm制造工艺,最新的Ryzen 7000系列芯片使用该公司的5nm工艺。

AMD的设计也经常比价格相似的英特尔芯片包含更多的内核,部分原因是AMD的“chiplet”方法。它不是将所有东西都构建在一个芯片上,而是将设计分解为多个处理器内核(chiplets),然后与共享资源(如cache)连接在一起。实际的核心数量可能具有误导性,因为两家公司都使用多线程技术,允许单个核心同时为两个执行线程提供服务。英特尔最近采用的效率核心进一步混淆了问题,这些核心对峰值性能没有贡献。

不过,总的来说,你通常会从AMD芯片中获得更多的多核处理能力--为了支持这些内核,AMD往往提供比英特尔更多的片上内存。虽然 Ryzen 处理器不会像 Apple 的芯片那样将整个 RAM 分配放在芯片芯片上,但它们通常具有大型缓存,可以帮助它们全速处理数据和指令,而无需等待从 DIMM 获取信息。

唯一的问题是多核性能到底有多有价值。大型数据库服务器和图形渲染程序可能会从并行处理能力中受益匪浅,但许多桌面应用程序大多是单线程的。在实践中,使用更少、更快的内核可能会获得更好的体验。文章来源地址https://www.toymoban.com/news/detail-859903.html

到了这里,关于CPU 架构:ARM 和 x86 架构区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • X86和arm的区别

    硬件上的区别 x86 系统中的硬件组件(如声卡、显卡、内存、存储器和 CPU)都是相互独立的。大多数组件都有单独的芯片,称为控制器。我们可以对这些组件进行更改或扩展,而不会影响连接性或整个硬件平台。 ARM 处理器没有单独的 CPU。相反,处理单元与其他硬件控制器位

    2024年02月03日
    浏览(6)
  • ARM和X86、X86和X64、Intel和AMD、CPU和GPU介绍

    ARM和X86、X86和X64、Intel和AMD、CPU和GPU介绍

    X86 和 ARM 都是CPU设计的一个架构。X86 用的是复杂指令集。ARM用的是精简指令集。 指令集其实就是机器码,机器码上是汇编,汇编之上是程序语言例如java、c、c#。 复杂指令集是在硬件层面上设计了很多指令,所以编程会简单些。 精简指令集是在硬件层面上设计的指令比较少

    2024年02月04日
    浏览(4)
  • x86 和 x64 arm的区别

    x86和x64是基于英特尔x86架构的复杂指令集架构(ISA),而ARM是一种精简指令集架构。 假设我们现在要开发一个cpu,就好比说我们去修建一栋楼,开发商会先将图纸设计好。设计好之后由施工单位按照设计图去建造。在建造的这个过程中,施工方是要按照国家一定的规范来设计

    2024年01月19日
    浏览(9)
  • arm和x86架构服务器拉取arm64架构的docker镜像

    arm和x86架构服务器拉取arm64架构的docker镜像

    dockerhub提供的镜像部分支持arm64架构 Docker arm架构服务器拉取docker镜像,默认是arm架构  查看docker镜像的架构 x86平台拉取arm平台的docker镜像 对docker版本有限制 docker运行其他平台容器,需要使用--platform参数指定容器 docker19.03.9及以上版本才支持--platform参数 查看是否开启experi

    2024年01月20日
    浏览(27)
  • x86架构上构建arm64架构的docker镜像

    x86架构上构建arm64架构的docker镜像

    项目需要提供arm64架构上的centos7对应docker镜像,然后本地宿主机只有x86架构机器,因此需要在x86机器上构建centos arm64架构的docker镜像 宿主机操作系统:centos7.7 amd64架构 docker版本:19.03.15 ARM,AMD,X86,AArch64的概念可以参考: https://blog.csdn.net/Bubbler_726/article/details/88397357 下载 qemu-

    2024年02月11日
    浏览(14)
  • 『ARM』和『x86』处理器架构解析指南

    『ARM』和『x86』处理器架构解析指南

    如果问大家是否知道 CPU,我相信不会得到否定的答案,但是如果继续问大家是否了解 ARM 和 X86 架构 ,他们的区别又是什么,相信 可能部分人就会哑口无言 了 目前随着深度学习、高性能计算、NLP、AIGC、GLM、AGI 的技术迭代,助力大模型快速发展,对于 多元算力结合(CPU+GP

    2024年02月08日
    浏览(46)
  • ARM和X86架构对比分析-2023-4-27

    架构 项目 ARM X86 性能 CPU:几百兆,最近才出现1G左右。制程使用不到65nm制程的工艺。 CPU: 1G以上;双核、四核。常用45nm(甚至更高级)制程工艺生产。 扩展能力 ARM结构的电脑是通过专用的数据接口使CPU与数据存储设备进行连接,所以ARM的存储、内存等性能扩展难以进行

    2024年02月01日
    浏览(19)
  • 【CPU】关于x86、x86_64/x64、amd64和arm64/aarch64

    【CPU】关于x86、x86_64/x64、amd64和arm64/aarch64

    为什么叫x86和x86_64和AMD64? 为什么大家叫x86为32位系统? 为什么软件版本会注明 for amd64版本,不是intel64呢?     x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,intel官方文档里面

    2024年02月05日
    浏览(9)
  • x86架构ubuntu 搭建arm64交叉编译环境及QT编译arm64架构工程

    x86架构ubuntu 搭建arm64交叉编译环境及QT编译arm64架构工程

    背景:由于最近项目需要做国产系统适配,很多软件需要重新编译以适配不同架构CPU。 环境: 1、主机win10 64bit   vmware虚拟主机ubuntu1804 64bit 2、vmware虚拟主机已经安装了qt5.14.2及qt_create4.11.1 一、C/C++程序交叉编译 1、交叉编译环境搭建 ①选定编译工具aarch64-linux-gnu ②安装交叉

    2024年02月09日
    浏览(10)
  • ARM与X86架构的简单剖析与未来展望

            在计算机硬件领域,ARM和X86架构无疑是两种最具影响力的处理器架构。它们各自在全球范围内应用于广泛的设备中,从嵌入式系统到服务器,再到个人电脑和移动设备,塑造了现代计算技术的面貌。本文将深入解析ARM与X86架构的异同,并对未来市场发展趋势进行前

    2024年04月09日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包