热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于AppleSiliconM1的进阶解读

如果大家对文章感兴趣,欢迎转发,收藏,评论。感谢支持!如果你对计算机科学和科技类知识感兴趣,请Follow【老铁的最新号外】各平台同名,持续更新,感谢支持。 1.苹果为什么要自研A


如果大家对文章感兴趣,欢迎转发,收藏,评论。感谢支持!

如果你对计算机科学和科技类知识感兴趣,请 Follow【老铁的最新号外】各平台同名,持续更新,感谢支持。


 

1. 苹果为什么要自研Apple Silicon-M1芯片

2. 自研M1芯片苹果能获得什么

3. 苹果如何保证平稳的平台过渡

4. 关于M1芯片参数

5. 当前正在使用M1芯片的产品罗列和比对

6. 结尾

 

2020年11月11日,苹果秋季的第三场发布会在线上举行,带来了Apple基于ARM架构自研的Apple Silicon首款产品M1芯片,以及搭载该芯片的三款Mac产品:MacBook Air,MacBook Pro,Mac mini。在2021年4月21日苹果的春季发布会上,又发布了两款搭载M1芯片的产品,iMac和new iPad Pro。我们不难发现,苹果正在利用M1芯片布局新的产品生态。

Apple Silicon-M1(来源:网络)


苹果为什么要自研Apple Silicon-M1芯片


在90年代,当时为了抵制wintel联盟垄断市场,乔布斯就联合IBM和摩托罗拉等厂商组团对抗,虽然最后惨淡收场但也为苹果自研芯片埋下了种子。

苹果一直以来构建的都是软硬一体的闭环生态,对供应链控制有着近乎苛刻的标准要求。对于一个骨子里有如此基因的公司来说,核心硬件的自研是必然的。

外部原因也在不断促使。苹果对产品持续领先抱有执念,但供应商(intel)的产品似乎总不是那么给力。最后的结果就是,苹果只能自己做。也算一种是迫不得已。

自研芯片自然也算的上是一种商业行为,纯从利益角度来理解一下:

关于M1芯片自研的话题,IBM AI战略副总裁Sumit Gupta曾算过一笔账,他假设苹果2020年出货860万台13寸MacBook Pro和540万台MacBook Air,苹果一年省下25亿美元(164亿元)。

苹果每台M1笔记本节省200美元,据他分析目前一颗M1处理器的成本大概40~50美元,而MBA上的Intel双核酷睿i5(整套芯片组)则是175~200美,MBP上的四核酷睿i5更是225~250美元,也就是换用M1处理器,一颗就能省最多200多美元。

Gupta得出苹果花在为MacBook采购Intel处理器的花费是32亿美元,M1处理器则仅需要6.97亿美元,一来二去省了25亿美元(约合164亿元)。

为什么要去做,很多时候是跟做了之后能得到什么是相关联的。


自研M1芯片苹果能获得什么


保证高性能+低功耗:

ARM架构下的M1芯片,性能远超供应商Intel,但能耗却没有增加。

iPad pro在运行重量级软件的时候,我们不会去考虑温度,和散热表现,因为这玩意连风扇都没有,我们要是考虑温度,散热这些,有点多此一举。现在Mac搭载了M1,得益于M1的高性能和低功耗,我们就可以像使用iPad一样,不用担心温度和热量对设备的影响,低能耗不仅能减少发热,还能延长续航时间。

保证新品发布节奏:

苹果脱离对Intel的依赖后,对自家新品的发布节奏更容易把控。Apple并不是机海战术,Mac的产品更新和Intel的新品CPU发布达到节奏一致的概率并不高。时间上如果没有吻合,就会出现要么等Intel新品CPU,导致等用上了新品CPU,Mac其他硬件已是黄花菜,要么就算你等到了并用上了当前Intel的最新款CPU,可Intel又发布了一款更新的,这个时候离Mac的产品更新周期还离好远,然后各大厂商推出搭载该款CPU的新品,单从CPU上来看,又对Mac产生威胁。这就会很尴尬。

