Como posso saber se os arquivos estão sendo lidos do cache de disco?

1

Eu tenho dois processos que se executam de forma diferente em duas caixas que são idênticas, exceto pela quantidade de memória RAM. Uma caixa tem 32GB e a outra tem 16GB e o processo tem um desempenho significativamente melhor na primeira. O processo em si não usa muita memória, mas lê muitos arquivos grandes. Eu suspeito que ele se encaixa melhor na caixa de 32GB porque o linux é capaz de armazenar em cache mais arquivos devido à memória extra. No entanto, não sei como provar isso. Como posso saber se os arquivos estão sendo lidos do cache versus do disco? É claro que posso simplesmente agendar as leituras e ver se elas estão com um melhor desempenho, mas quero ver por que elas estão se saindo melhor.

    
por frankc 08.08.2011 / 21:21

2 respostas

0

Eu posso fazer isso usando a função mincore ()

    
por 15.09.2011 / 22:02
1

Use iostat ou sar para examinar as estatísticas de E / S do disco nos sistemas em execução. Assumindo um volume equivalente de solicitações de E / S, a máquina que estiver fazendo mais cache mostrará uma taxa de E / S mais baixa.

    
por 08.08.2011 / 21:25