64g 内存需要关闭 swap 分区吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
IfEles
V2EX    macOS

64g 内存需要关闭 swap 分区吗?

  •  
  •   IfEles 2021-11-05 16:04:25 +08:00 8261 次点击
    这是一个创建于 1435 天前的主题,其中的信息可能已经有所发展或是发生改变。

    物理内存闲置,swap 却一直占用 Iu1BEq.png Iu168U.png

    27 条回复    2021-11-08 14:21:01 +08:00
    kilala2020
        1
    kilala2020  
       2021-11-05 16:46:25 +08:00   2
    系统预测你会长时间不用,就把数据调入 swap ,修改 swap 的价值只存在于你内存有富余,使用的又是机械硬盘的情况,现在折腾这个,所能节省载入的时间,都还没有我打这段话时间多。
    algas
        2
    algas  
       2021-11-05 16:56:00 +08:00
    可能会有笔记本电量过低,无法休眠的风险。
    lopssh
        3
    lopssh  
       2021-11-05 17:23:57 +08:00
    哇,你是怎么使用 42G 内存的?
    vanton
        4
    vanton  
       2021-11-05 17:26:30 +08:00
    不需要关闭,你不差这点硬盘,增加的性能完全没有意义,只会增加风险。
    Leonard
        5
    Leonard  
       2021-11-05 17:27:58 +08:00
    @kilala2020 #1 可能不是想节省载入时间,而是想延长 SSD 寿命?毕竟之前 M1 之前有 swap 导致 SSD 大量写入的问题
    DonaidTrump
        6
    DonaidTrump  
       2021-11-05 17:32:57 +08:00 via iPhone
    求求你告诉我怎么关闭 swap
    gakkiismywife1
        7
    gakkiismywife1  
       2021-11-05 18:05:42 +08:00
    wanacry
        8
    wanacry  
       2021-11-05 19:27:41 +08:00 via iPhone
    求求被告知如何关闭 mac 的 swap 我搜了一爆都没找到方法
    wanacry
        9
    wanacry  
       2021-11-05 19:29:03 +08:00 via iPhone
    因为我用 16g 的 mac 笔记本 一旦有几 g 以上的 swap 就能感觉到整个系统的响应明显变慢
    CraxClive
        10
    CraxClive  
       2021-11-05 19:29:22 +08:00 via iPhone
    @wanacry 进安全模式关呀,google 一搜就搜出来了
    Cavolo
        11
    Cavolo  
       2021-11-05 20:24:41 +08:00 via iPhone
    都说了这是给你载入星球大战母舰模型时使用的
    frinstioAKL
        12
    frinstioAKL  
       2021-11-05 23:44:42 +08:00   1
    macOS 默认情况下无论内存多大多少会使用一点 swap. 64G 我觉得其实可以关 swap 了, 我这边 32G 关了用了两年都没事. 不过每个人的使用情况不同, 可以关了体验一段时间看看.

    关闭 swap 的方法有两步:

    (1) sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

    这个网上大部分都有, 但是我发现我的 mac mini 执行后还是会使用 swap. 调研后发现还有个 vm 策略的调整, 因此需要执行第二步:

    (2) sudo nvram boot-args="vm_compressor=2"

    原理参考: https://ayltai.medium.com/need-for-speed-how-to-squeeze-every-last-drop-out-of-macos-sierra-7ac17b680c98

    最后重启即可
    dingwen07
        13
    dingwen07  
       2021-11-06 01:08:28 +08:00 via iPhone
    @frinstioAKL #12 这得关闭 SIP 吧
    dingwen07
        14
    dingwen07  
       2021-11-06 01:09:20 +08:00 via iPhone
    对了,听说 RM Mac 关闭 SIP 后 iOS App 就跑不起来了
    jeeyong
        15
    jeeyong  
       2021-11-06 03:34:55 +08:00
    @Leonard 过量写入的问题好像是因为数据读取错误造成的显示错误, 而不是真的过量写吧?
    之前看的英文说明, 模模糊糊
    IfEles
        16
    IfEles  
    OP
       2021-11-06 09:28:10 +08:00
    @algas 我这个是 imac,感觉休眠不休眠也无所谓
    IfEles
        17
    IfEles  
    OP
       2021-11-06 09:28:54 +08:00
    @lopssh 我一般就看他内存压力的,这个我没注意,就开了几个 ide 的窗口
    IfEles
        18
    IfEles  
    OP
       2021-11-06 09:29:21 +08:00
    @vanton 恩恩,想想还是算了
    IfEles
        19
    IfEles  
    OP
       2021-11-06 09:29:53 +08:00
    @gakkiismywife1 istat menus
    IfEles
        20
    IfEles  
    OP
       2021-11-06 09:30:16 +08:00
    @tulongtou 进安全模式可以用命令行关闭的,不过我也还没试过
    IfEles
        21
    IfEles  
    OP
       2021-11-06 09:52:15 +08:00
    昨天吧 idea 的内存拉到了 4g,暂时没有出现虚拟内存占用
    DonaidTrump
        22
    DonaidTrump  
       2021-11-06 10:49:56 +08:00
    @frinstioAKL 老兄自己试过么?
    DonaidTrump
        23
    DonaidTrump  
       2021-11-06 10:51:43 +08:00
    @IfEles 我之前用 Intel 的 MacBook Pro ,只要睡眠必定出现 swap 占用,也是 64G 的内存,不存在内存不够用的情况
    ekidona
        24
    ekidona  
       2021-11-07 10:16:09 +08:00 via iPhone
    1.5T RAM 都要留 Swap 呢
    f64by
        25
    f64by  
       2021-11-07 23:12:55 +08:00
    Apple Silicon 上默认不读取自定义的 boot-args ,需要修改安全策略
    bputil -a
    但是这样会导致安全等级降低到 Permissive Security ,无法运行任何 iOS app 及解密 FairPlay DRM 内容
    所以使用 boot-args="vm_compressor=2"关闭 swap 的代价就是放弃在 Mac 上运行 iOS app
    podel
        26
    podel  
       2021-11-08 11:32:25 +08:00
    不需要关闭 swap 。
    ram 在不使用的时候 会被用来当做 磁盘的缓存。磁盘再快也没有内存块。这样使用几乎没有读写的内存区域来缓存频繁读写文件。没有关闭 swap 让垃圾留在内存中要好。
    kilala2020
        27
    kilala2020  
       2021-11-08 14:21:01 +08:00
    @Leonard 哦,这个倒是一个可行的办法,之前那个超量写入,估计是 bug 吧
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     889 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 20:37 PVG 04:37 LAX 13:37 JFK 16:37
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86