004
18.06.2012, 16:51 Uhr
ao
(Operator)
|
Zitat von kronos: |
Es geht wirklich um viele GB, daher bringt mir komplett einlesen nicht so viel
|
Na gut, das ist was anderes. Bei "ein paar Millionen kurze Zeilen" war ich von Dateigrößen von wenigen hundert MB ausgegangen, und das kann man heutzutage durchaus an einem Stück allokieren. Zumindest könnte man es versuchen und als Fallback eine Routine vorsehen, die mit kleineren Blöcken klarkommt - falls der Speicher gerade mal zu stark fragmentiert ist.
Mehrere Gigabytes am Stück einlesen, das wird mit oder ohne Swapping nicht klappen, es sei denn, dein Computer ist ein echtes Speichermonster und hat tatsächlich so viel RAM zur Verfügung.
Zitat: |
... da er ohnehin wieder swappen muss, oder?
|
Wenn du mit mehreren Blöcken hantierst, die zusammen ein paar GB groß sind, aber jeder einzelne klein genug, um ins RAM zu passen, dann würde das hingegen funktionieren. Und ich schätze, der Swapping-Mechanismus des Betriebssystems ist um einiges besser als das, was du (oder ein anderer von uns) mal eben runterprogrammieren oder mit Files emulieren könntest. Dieser Post wurde am 18.06.2012 um 16:54 Uhr von ao editiert. |