Если данные поступают с диска, вы можете быть привязаны к IO.
Если это так, получите более быстрый диск (но сначала убедитесь, что вы максимально используете свой существующий ... некоторые дистрибутивы Linux не оптимизируют доступ к диску из коробки) ), поместите данные в память (скажем, скопировав их на RAM-диск) заблаговременно или будьте готовы ждать.
Если вы не связаны с IO, возможно, вы тратите много времени на копирование. Вы могли бы извлечь выгоду из так называемых методов нулевого копирования. Что-то вроде карты памяти файла и доступ к нему только через указатели.
Это немного за пределами моей компетенции, так что вам стоит немного почитать или подождать, чтобы получить более знающую помощь.
Кстати: вы можете заняться большим трудом, чем эта проблема того стоит; может быть, более быстрая машина решит все ваши проблемы ...
NB-- Не ясно, что вы можете отобразить в память стандартный ввод либо ...