Eu concordo com Kev, será o disco. Verifique-os com HDTach ou algum utilitário de benchmark de HDD.
Uma solução (a fonte completa de um software ... seja ela Java, C #, C ++) consiste em vários arquivos pequenos.
Os HDDs demoram a lê-los.
A solução?
Se for um laptop : obtenha um WD Black Caviar (unidade portátil de alto desempenho de 7200 rpm).
Ou se você puder pagar, consiga um SSD. (Menor, mas alta IOPS.)
Se for um PC desktop : SSD > Raptor de 10.000 RPM > Caviar preto 7200rpm (WD) > 7200rpm drive ... e assim por diante.
Uma unidade preta de 7200rpm não será tão rápida quanto uma unidade SSD (leitura / gravação seqüencial), mas ainda é um grande impulso comparado a uma unidade de laptop normal de 7200 ou 5400rpm.
(ps .: Eu não sou um fanboy da WD, eu simplesmente não conheço nenhuma outra empresa que faria tais drives de "alto desempenho". Se eles existirem, sinta-se livre para editar minha resposta, postá-los no meu comentário .)