第一代待在 Apple Silicon 处理器 MacBook Air 、13 寸 MacBook Pro 及 Mac mini 产品面世,搭载 M1 晶元,有哪些亮点和不足?


Apple Silicon 的新 mac 无法运行 Homebrew:

macOS 11.0 Big Sur compatibility on Apple Silicon · Issue #7857 · Homebrew/brew

没法再新 mac 下面编译的包,包括不限于:

ant, autojump, cargo-c, direnv, docker, elasticsearch, emacs, fd, ffmpeg, fftw,
fontforge, fswatch, fzf, gdb, git-flow, gnupg, gnutls, grpc, gtk+, gtk+3, hugo,
imagemagickkafka, ldns, libdap, libiconv, libps1, librsvg, libtermkey, libvirt,
libvterm, libwebsockets, libxslt, luajit, macvim, mcrypt, memcached, mono,
mosh, mtr, ncdu, neovim, ocaml, numpy, octave, openjdk11, pandoc,
postgresql(9-11), pyenv-virtualenv, pyqt, qemu, sbt, scala, sdl2, sip, sqlmap,
sshfs, ssh-copy-id, sshpass, starship, subversion, watchman, wireshark, x265,
zookeeper, zsh-autosuggestions,

还有一些没在名单上的,像 zsh 之类的包,可以编译也能运行,但部分功能一跑就崩溃,因此你如果工作里不会用到上面这些包,那也无所谓。

但是要用的话,想等 homebrew 作者修复,估计悬。还有好多有问题的 libxxx 的库,一堆其他包对他有依赖,然后它编译不了了,作者又是几年不更新那种,开源社区,你懂的。

还有一个实锤的事情,pd 也没法运行了,可以运行于 apple silicon 的新 pd 还在开发,估计要大半年以后才见得到,然而新 pd 也只能虚拟 arm linux 和 arm windows,基本等于废了。

安心买来看片吧,或者写写 ppt。

--

但是,值得安慰的是,可以运行所有 iphone, ipad 应用哦 ~~

--


聊一下新的ARM处理器Apple M1,这也是新MacBook最大的特点。总体来看,第一代产品还是主打低功耗,其性能方面(甚至功耗方面)都未必有优势,但是它给笔记本电脑带来了全新的处理器设计思路,未来几代可能会在性能和能效比方面都有长足的进展,这才是最值得关注的。

Apple M1最大的特点其实是UMA。回忆一下,传统的笔记本电脑上是一块主板,主板上有CPU,有可选的独立GPU,CPU和GPU之间相对独立,各自处理自己的任务且有自己独立的内存空间,需要做数据交换的时候需要把数据从各自的内存空间拷贝到对方的内存空间去(往往使用PCIe)。然而,目前来看,很多任务都需要大量的CPU和GPU协同工作,而内存数据拷贝的开销非常大(做一次内存交换的开销比一次浮点计算高几个数量级,尤其是在能量开销方面)。当然,计算机架构领域早就看到了这样独立内存空间的低效问题,因此早就提出了统一内存空间(Unified Memory Architecture,UMA)的解决方案。大概五六年前,AMD等厂商曾经提出过Heterogeneous System Architecture(HSA)并且组织了一个相关协会,其中也有类似UMA的技术,但是最终也没有做大。

然而,学术界讨论已久的UMA最后还是由历史选择了苹果来真正商用化。原因是,UMA对于软体有著很大的挑战,尤其是对于应用生态比较多样化的PC市场更是如此。想当年,Intel从单核架构转向多核架构的时候,都有无数软体因为无法掌握多核编程的技巧而导致效率低下,而UMA对于软体方面的挑战甚至可能会更大。而相对于PC生态,Mac生态有著实现UMA的几大优势:首先是苹果拥有从应用到操作系统到编译器很强的掌控力,不会出现PC端不同的硬体厂牌和不同版本的操作系统需要写不同软体的问题;其次是Mac生态中的应用比较集中,对于性能要求高且使用较多的基本上就是一些多媒体工具软体,而对于能效比要求高的基本上是网路浏览,因此只要把握住几个应用的头部应用(例如在这次苹果发布会中提到的Final Cut)和苹果自家的应用做好优化适配,基本上就能满足绝大部分用户的体验。而对于PC来说,用户的应用则分散地多,玩游戏的,办公的,在行业应用中当伺服器的,需求和软体都非常长尾,要把握住大部分用户的体验需要在软体适配和优化中下的功夫就远远比Mac高了。

