1
wonpain 2018-05-13 23:22:04 +08:00 via Android
还是内存不够大
|
2
vegito2002 2018-05-13 23:23:44 +08:00
加 swap 不如加内存
|
3
summerwar 2018-05-13 23:24:28 +08:00
加内存 加 cpu
|
4
fangxing204 2018-05-13 23:37:46 +08:00 via Android
是的,我以为 8g 内存差不多了,所以装系统就没分 swap,结果发现打开太多东西经常卡死,楼上说的都对,但是,我穷,选择连加个 swapfile,明显不会出现卡死的情况了。可以参考这里 https://askubuntu.com/a/796997/649754
|
5
Nitroethane 2018-05-14 01:00:53 +08:00 via Android
没有 swap 以及 swap 太小的话没办法休眠的吧
|
6
iir910 2018-05-14 01:44:38 +08:00
这年头,4G 是入门,8G 是凑合.16G 才够用.
要不是现在的内存价格死贵,我早就买 16G 了. |
7
innoink 2018-05-14 01:46:42 +08:00 via Android
8g 内存一般不会占满吧,除非某些 bug 内存泄露之类的
|
8
mmqc 2018-05-14 02:26:49 +08:00 via Android
我目前机器 8g 机器上跑:网易云,chrome,telegram,golddict,medeley 内存占用大概 3.3g 没跑 ide,写代码用 vim。就这样,开了 mariadb 偶尔也会出现假死现象。。。对了,我分的 swap 是 16g。。。不知道啥情况
|
9
msg7086 2018-05-14 03:27:47 +08:00 5
对于内核来说,软件的内存使用量分两种,一种是占用的量,比如申请内存以后在里面存放了数据就属于占用;另一种是申请的量,比如申请内存以后没有写入数据。
其中的申请量是检测虚拟内存是否足够的依据。比如在 Windows 下,你有 8G 物理内存和 4G 分页文件,那么申请量最大不能超过 12G,超过了内核就会开始杀进程。Linux 下有 Overcommit 机制,可以让你适当多申请一些内存,超过物理内存和交换区的总和,但是这也是有上限的。低价 VPS 上开 MySQL 经常被杀进程就是因为 MySQL 申请量超过了 Overcommit 的上限。 有钱可以加物理内存,没钱的话还是加 Swap 比较好,对于申请且没有使用的内存部分,分页到 Swap 是不会影响性能的。 |
10
19tj 2018-05-14 03:41:25 +08:00 via Android
楼上大神,真∵夜猫
|
11
loading 2018-05-14 06:07:38 +08:00 via iPhone
free 命令,了解一下。
|
12
iwtbauh 2018-05-14 08:25:50 +08:00 via Android
@fangxing204 别加 swap 文件,想办法加 swap 分区。前者要多很多性能损失。
|
13
iwtbauh 2018-05-14 08:27:39 +08:00 via Android
副作用是有的,会多很多磁盘 I/O,而且硬盘速度肯定是不如物理内存的。但是如果内存确实不够是应该加的。
“偶尔会出现内存和 CPU 跑满”,top 命令看看是什么东西吃内存和 CPU |
14
Love4Taylor 2018-05-14 08:29:41 +08:00 via Android
如果 CPU 余量很足的话 就上 zram/zswap 吧
|
16
ZackB0T 2018-05-14 08:36:32 +08:00 via Android
vm.swappiness,了解下
|
17
ccsexyz 2018-05-14 08:46:08 +08:00
如果是服务器的话,是不应该开 swap 的
|
18
liuminghao233 2018-05-14 09:15:35 +08:00 via iPhone
没 swap 内存一爆直接 kill 进程
开了有 swap 就算是用 ssd,内存占用大了一样卡 |
20
snail1988 2018-05-14 10:16:21 +08:00
现在 16G 是入门 32G 标配。。。不上 swap 起码 16G
|
21
iwtbauh 2018-05-14 11:15:03 +08:00 via Android
@raawaa 那你确定是内存满了的原因?内存用超会 oom kill,我怀疑你这可能是死机了。PC 机 Linux 死机的话,九成是 N 卡问题,尝试禁用 N 卡
|
22
tempdban 2018-05-14 11:19:52 +08:00 via Android
这年头咋还有人说服务器不要开 swap
|
24
msg7086 2018-05-14 12:42:26 +08:00
@ccsexyz 服务器不开 swap 可以,但是内存要多插很多。
4G 物理+2G Swap 能勉强跑起的程序,不开 Swap 至少要插 8G 到 12G 内存才不会被杀掉。 有钱当然可以为所欲为。我要是能插上 256G 内存,我也不开 Swap。 |
25
tatsuteng 2018-05-14 12:51:54 +08:00 via iPhone
说不要开 swap 的,https://chrisdown.name/2018/01/02/in-defence-of-swap.html 了解一下?
|
26
carakan 2018-05-14 12:56:14 +08:00
8G 日常爆内存...16g 不开虚拟机够用吧..32G 可以...
现在有什么性价比搞的电脑能上 32G 内存啊啊 |
27
raawaa OP |
28
wayne1027 2018-05-14 13:10:41 +08:00
昨天给 512M RAM 128M SWAP 的 VPS 编译 GCC 死活编译不过,把 swap 改成 512M 就好了…说到底还是 RAM 太少了
|
31
tempdban 2018-05-15 08:09:47 +08:00 via Android
@msg7086 我们实验室环境常年 256g 加 swap
并且这么大的内存一般都要用巨页管理,业务内存页是不会换到硬盘上的。 |
32
GLee9507 2018-05-28 10:02:45 +08:00
archlinux+i3wm 不用 swap 的话内存快满了就会卡死,鼠标都动不了。挂载个 swapfile 就没出现过卡死-。-
|