Try double- or triple-buffer file-reading and hashing and separate it to two threads.