Добавил еще одно решение - мультипоточное. Создал пулреквест - valexey, мерджни когда удобнее.
Как ни странно, получил хороший прирост (больше 30%) даже не моем дохлом нетбуке. Заодно убедился, что на оном нетбуке честных два ядра (раньше думал, что они бутафорские, какие-нибудь хипертрединговые).
Еще из интересных наблюдений - прирост есть даже если сортировать в единственном потоке, но отдельно от чтения. Т.е., если скорость чтения с диска сопоставима со скоростью сортировки в памяти, то за счет мультипоточности можно получить выигрыш даже на одноядерном железе.