C:\test>\perl32\bin\perl.exe \perl32\bin\p1.pl use Storable qw[ nstore retrieve ];; $#a = 40e6; $a[ $_ ] = $_ for 0..40e6-1;; $t=time; nstore( \@a, '/test/junk.sto' ); print time()-$t;; 12.3673732280731 Terminating on signal SIGINT(2) C:\test>dir junk.sto 16/05/2012 12:22 199,999,628 junk.sto #### C:\test>\perl32\bin\perl.exe \perl32\bin\p1.pl use Storable qw[ retrieve ];; $t=time; $a = retrieve( '/test/junk.sto' ); print time()-$t;; 12.2560520172119