当然,除了UMA之外,我们还看到苹果在M1中集成了各种加速器IP(Neural Engine,Image Processing,编解码等等)以及CPU使用了大小核设计,这些都是对于移动SoC设计经验的借鉴。在移动SoC中,对于能效比设计的需求很高,而这也是为什么M1在借鉴了类似设计之后,主打低功耗的原因。


刚才有个朋友问我:英老师,发生甚么事了?

给我发来两张截图,我一看!噢,原来是昨晚有个年轻人,5nm的,说能不能教教我挤牙膏大法。

我说可以,我说你用Arm的死劲不好用,他不服气。

我说小朋友你两个核贵不过我一个核,他说你这也没用,我说我这个有用。

这是化劲,传统摩尔定律是讲化劲的,四两八千金,200多核的英国大伟达都干不过我一个核。

他说要和我试试,我说可以。

我一说,他啪就做出来了,很快啊。

然后上来就是一个4x CPU,一个6x GPU,一个15x ML!

我全部防出去了,防出去以后自然是传统挤牙膏宜点到为止,右拳指著软体兼容,没打他。因为这时间按传统他已经输了,他也承认我先打到他要害。我收拳的时间不打了,他突然袭击「不涨价」来打我脸。

我大E了啊,没有闪。

两分多钟以后,当时流眼泪了,捂著眼我就停停。

我说小Apple你不讲摩尔定律。他忙说对不起,不懂规矩啊,他说他是乱打的。

他可不是乱打的,CPU GPU训练有素,后来他说在手机上练过十几年晶元,看来是有备而来。

这个Apple,不讲武德。来,骗!来,偷袭!我这个14nm+++的老同志。

这好吗?这不好。我劝这个Apple,耗子尾汁,好好反思,以后不要再犯这样的聪明,小聪明。

IT界要以核为贵,要讲摩尔定律,不要搞窝里斗!

谢谢朋友们!


每次苹果发布会总会有些人在这里拿著苹果的 PPT 和视频截图贴一些官网都写得明明白白的数据,自己的分析没两句,啥也讲不出来

鉴于这样的大环境,我就不贴 PPT 也不讲苹果发布这几款产品的内容了,大家想看可以去其他回答看。我就简单说说我个人对于苹果 ARM 架构 MacBook 系列产品的想法。

首先我一定要说的是:苹果的这个 Arm 晶元真的让我太失望了。

之前拿到 DTK 的时候,在测试完游戏跑完性能兴奋了一段时间之后,当我想把 DTK 作为主力机时,他的弱点就开始出现了——介面太少,或者从晶元的层面来讲这个问题:带宽太低。

在晶元带宽这个事情上,我实际上是对苹果有期望的。早年我在弄 i.MX4 的时候,就被 ARM 晶元那小到不能再小的带宽给震惊了。特么四路影像输入竟然要被限制在 480p?我是活在 2014 年的人么?连个 720p 都做不到?当时真的是上上下下翻遍了整个 DataSheet 硬是没凑够足够的带宽给四个 720p 摄像头,前前后后沟通下来发现是 ARM 晶元就特么没法支持这么高的带宽,最后浪费了小半年时间,现在回想起来还是气呼呼的。

所以这次苹果搞 ARM 版 MacBook,我最大的期望就是能给在介面上和 Intel 做到平起平坐。不说苹果会把相关技术对著业内输出,有了苹果在这里打样,相信其他晶元厂商也会努力跟进的,指不定还能出点神奇的南北桥框架把整个生态搞起来。

结果呢?DTK 上面就那么点介面,当时我还指望苹果会在正式产品里面留点大招啥的,然而到了正式版 Mac mini 还是那么点介面,MacBook 相对 Intel 版本还砍掉了几个介面和内存支持。

不给力啊苹果!说好了要把 Intel 完全替换掉的呢?ARM 跑不了 x86 给个 QEMU 类似的玩意降低性能我认了,但介面少了以后设备咋办呢?感情以后啥玩意都靠著那 1.2Gb 的 Wi-Fi 6 过活?

你苹果还有脸把 Arm MacBook Pro 给放出来,内存 16GB 啥年代的事情,你当年 Retina 第一代就这个数了,当年提供了 32GB 多少程序员在开香槟庆祝你知道为啥么?特么小内存跑个 JetBrains 全家桶都跑不下来。iPhone 内存小是单任务和杀后台保续航我们买账,你丫一 MacBook 这么点内存还敢叫 Pro,羞羞脸。

不要用 iPad 那种「轻」生产力产品来和 MacBook Pro 这种工具对比!

