Não está escrevendo nada no disco; está lendo a partir dele. O swap é usado apenas para armazenar dados que não são suportados por outro arquivo. Os dados, incluindo o código do programa, que é apoiado por outro arquivo, podem simplesmente ser descartados quando não tiverem sido modificados. Então, o que você está vendo é que seus programas estão sendo descartados para liberar um pouco de memória RAM, em seguida, ter que ser lido do disco novamente.
Se você definir /proc/sys/vm/overcommit_memory
para 2 e /proc/sys/vm/overcommit_ratio
para 90, isso fará com que o kernel simplesmente se recuse a alocar mais de 90% do seu RAM. Isso fará com que você nunca fique com pouca memória RAM. Na prática, no entanto, você terá muito mais do que 10% de RAM livre antes que as alocações falhem, porque a maioria dos aplicativos não usa todo o RAM alocado.