现状:研究zram
虚拟内存压缩(wiki)对内存大小和速度的影响;当交换不在HDD / SSD上时;使用zswap
,如果你想有HDD / SSD交换
动机:我的经验误差对内存大小没有影响,但增加量systemd
/ ...与runit
与压缩,即可能的稳定性问题,尽管寻呼应避免更多的
代码
# http://askubuntu.com/a/800645/25388
modprobe zram
echo lz4 > /sys/block/zram0/comp_algorithm
echo 4G > /sys/block/zram0/disksize
mkswap --label zram0 /dev/zram0
swapon --priority 100 /dev/zram0
特征
命令cat /sys/block/zram0/orig_data_size
给出4096
。
RAM已满,交换已满。因此,当总内存消耗达到20 GB左右的高水平时,计算将结束,从而使计算失败。
命令swapon
baed上cat /proc/swaps
NAME TYPE SIZE USED PRIO
/dev/sda3 partition 8G 0B -1
/dev/zram0 partition 4G 0B 100
命令 free -m
total used free shared buff/cache available
Mem: 7925 1390 5465 172 1069 6074
Swap: 12226 0 12226
df -k | grep sda2
有关当前SSD中内存使用情况的命令,可以将其扩展为Swap。
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 108299224 76880916 25893932 75% /
% df -h
/dev/sda2 104G 74G 25G 75% /
测试代码:任何需要大量内存的Matlab计算。
输出:矩阵的大小不随实现而增加。预期输出:增加内存大小。
系统:Linux Ubuntu 16.04 64位
硬件:Macbook Air 2013-mid
我不再按照cas的指示来优化交换内存,而将精力集中在其他事情上。请注意cas的评论
最后,如果可能的话,要避免交换。如果您可以升级系统的RAM,则可以这样做。如果您可以将需要大量RAM的任务卸载到另一台计算机上,则可以这样做。交换始终是万不得已的方法,因为它很慢。如果您需要经常运行大型的matlab等作业,则没有足够的交换空间可以减轻等待它完成的烦恼和乏味(或使您的计算机在数据频繁进出交换时可以交互使用)...这就是为什么我建议构建一个Linux盒,您可以通过ssh连接到它来运行需要大量内存的作业。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句