MacBook Air M1 好像也没有那么好

2022-03-24 15:04:03 +08:00
 victorysl

公司发的 MacBook Air M1 512G+8G 搭载最新系统,日常使用必开微信、企业微信、Kim 、提醒事项、Notion 、Chrome (十几个标签页)、Excel ( 3 ~ 5 个表格文件,每个约 30MB ),我个人感觉应该算比较一般的使用强度,Mac 就时不时地卡顿,或者出现敲键盘打字延迟,Excel 反应慢等一系列让人不快的问题,虽然说发热确实好了很多,但总感觉它没有发挥它应有的实力,体验下来好像也没有网上说的那么牛

17074 次点击
所在节点    MacBook Air
127 条回复
makeitwork
2022-03-25 14:13:13 +08:00
64g 的 max 本本表示不知道内存压力是啥
victorysl
2022-03-25 14:16:55 +08:00
@crs0910 我之前用 MBP 16G M1 也遇到过,您提到的方法我回头可以试试,谢谢啦
victorysl
2022-03-25 14:25:31 +08:00
@jiaslbang 确认过眼神
wuqiangroy
2022-03-25 15:03:21 +08:00
up 主,我看了你的截图,内存还有 1g 可用。
我发现我想对我昨天的使用场景,多了一个 goland 项目(现在开了两个),然后 htop 查看还是 6g 的内存使用。
然而活动监视器显示使用了 15g 内存。
我也没有感觉到内存不够用,有卡顿现象。
up 主,你更换一个 office 试试呢,试试 WPS office 。
对了原生的输入法一直有延迟的现象,可以试试第三方。
mylifcc
2022-03-25 15:07:57 +08:00
内存不够吧 16g 16 寸 mbp 一般开 50 个打底的标签 没卡顿过
xiaojun996
2022-03-25 15:47:43 +08:00
macOS 16 起步是最好的
ShadowPower
2022-03-25 16:09:02 +08:00
@wuqiangroy 其实已经出现因为内存不足而影响性能的情况了
苹果的文档: https://support.apple.com/zh-cn/guide/activity-monitor/actmntr1004/mac

截图的数据解读如下:
整台电脑一共有 8GB 的物理内存
被使用的部分为:
作为支持程序运行的部分:7.01 GB
作为缓存,以提升程序或者文件的访问速度的部分:956.4 MB ÷ 1024 = 0.93 GB
实际剩余的物理内存大小:8 - 7.01 - 0.93 = 0.06 GB

在 7.01GB 的数据中,有 3.37GB 是不能直接访问的,而是被压缩的。
内存压缩是什么:由于在 SSD 上使用交换文件的性能比较低,因此,可以在内存上开辟交换空间来提升系统的响应速度。数据存储进去之前需要进行压缩,读取之前需要解压缩,并放在苹果所说的“App 内存”区域,才能被程序使用。
这样做可以在比较小的内存下获得比较不错的性能。Windows 和 Linux 都支持这样的技术。

对于大多数程序和文本数据,可以压缩到原本的 1/3 大小,因此,其中包含的内存数据解压缩之后约有 3.37 × 3 = 10.11GB 。

如果你有用过内存超级大的 Mac 机,会发现“被压缩”部分的内存很少,甚至是 0 。因为内存负载还没有达到换页的阈值,系统只会直接使用物理内存。压缩和解压需要消耗 CPU 资源。

剩下 7.01 - 3.37 = 3.64 GB 可供系统和应用程序使用
其中包含了被苹果称为“联动内存”的数据,有 1.57 GB ,即“无论如何都无法放到交换中,只能保留在物理内存里的数据”。一般都是系统的核心进程数据,显存,或者硬件虚拟化使用的内存空间。
注:上面所述的交换包含两部分,一部分在硬盘文件里,另一部分压缩后保存在内存上。“联动内存”无法被换页到这些地方。

最后真正能被程序使用的部分,只有物理内存上面的 1.54 GB 那么大。
而且实际上这部分空间已经不能再增长了,如果想增长,有两个方法:
1. 放弃文件缓存,这可能会导致非常糟糕的硬盘 IO 性能,使系统卡顿更加严重。
2. 把“被压缩”部分展开到 10.11GB ,并且写到交换文件里。这样就腾出了 3.37 GB 可供使用。这会使得系统发生缺页中断时,换页的效率更低,因为从 SSD 中读写数据比在内存中压缩 /解压缩要慢。
对于第 2 点,若腾出的内存空间不足以减少换页的频率,同样会使得系统卡顿更加严重。

