没看发布会之前,随手看了下 tech spec,m1 只支持 16g 内存,第一感觉内存不够用。
因为自己从一开始的 8g 一下跳到 64g 后感觉就回不去了。。。
看了发布会后,感觉自己有点杞人忧天了。随便记录一下自己的想法说的不对欢迎指正(涉及一些操作系统+计算机体系机构的知识,因为本科的东西了,特别体系机构这些可能也有记错)
m1 芯片最大的性能优势,应该就是把所有其他内存以及其他性能相关 (enclave, image and ml/neural....)的 alu 都集成到芯片上去了。这样使得 datapath 和 controlpath 能够更快的响应对应的 ISA (对比之前需要 ISA 去走计算机的“物理”内存)
要知道,现在的操作系统都是虚拟内存了,也就是说即使你现在没那么多内存,操作系统的内核也可以将一部分内存地址 swapping 到 disk 里去用。再简单点说就是即使你只有 4g 内存,只要你的硬盘空间够,你的操作系统也能继续跑你的那些应用(很多人说内存不够 crash 是因为你磁盘空间不够),只是你那些应用的速度会变很慢(因为此时已经是对磁盘的读取而不是内存)
所以,回到 m1 的 air 和 mini,我感觉 16g 内存确实还真的够了。理由:
前面说了,因为内存连 4g 都能跑系统,真正影响的是你的读写速度和体验。但是,因为 m1 芯片前面已经把很多该需要的 alu 都已经集成到芯片里去了,也就是说即使出现虚拟内存不够的情况,需要从 swapping 虚拟内存地址到 disk 里,速度也之前用 intel 时候的时候更快,因为没有那些相应优化过的 alu
apple 官方说的性能比之前的各种更快,我估计应该是对比同样内存大小的 air 或者 mac-mini 做的比较。这里很大一部分性能的提升应该都是在 m1 的 I/O 上,他们做 benchmark 的时候,应该也做了超出内存的 benchmark,也就是即使出现内存不足读写磁盘,也比之前更快。当然这也很大程度因为更快的固态硬盘和更好的 controlpath (发布会里也提了这点)
唯一的不足估计就是 arm 下的生态了,那这个确实苹果没办法,只能等了。
所以结论 m1 确实很香,想要完美体验,就等 m2 吧 😂
101
IgniteWhite 2020-11-11 23:15:49 +08:00
不要吵架
|
102
namelosw 2020-11-11 23:19:02 +08:00
我理解这个内存大小不能按传统架构理解. 有可能 16G 可以接近 32G 表现?
不过不试一下真不知道, 平常 32G 都不够用, 不看到测评是不可能买的. 不过这个改法, 好奇过两年 MacMini 会不会可以装到口袋里. 这样的话还挺期待的. |
103
xieshaohu 2020-11-11 23:37:43 +08:00
这个还是苹果自己设计的问题吧。ARM 架构的 Ampere Computing (云计算厂商)发布的 ARM 架构的 CPU128 核心,4TB 内存
|
104
lixintcwdsg 2020-11-11 23:53:56 +08:00
够用应该还是不够的,但是芯片面积大良品率直线下降是有可能的,比如一些 8G 的可能是 16G 屏蔽而来的也说不定。
本身这种所谓的一体化内存,只能节省一些 IO 时间,比如 CPU 读网卡缓冲区数据,过去是网卡缓冲-》操作系统内存-》进程内存,现在因为寻址空间统一,网卡可以直接分配内存的不需要自己准备缓冲区了(很小),然后系统中断等等这块可能减少了流程性能有提高,但是不会省内存。 |
105
lixintcwdsg 2020-11-11 23:55:23 +08:00
本质上,其余应用过去占内存比较大,都依然是内存需要那么多,同样的 map 结构体 字符串 读写缓存大小都是不会变的对于程序而言,那么需要的内存也不会变
|
106
sw0rd3n 2020-11-12 00:08:15 +08:00 via iPhone
指令集优化解决不了内存压力,cache miss 该有的还是会有。要么不用那么多内存,要么加内存。
|
107
reus 2020-11-12 00:56:17 +08:00
@lixintcwdsg 内存颗粒是独立的,不存在屏蔽不屏蔽的,8G 就放单颗 8G 的颗粒,或者两颗 4G 的,官网说得很清楚。
另外,现在的网卡就有支持 DMA 的,而且,M1 没有说自带网络控制器。 架构和现在的一模一样,内存是独立的颗粒,只不过放在 CPU 旁边,不是在同一块硅片上。 |
108
tianshilei1992 2020-11-12 01:35:18 +08:00
我不明白为什么 CISC 需要 32GB 而到了 RISC 这边 16GB 就够了?
|
109
WebKit 2020-11-12 02:37:34 +08:00 via Android 2
@helloworld000 Android iOS 能证明啥啊,iOS 假后台,你笔记本也要弄假后台啊?同时只能运行一个任务啊
|
110
neoblackcap 2020-11-12 03:05:23 +08:00
@helloworld000 我看到你标题说的操作系统以及体系结构,我看后就纳闷了,你为啥要吧虚拟内存跟交换空间混为一谈?
我还以为你是要分析 UMA 呢。交换空间够用的话,你大概是没有遇到过 mac 用光了内存,系统不断换页的情况。那不重启还行? |
111
neoblackcap 2020-11-12 03:09:56 +08:00 1
@tianshilei1992 我都不明白为什么标题里面有体系结构以及操作系统,为什么通篇还是主观臆测。
就 arm 还能更省内存,大概这个 arm 已经被被苹果魔改到比 x86 还复杂的地步吧。可能一条指令能顶 x86 四条指令 |
112
helloworld000 OP |
114
musi 2020-11-12 07:58:24 +08:00
啊。。。这。。。这是神话么,要是 m1 真能把 16g 内存提升到 64g 的体验,苹果再把芯片用到服务器领域这不赚翻了么
|
115
ipadpro4k 2020-11-12 08:54:16 +08:00 via iPhone
@murmur #1 别瞎扯了,我 2013mbp,8G 内存,还不是同时开 mac,win10,2 个 utuntu 搞嵌入式,也没觉得卡
|
116
wanguorui123 2020-11-12 09:03:48 +08:00 via iPhone
只能说明新的 macOS 的虚拟内存交换算法很厉害,内存压缩算法也很厉害,NVMe 硬盘 IO 很给力。说白了就是抠搜,通过内存算法优化节约硬件成本。
|
117
mengzhuo 2020-11-12 09:38:15 +08:00
一粉顶十黑
学过点计算机知识的都不会说出这种话,还计算机出身?别出来丢人了。 arm 那定长指令还节省空间? ALU 是什么东西你知道么? 内存快要 L1 、L2 、L3 cache 做什么?封在一个 SOC 里就敢叫自己 cache ? swap 更加槽点满满……懒得吐槽了 |
118
ychost 2020-11-12 10:38:23 +08:00
13 寸的 19 款 mbp 16G 感觉内存不够,但是我台式机 i7 8700+16G 却很流畅,内存是够的
|
120
MinonHeart 2020-11-12 10:48:21 +08:00
没有独立显存,16G 内存够毛线。
之前台式机用的集显+16G 内存,天天爆内存。 |
121
yangyaofei 2020-11-12 10:48:43 +08:00
swap ? 难道不知道 swap 大内存小,内存使用量上去后操作系统的 swap 会抖动么.卡到什么都动不了.SSD 阵列也救不了
桌面使用 chrome 开 23 十个页面就没了,更别提用个 IDEA 之类的东西,怎么着 m1 的 1k 内存顶别人 10k?钙中钙么? 写过程序?内存里的只有指令?数据天上掉下来的?真要扣,复杂指令集需要 N 条指令完成某个功能,精简指令集少于 N?学过体系结构没有?精简意味着很多功能需要更多的指令才能完成,只不过是指令之间复用的更多. 别洗了,有毛用啊,没 16G+(现在的环境下)根本没法买,32+之后才有比较强的欲望买 |
122
yangyaofei 2020-11-12 10:49:48 +08:00
@xieshaohu #103 我觉得 更可能是因为省电和集成在一起
|
123
neoblackcap 2020-11-12 11:14:56 +08:00
@helloworld000 那请问你是怎么得出 swap+小内存可以顶替大内存的结论?
你的体系结构的老师是这样教你的?还是说苹果改变了冯诺依曼体系?用更慢更低的一级存储替代了更快一级的存储?如果有就这功力啊,我觉得美国国防部接下来的超算单子就应该给苹果去做。 arm 是 RISC,就凭这个根它就不可能比是 CISC 的 x86 更省内存。 我建议发言之前真的复习一下功课,不要犯这些常识性的错误,不要硬洗。 你说它 UMA 导致 draw call 变得廉价,图形性能大幅提升也没有人说你。 |
124
ztaosony 2020-11-12 11:19:29 +08:00
如果果粉都像楼主这样,估计下代产品内存得 4G 起步了
|
125
neoblackcap 2020-11-12 11:32:49 +08:00
@lixintcwdsg 你以为内存是同一款 die 切出来的啊?内存只是粘在上面的而已,一样是去采购的。哪有什么良品率问题啊?
你说硬件不用自己的缓冲区?你的理解是错的,只是操作系统不需要将内存复制多遍而已。其实这技术本身就是有,叫 DMA 。不过 UMA 肯定是会提高性能的,看怎么用吧 |
126
kekeyu 2020-11-12 12:29:04 +08:00
意思是现在可以云测评了?
楼主的分析没有数据支撑只是纯理论,但原理是说的通的,这个问题不大。 但要说原来需要 32G,现在 16G 就够了,这个也太武断了吧。 |
127
Tenlp 2020-11-12 14:47:25 +08:00
@kekeyu 我觉得楼主可能理论都没有,就是主观臆断.....反倒 @neoblackcap 的回答很详细
|