系统在内存已满之前交换

dmy*_*tro 2 python linux matplotlib archlinux

我的程序使用matplotlib绘制了大量的行(~200k),这对于内存非常贪婪.在绘图之前,我通常有大约1.5G的可用内存.当我显示数字时,系统会在仍有大约600-800M的可用RAM时开始大量交换.例如,当创建一个巨大的numpy数组时,不会观察到这种行为,它只是瞬间获取所有可用内存.很容易弄清楚这是matplotlib还是系统问题.

我正在使用64位Arch Linux.

UPD:交换等级设置为10.尝试将其设置为0,正如DoctororDrive建议的那样,但同样的事情.但是,在使用交换之前,其他程序似乎可以填充几乎所有内存.

Yar*_*lyk 5

它开始交换,在RAM中留下一些空闲内存.你应该考虑设置Swappiness