有两种情况:
1. 如果程序要访问的内存在很长一段时间里都比较固定,并且大小只有 4GB 左右,这么做就有正面的影响。
2. 如果各种程序都频繁访问交换中的任意内存数据,那么保持现状才能获得较好的性能。

macOS 提供了一个指标来更好地衡量目前的换页情况,即“内存压力”。当系统的内存不足并且又频繁发生缺页中断时,“内存压力”的数值就会上升。在截图里,“内存压力”的数值已经超过了一半以上,说明目前各种程序都在频繁地访问交换中不同区域的内存数据。因此对应情况 2 。

由于内存过小,已经影响了系统性能。

根据这张图,也可以估算出多大的内存才能完全不影响系统性能。
目前物理内存中没有被压缩的数据占据了 1.54 + 1.57 + 0.93 = 4.04 GB
压缩的部分要计算解压缩后的大小,即 3.37 × 3 = 10.11 GB
硬盘中有 1.48GB 的交换文件
所以实际内存需求一共有 4.04 + 10.11 + 1.48 = 15.63 GB

只要 16 GB 的内存就可以满足当前的使用场景,而不会感受到因内存导致的性能问题。当然,无法解决因为软件 bug 导致的卡顿。
droppedbytech
2022-03-25 16:23:35 +08:00
@ShadowPower 还没对照苹果文档和深究不说结论对不对,但这才是我想在 V2EX 看到的帖子,有理有据有推导有结论,而不是站队和互相扣帽子秀优越感、阴阳怪气互相攻击。支持
ShadowPower
2022-03-25 16:25:24 +08:00
@droppedbytech 其实我也不太确定一些细节对不对,因为没有看过内核源码……
summersun2021
2022-03-25 16:32:41 +08:00
m1 max 64g 顶配,开的 app 不多,40g 内存常态化。
lqcc
2022-03-25 16:38:37 +08:00
根源还是 office for mac 太拉跨了,office 重度用户还是得用 win 本。现在很多 win 本做工和续航都已经很接近甚至超过苹果本了。我现在改用 wps 了。
paopaosa
2022-03-25 18:10:15 +08:00
Excel 请配合 Windows 使用,即使是 Windows 虚拟机也比 macOS 要流畅。
victorysl
2022-03-25 20:42:19 +08:00
@ShadowPower 看到你的回复真的很感动,感觉在中文互联网好久没看到这种中肯且有理有据的回答了,要是能点赞一定得给你点一个哈哈哈哈,谢谢你
victorysl
2022-03-25 20:43:39 +08:00
@wuqiangroy 我是那种能用官方 app 一定不会用第三方 app 的人哈哈哈哈,有什么第三方输入法推荐吗
loading
2022-03-25 21:54:15 +08:00
8G 够用是之前疯狂牺牲 SSD 寿命换来的,估计后面系统改了一下。
8G 怎么可能够用呢?

你永远叫不醒一个装睡的人。
tonyaiken
2022-03-25 22:43:29 +08:00
确认一下你用的软件都是 Apple Silicon 版本的
wuqiangroy
2022-03-25 23:38:03 +08:00
`我是那种能用官方 app 一定不会用第三方 app 的人哈哈哈哈,有什么第三方输入法推荐吗`
@victorysl 没有,我也是有原生就不用第三方的人。所以我愿意忍受原生输入法的卡顿。
victorysl
2022-03-26 01:12:01 +08:00
@wuqiangroy 哈哈哈哈哈哈同
caotian
2022-03-26 14:21:58 +08:00
16G 做开发也马马虎虎, 入了两个 16+512 的 m1 mini, 把办公室和家里的 i7+32G 的黑苹果换了, 接了 4k 双显, 但是体验并没有太多提升. 似乎没有以前 i7+32G 的黑苹果丝滑. 已经遇到过几次 idea 或者 goland 报物理内存不足(设置过内存占用, 不是默认的), 看了下内存压力 80%以上, 系统开始变卡, 只能重启. 所以有条件还是上 32G 吧, 以前 32G 黑苹果几天不关也没卡过.
idolphin
2022-03-26 19:27:02 +08:00
个人经验,应该是 Excel 的问题。把 Office 关了,你再开几十个 Chrome 标签页也不卡。MS Office 在 Mac 上也就那么回事儿。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/842614

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX