Aparentemente, o maior problema foi um problema de troca. No meu sistema antigo, definir vm.swappiness=100
me ajudou a evitar congelamentos do sistema movendo páginas antes que a memória estivesse esgotada. Neste novo sistema, parece ter tido o efeito oposto: o sistema estava sempre mudando constantemente e desnecessariamente. Eu comprei mais memória RAM e desativei totalmente o swap, e o problema foi resolvido na maioria das vezes.
Em relação ao fato de que as operações de E / S causaram congelamentos na área de trabalho, parece que os dados da operação estavam sendo armazenados em cache na RAM e a memória usada pelos aplicativos da área de trabalho sendo lançada na troca, o que fazia o sistema ler de volta do disco sempre que eu tentei interagir com a área de trabalho.
Com RAM suficiente, as operações de E / S geralmente não afetam a capacidade de resposta da área de trabalho, mas se a área de trabalho ficar desacompanhada por algum tempo, pode haver um atraso inicial ao interagir com a área de trabalho. Isso pode ser devido ao kernel decidir que o sistema está ocioso o suficiente para dar uma prioridade maior à operação, e seus dados podem acabar preenchendo o cache completamente, removendo as páginas dos aplicativos de desktop.
Em relação ao programador de disco, eu não fiz testes suficientes para saber qual seria a melhor opção, mas a partir da minha pesquisa, parece que o prazo completamente ignora ionice
, ou que ionice
é específico de CFQ. / p>