Сколько врмени должно занимать получение частоты слов из большого файла?
Невозможно ответить однозначно. Время  в данном контексте зависит от многих факторов: алгоритма, вашего железа, компилятора, флагов сборки и т.п. То есть, время не говорит читателю вашего вопроса вообще ничего.

В конце концов, если ресурсы позволяют, можно прочитать весь файл в какой-нибудь структуру типа словаря и получать частоту вхождения слова за O(1) или O(log n) в зависимости от того, какую струтуру вы выбрали. Тут время будет тратится на чтения файла и создание структуры данных, но один раз.
6 минут (или меньше) - для получения полной частотной статы по всем словам за один проход.
Ещё быстрее: можно читать файл в несколько потоков, а разрывы - склеить по ориентиру байт-смещения.