Ruby чтение файлов параллельно

У меня есть файл с большим количеством строк (скажем, 1 миллиард). Скрипт перебирает все эти строки, чтобы сравнить их с другим набором данных.

Поскольку в данный момент он работает на 1-поточном / 1-м ядре, мне интересно, могу ли я запустить несколько форков, каждый из которых обрабатывает часть файла одновременно.

Единственное решение, которое пришло мне в голову, этоsed команда unix. С помощью sed можно читать «кусочки» файла (от строки x до строки y). Таким образом, пара вилок может обрабатывать выходные данные соответствующих сборов. Однако проблема в том, что Ruby сначала загрузит весь вывод sed в RAM.

Есть ли лучшие решения для этого, чем sed, или есть способ «направить» вывод sed в Ruby?