Não tenho certeza de que você entende completamente como os caches de buffer modernos funcionam - você tem metade disso você quer limitar a quantidade de RAM que seu processo usa (então há "o suficiente" disponível para o cache de buffer, mas você está pensando no caminho errado.
O que você está pedindo não é realmente útil para ajustar o cache de buffer - pode ser útil se você tem um único disco contíguo (ou um array que se apresenta como um e se comporta como um) e está procurando otimizar layout de disco, mas isso está entrando no Deep Filesystem Magic. Você pode ler os artigos de McKusick sobre design de sistemas de arquivos ( ou passar 42 minutos e assistir a este excelente vídeo ) para obter um conceito básico de como o sistema de arquivos já tenta otimizar isso para você - Sistemas de arquivos são muito bons em obter o layout do disco certo.
Em termos de otimização do cache de buffer, você deve examinar o número de ocorrências de cache versus falhas de cache (e especificamente o que está causando as falhas). A localização física no disco não importa - o que importa é quantas vezes você precisa acessar o disco para obter o que deseja, e se o seu cache é grande o suficiente para não estar constantemente em movimento (essencialmente negando a eficiência do cache). / p>
O ajuste é um pouco mais de tentativa e erro do que qualquer outra coisa - uma regra geral extremamente ineficiente é deixar 2x o tamanho do seu maior arquivo / bloco de dados para o cache de buffer, mas você quase sempre É melhor começar a usar o aplicativo ou o cache e ajustar-se ao desempenho de pico.