希望明年的时候,苹果能够脑子清醒一点,哪怕是下一代 Arm 晶元性能提升不那么多,但请务必增加晶元带宽,增加设备介面,至少把内存支持做到 64GB。至于说这一代,Pro 就不要去买 Pro 了,买个 Air 玩一玩就好了。Mac mini 啥的这个价格,只能说买来当个伺服器丢家里贵了点,拿来做设计可能有点想多了。

我要说的就这么多了。以上


因为恰好家里的领导的笔记本想换个新的,从上次发布会预告了 ARM 架构的笔记本后,就开始期待这个了。

当时信息很不明确,当时的猜测是应该 Mac Mini 的 ARM 版本,因为面向开发者的早期设备是 Mac Mini,做都做出来的,不可能公开发售不发售。

这次发布会上同时推出的还有 Macbook Air 和 Macbook Pro,我觉得已经非常好了,因为我本来就想买的是 Pro。

对我来说,最主要想买的原因就是兼容 iPhone/iPad 应用,这也是我对 ARM 架构的 Macbook 的最大兴趣。

我会写一点小的 iPhone App,但一直没有学习 Mac 的开发,目前看发展趋势,也许有方法能快速让自己写的 App 在 Mac 上也能用起来?

以及之前因为 CPU 架构的不同,XCode 的模拟器除非有代码才能运行不是自己的 App,现在有了 Arm 的 CPU,看起来其它 App 也都可以在 Mac 上运行了?

另外,之前有一个担心的是兼容性问题,目前看起来一些大型软体的原生适配还在进行,比如Lightroom将在今年晚些时候推出,Photoshop将在明年推出。

对于还没有适配的软体,苹果提供了 Rosetta 2 软体来做兼容运行,注意,早期应该绝大部分软体都没有适配的,如果这个可以,对于不追求软体使用最高性能的,是个好消息,至少不至于没有软体可用。

再简单从购买场景上说说这次的几款设备。

Mac mini 很多时候是给开发同学配的高性价比设备,不过这次最大 16G 的内存感觉小了些,Mac mini 的性能释放上应该能比较好发挥出 M1 的性能,开发同学可以考虑这个,内存这事儿先凑合吧。

Macbook Air 还是给轻量使用用,考虑无风扇的设计,应该没法很好发挥 M1 的性能,以及有 Rosetta 2,估计作为入门款还行,但从个人当前的看法来说,选这款的不一定比 intel CPU 的 Macbook Air 更好,毕竟兼容运行还是有一些性能损耗,而这一款的机器用来做开发或重度处理又弱了一些。

Macbook Pro 是个人相对建议的一款,便携性好,性能有一定保障,不过 USB 4 介面只有 2 个,感觉有点缺憾。

Air 和 Pro 得益于ARM 的低功耗,续航时间应该能有相对显著的提高。

键盘是剪刀脚键盘,不是之前被诟病的蝶式键盘,这点也可以放心。

参数上面看其它回答吧,我就不展开了,不过稍微提醒一点,苹果在宣传上号称自己快了 X 倍,这个基本上在官网里面会给出对比机型,可以参考机型介绍网址底部的备注,如13 英寸 MacBook Pro。

比如 CPU 提升 2.8 倍的测试情况如下,里面的 1.7GHz 4 核 Intel Core i7 是发布于 2019 年的机器,CPU 型号是 Intel Core i7-8557U,所以并不是 intel 的最新 CPU,这些数值是有水份的。

Apple 于 2020 年 10 月使用试生产的配备 Apple M1 晶元的 13 英寸 MacBook Pro 系统,以及已上市的配备 1.7GHz 4 核 Intel Core i7 处理器的 13 英寸 MacBook Pro 系统进行了此项测试,所有系统均配置 16GB RAM 和 2TB 固态硬碟。开源项目使用预发行版 Xcode 12.2 及 Apple Clang 12.0.0、Ninja 1.10.0.git 和 CMake 3.16.5 构建。性能测试在特定电脑系统上进行,能够大致反映 MacBook Pro 的性能。

同时苹果的一些图形处理速度提升不仅仅是硬体,还有软体适配带来的性能提升。

对于普通消费者,不一定真的要买这个,虽然有兼容方案,但这个尝鲜必要性没那么大,对于开发者,建议买,对于图形图像处理者,在兼容软体没有出来前,可以再等等。

以上看法不排除有理解有误的部分,如果有发现理解有错的我及时改。

(完)


推荐阅读:
相关文章