Esses valores altos vêm do cache do buffer. A Página inicial do NFS recomenda a opção -U
para evitar isso. Outra boa opção para tentar é -I
. Eu acho este documento muito útil para executar o IOzone na montagem do NFS.
Estou usando o iozone
versão 3.373 para o benchmark NFSv4 e NBD, mas os resultados são um pouco estranhos! Ele diz que as saídas estão em KBytes / s, mas estou obtendo valores como 3,411,938 para leitura aleatória. Estou usando uma rede Ethernet 10/100 e a melhor taxa de transferência usando netperf
é em torno de 96Mbps. Eu estou realmente executando o seguinte comando.
iozone -i 0 -i 1 -i 2 -i 8 -a -Rb nbd.xls -g 10M -q 1M
Esses valores altos vêm do cache do buffer. A Página inicial do NFS recomenda a opção -U
para evitar isso. Outra boa opção para tentar é -I
. Eu acho este documento muito útil para executar o IOzone na montagem do NFS.
A resposta é simples: cache.
Se o tamanho dos seus dados for menor que a RAM disponível, alguns ou todos eles poderão ficar em cache após a gravação inicial. Isso é muito rápido, e é por isso que você obtém throughputs tão altos. Você pode realmente ver esse efeito se fizer os testes -i 0 -i 1
para tamanhos de arquivo acima e abaixo da RAM disponível.
A alternativa é usar o -I
flag, que informa ao iozone para usar o DIRECTIO para operações de E / S. Aqueles não são armazenados em cache.