大家也都知道Intel的CPU,更新就像挤牙膏,时不时再来个芯片断货。这对于有着严格管控和执念追求的苹果来说,是一种桎梏。

自研之后,以上的问题都可以完全解决。

成本降低:

芯片不管是处理器还是显卡,一直都是主要成本,核心技术能够掌握在苹果自己手中,不仅能够降低成本,同时还拥有更加弹性的定价权。以手机为例,大部分的手机品牌使用的都是高通芯片,只要高通的芯片涨价,手机的价格必然水涨船高。

芯片的可定制性:

M1芯片不仅仅是一个CPU还包含GPU。根据技术能力,用户需求,功能需求,还可以在这个芯片中加入各种组件。不断强化苹果的闭环生态。

打破了IOS、iPadOS和MacOS的生态壁垒:

随着基于ARM架构的M1芯片的加入,Apple所有的产品线都统一了架构,这就意味着IOS应用通过简单的技术操作完成平台迁移后,所有的Mac用户都将能够使用这些应用。这些迁移过来的IOS应用,极大的丰富了MacOS的软件库。同样,对于IOS的开发者来说,苹果提供了一块新的沃土给他们。


苹果如何保证平稳的平台过渡


M1芯片(来源:网络)

架构平台的改变,显而易见的是老Apps可能无法在ARM-based CPU上直接运行,需要迁移。

这并不是Apple第一次迁移CPU架构,历史上Mac平台曾经有过三次CPU架构迁移:

第一次是1994年苹果的Macintosh从摩托罗拉的68k系列处理器迁移到苹果+摩托罗拉+IBM三家联合设计的PowerPC处理器,这颗处理器和ARM设计的一样,也是一颗RISC(精简指令集处理器)CPU。

第二次是2005年从PowerPC转到Intel处理器,这时乔布斯已经回归苹果,并成功推出了OS X操作系统。

第三次也就是这次,从Intel迁移到ARM。

鉴于过往丰富的迁移经验,再加上制作iphone时mac与IOS共享XNU内核代码,此番过渡应该要比前两次简单一下。Apple使用Universal2,Virtualization,Rosetta2这三驾马车来保证苹果从Intel向ARM的平稳过渡。

Universal2:

从开发者层面,推出Universal2工具。只需要一次开发,就能适配Intel和ARM两个芯片的Mac。利用Universal2开发者只需要几天时间,就能将之前的软件,兼容搭载ARM芯片的Mac。减轻了开发者的工作量同时也稳定了Mac的软件生态。

Rosetta2:

从用户层面,推出了Rosetta2,Rosetta2对于开发者和用户都是无感知的。当你双击App Icon启动一个Intel-based App时,集成在系统中的Rosetta2会对App执行JIT编译,将x86指令实时转换成ARM指令并运行。Rosetta2还提供了安装时转译,这样只需要一次安装就可以搞定转译。理想情况下这种转译就跟你跑JS代码一样,实现无痛过渡。

Virtualization:

苹果推出的Virtualization虚拟化技术,方便开发者在各种虚拟环境中,做各种开发和调试。


关于M1芯片的各种参数:


M1芯片(来源:网络)

苹果 M1 采用 5nm 工艺制造,集成多达 160 亿个晶体管,而且是一颗完整的 SoC,集成所有相关模块,并采用苹果自创的封装方式。首先是八个 CPU 核心,包括四个高性能大核心、四个高能效小核心,其中大核基于超宽执行架构,每个核心集成多达 192KB 一级指令缓存、128KB 一级数据缓存,四个核心共享 12MB 二级缓存。

苹果宣称,M1 可以在 10W 功耗 (MacBook Air TDP)下提供两倍于 “最新笔记本芯片”的性能,能效比则高达三倍。GPU 方面也是八核心,包括 128 个执行单元,支持最多 24576 个并发线程 (每单元 192 个),浮点性能高达 2.6TFlops(每秒 2.6 万亿次计算),纹理填充率每秒 820 亿,像素填充率每秒 410 亿。M1 类似 A14 也集成了 16 个核心的神经引擎,算力达每秒 11 万亿次操作。

