Sup!
Perl ist gar nicht so schwer ("Programming Perl" - Larry Wall, O'Reilly).
Vielleicht programmiert ihr auch einfach ziemlich ... dämlich.
Wenn man eine Datei Zeile für Zeile abarbeitet, dann sollte der Speicherbedarf kaum über ein paar K ansteigen.
Wenn man nicht alles gleichzeitig verarbeitet, sondern immer Stück für Stück Filter für Filter sequentiell anwendet (Datei A -> Filter -> Datei B -> Filter -> Datei C/D... Datei C -> Filter -> Datei C2, Datei D-> Filter -> Datei D2) , dann könnte es möglicherweise mit weniger Speicheraufwand und schneller gehen.
Ein Monsterskript auf einen Monsterdatenhaufen anzusetzen belastet den Speicher enorm. Nacheinander mehrere Skriptteile jeweils auf kleine Datenhaufen anzusetzen ist womöglich effizienter.
Das RAM und die CPU-Caches würde es entlasten, wenn man jeweils einen Filter nimmt und dann die Daten häppchenweise durchschickt anstatt auf ein Riesen-Datenstück eine Reihe von Filtern anzuwenden (dann muß die CPU andauernd neue Filter-Skripte laden).
Wenn man ein Riesen-Skript und eine Riesen-Datenmenge hat, dann kommt die Maschine schnell ins Swappen (Auslagern von Daten/Programmen), und dann wird alles grottenlangsam.
Gruesse,
Bio
Elite ist mein zweiter Vorname