Isso está relacionado à leitura antecipada. As unidades rotativas sofrem com um tempo de acesso de acesso extremamente lento, portanto, você deseja minimizar o tempo de acesso e ler sequencialmente o máximo possível. Para conseguir isso, o Linux usa um valor padrão de leitura de 128 KB, o que significa que toda vez que você solicitar um bloco de 1 KB, 128 KB serão realmente lidos e armazenados em cache.
Verifique sua configuração de leitura antecipada com
cat /sys/block/sda/queue/read_ahead_kb
Na verdade, esse valor de 128KB é extremamente conservador e está melhor adaptado para unidades ATA antigas há dez anos com cache de 512 KB. Para unidades de cache modernas de 64 MB, um valor de 1 ou 2 MB provavelmente seria um ajuste melhor. Para RAID de hardware com caches grandes, valores de 64MB ou mais devem ser preferidos.
Não se esqueça de jogar com as configurações de leitura antecipada para ver como elas afetam seu desempenho:
echo 1024 > /sys/block/sda/queue/read_ahead_kb