支持通用内存架构,USB4,媒体编码和解码引擎,在安全性上也大大增强,内置基于硬件验证的安全启动,加密和进程保护。

相比于上一代MacBook Air,配备了M1芯片的全新MacBook Air在Final Cut Pro,Xcode,Logic Pro,Adobe Lightroom等专业生产软件中,都有显著的性能优势。

性能比对(来源:网络)

我这里还有一张图,围绕着ARM与X86架构之争,科技媒体AnandTech制作了一张图,展示苹果A系列芯片和同期英特尔芯片之间的性能演变。

性能演变(来源:AnandTech)


当前正在使用M1芯片的产品罗列和比对


去年秋季发布会推出了三款,外加今年春季的两款,共5款设备。

基于M1芯片的2020款MacBook Pro,因为5nm高能效特性的加持,续航时间大幅延长,可长达17小时网页浏览或20小时视频播放,比换芯前提升了10个小时。

M1-MacBook Pro(来源:网络)

基于M1芯片的2018款Mac mini,性能上CPU得到3倍提升,而GPU得到6倍提升。

M1-Mac mini(来源:网络)

基于M1芯片的2020款MacBook Air,拥有长达18小时的连续视频播放能力,因为其为无风扇设计,一切都在无噪声中进行。

M1-MacBook Air(来源:网络)

M1芯片的iMac,机身只有11.5mm厚度,这得益于M1芯片的低功耗。总体积被缩减到上一代产品的50%。

M1-iMac(来源:网络)

M1芯片的New iPad Pro,拥有8核CPU,相比于上一代提升50%,8核GPU,相比上一代提升40%。还拥有16核神经网络引擎,大幅提升生产力。

M1-New iPad Pro(来源:网络)


结尾


M1芯片是一座桥梁,连通了MacOS和IOS/iPadOS,是Mac生态体验的一个新起点。彪悍的M1芯片也难怪大家都说“杀疯了”!


如果大家对文章感兴趣,欢迎转发,收藏,评论。感谢支持!

如果你对计算机科学和科技类知识感兴趣,请 Follow 【老铁的最新号外】各平台同名,持续更新,感谢支持。




推荐阅读
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 本文详细介绍了macOS系统的核心组件,包括如何管理其安全特性——系统完整性保护(SIP),并探讨了不同版本的更新亮点。对于使用macOS系统的用户来说,了解这些信息有助于更好地管理和优化系统性能。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 本文探讨了 C++ 中普通数组和标准库类型 vector 的初始化方法。普通数组具有固定长度,而 vector 是一种可扩展的容器,允许动态调整大小。文章详细介绍了不同初始化方式及其应用场景,并提供了代码示例以加深理解。 ... [详细]
  • 深入理解Java泛型:JDK 5的新特性
    本文详细介绍了Java泛型的概念及其在JDK 5中的应用,通过具体代码示例解释了泛型的引入、作用和优势。同时,探讨了泛型类、泛型方法和泛型接口的实现,并深入讲解了通配符的使用。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 配置Windows操作系统以确保DAW(数字音频工作站)硬件和软件的高效运行可能是一个复杂且令人沮丧的过程。本文提供了一系列专业建议,帮助你优化Windows系统,确保录音和音频处理的流畅性。 ... [详细]
  • Redis Hash 数据结构详解
    本文详细介绍了 Redis 中的 Hash 数据类型及其常用命令。Hash 类型用于存储键值对集合,支持多种操作如插入、查询、更新和删除字段值。此外,文章还探讨了 Hash 类型在实际业务场景中的应用,并提供了优化建议。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文详细介绍了如何在 Windows 环境下使用 node-gyp 工具进行 Node.js 本地扩展的编译和配置,涵盖从环境搭建到代码实现的全过程。 ... [详细]
author-avatar
bai小白
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有