Por que a troca do Linux é tão lenta

Por que a troca do Linux é tão lenta

Sou desenvolvedor de software e, de vez em quando, uso acidentalmente toda a RAM disponível com um de meus programas. O sistema operacional trocará de forma útil tudo o mais que eu possa estar usando no momento (ou seja, navegador da web, IDE de desenvolvimento, reprodutor de áudio, etc.). Depois que eu consigo encerrar meu programa com defeito, outro software em execução na minha máquina fica quase inutilizável por alguns minutos e não será trocado sozinho sem que eu realmente use o software (e espere longos segundos após cada clique) . Posso apenas sudo swapoff -aforçar todas as páginas da memória de volta à RAM, mas isso leva surpreendentemente tempo. Posso monitorar o uso de swap usando o freecomando. A troca é esvaziada em cerca de 1-2 MB/seg - a execução a freecada dois segundos mostra apenas uma diferença de um dígito e todo o processo pode levar alguns minutos.

Meu sistema é relativamente novo, e acabei de testar o HDD que armazena a partição swap cpipe- lendo arquivos de 7 GB em média em torno de 150-160 MB/s. Por que a troca não é movida de volta para o RAM com velocidade semelhante?

Há algo que eu possa fazer para torná-lo mais rápido?

$ uname -r
4.15.0-29-generic

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.5 LTS
Release:        16.04
Codename:       xenial

informação relacionada