迫于当下必须要换电脑,鉴于 M1 目前还不太稳定的形势(特别是无风扇 会不会像之前 MacBook 一样后续空焊还不是很确定),本来只想入手 Air 8 + 256 丐中丐版,算是止损。但是为了避免重蹈 8G 覆辙还是很在意内存的问题。
比如 docker (这里特指 docker desktop )或者 传统虚拟机, 我设置给他 4g 内存,在我的理解中,这个进程只要开着,无论用不用直接就吃掉 4g 内存,而且作为一个服务常驻下来,除非你关掉否则他不会释放。我们按 8G 内存的 M1 Mac 为例,这不直接 开机一个 docker,内存全靠 swap ?
如果说是频繁跑普通的一次性脚本或者其他服务可以说借助所谓统一内存,算的快算完就把内存释放出来让内存看起来没那么吃紧,还有点道理。 这种大开销的常驻进程会因为统一内存速度加快而起到什么效果呢?
1
1qazse77 2021-03-20 12:25:43 +08:00
windows 上 VM 虚拟机好像是可以共享内存的,设置的 4G 内存是指虚拟机最大能用内存,要是电脑 8G 内存,虚拟机用 2G 其他软件用 6G 是可以的
|
2
MengiNo OP @1qazse77 但是 Windows 的 Linux 子系统下的表现也不佳,反而会吃掉电脑所有的剩余内存把 Windows 饿死,虽然有 .wslconfig 可以进行限制,但是限制后的表现还是和 docker desktop 情况类似,只要进程不关内存永远吃着。
|
3
secondwtq 2021-03-20 17:52:49 +08:00
看你说的是什么样的虚拟机,比如我在 Linux 下面用 KVM 跑 Linux 虚拟机,好像就可以虚拟机实际用多少内存在主机分配多少内存,而不是直接把设定的内存限额一梭子全都分配给虚拟机。但是跑 Windows 虚拟机貌似就不行,应该是要内核支持。
所谓统一内存我个人感觉主要是在使用加速器的情况下,提升了内存的使用效率( Apple 传统艺能,告诉你很牛逼,不告诉你怎么牛逼)。楼主这个场景看起来不涉及加速器。 |