Посмотрел на работу - жаль, оно однопоточное. Не вижу насыщения ни
по скорости обмена с файловой системой, ни по объёму памяти. Но вижу полностью загруженное одно ядро при свободных
остальных. Его нельзя распараллелить, чтобы одно ядро отвечала за базу
данных, а остальные брали себе по файлу для вычисления sha1? Посмотрел внимательнее - нет, нифига. Скорее всего, именно в I/O упирается. Но, похоже, именно в одно ядро - суммарная нагрузка около 100% при доступных, скажем, 800%.