釋放Ubuntu/Linux系統(tǒng)cache,增加可用內(nèi)存空間
某臺(tái)式機(jī)Ubuntu內(nèi)存共3G,但free的內(nèi)存只有200M,無(wú)法滿(mǎn)足scala的jvm需求。
注意用top命令查看才能看到真正的free內(nèi)存。下面是查看真正內(nèi)存使用量的另一種命令。
- watch -n 1 cat /proc/meminfo
搜索發(fā)現(xiàn)有三種方法都可以達(dá)到釋放內(nèi)存的目的:
- watch -n 1 free -m
- or:
- free -m
上述這種方法只增加了幾十M。
- sudo sysctl -w vm.drop_caches=3
上述這種方法,目的是釋放kernel用在cache上面的內(nèi)存。增加了約1G。
下面這種方法釋放的更多,但可能會(huì)影響系統(tǒng)的穩(wěn)定!一定要小心使用。
- sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
這個(gè)命令會(huì)釋放無(wú)論是使用中的內(nèi)存還是cache(page cache, inodes, and dentries),小心使用。
總的來(lái)說(shuō),還是第二種方法更合適,如果需要隔一段時(shí)間自動(dòng)運(yùn)行一次,可以使用cron jobs。