我正在尝试在启用多线程的情况下压缩大型存档,但是,我的系统不断冻结并耗尽内存。
OS: Manjaro 21.1.0 Pahvo
Kernel: x86_64 Linux 5.13.1-3-MANJARO
Shell: bash 5.1.9
RAM: 16GB
|swapon|
NAME TYPE SIZE USED PRIO
/swapfile file 32G 0B -2
我已经尝试使用/swapfile
2 倍的 RAM 量(32GB)进行此操作,但是一旦使用了 > 90% 的总 RAM,系统就会始终冻结,并且似乎没有使用 /swapfile。
|xz --info-memory|
Total amount of physical memory (RAM) : 15910 MiB
Memory usage limit for compression: Disabled
Memory usage limit for decompression: Disabled
我是新使用的,xz
所以请耐心等待,但是有没有办法全局启用内存使用限制器,并使物理内存 (RAM) 总量考虑到可用空间/swapfile
?
答案1
从man xz
:
内存使用情况
特别是旧系统的用户可能会发现内存使用量非常大的可能性很烦人。为了防止出现令人不舒服的意外情况,xz 有一个内置的内存使用限制器,默认情况下处于禁用状态。
可以使用命令行选项启用内存使用限制器
--memlimit=limit
。通常,通过设置环境变量来默认启用限制器会更方便XZ_DEFAULTS
。