под Windows 7 (64 бит), я читаю через 9000 файлов среднего размера. Всего данных более 200 МБ. Используя Java (JDK 1.6.21), я перебираю файлы. Первые 1400 или около того идут на полной скорости, но затем скорость падает до 4 мс на файл. Получается, что основными затратами, просто открыв файлы.
Я открываю файлы с помощью new FileInputStream
(и, конечно, закрывая их вовремя, чтобы избежать утечки файлов). После некоторого расследования, я вижу, что Дисковый кэш Windows использует только 100 Мб или около того оперативной памяти, хотя у меня есть 8 гиб. Я попытался увеличить размер кэша с помощью CacheSet инструмент, но любые значения, которые я предоставляю, считаются из серии.
Я также пытался включить LargeSystemCache
раздел реестра, но (после перезагрузки)CacheSet
инструмент по-прежнему указывает, что я использую 100 МБ кэша (и не увеличивается во время тестового запуска). Есть ли у кого-нибудь предложения "поощрять" Windows 7 к кэшировать файлы 9000?