O Windows faz isso automaticamente - ele rastreia arquivos acessados com frequência e os configura para serem pré-buscados se você tiver RAM suficiente (em versões recentes).
Caso contrário, você pode usar ferramentas de desfragmentação avançadas para mover arquivos acessados com freqüência para as faixas externas de seu disco (onde a taxa de leitura é mais rápida).
Você deseja encontrar os arquivos mais acessados e desfragmentá-los usando contig. Primeiro, obtenha uma lista de todos os arquivos que são acessados com mais frequência.
Você precisa escrever um script que irá percorrer todos os arquivos em sua árvore de diretório a partir de C: \ e gerar uma lista de todos os nomes de arquivos ordenados pelos quais foram acessados mais recentemente. Sugiro que você opte por filtrar apenas arquivos acima de um determinado tamanho, por exemplo, 8 MB, senão você vai acabar com milhares de arquivos de sistema. Então, com essa lista, faça uma iteração sobre ela e execute contig contra eles (ou pode haver uma maneira de fornecer uma lista de arquivos).
Se você não tem a habilidade para conseguir isso, uma alternativa é comprar um SSD, que não sofre fragmentação.
Nota; O Windows Vista + desabilita os registros de data e hora de acesso por motivos de desempenho. Ative-o com este comando administrativo:
fsutil behavior set disablelastaccess 0