#! perl -slw use strict; use Devel::Timer; my $T = new Devel::Timer; sub firstNprimes { my $n = shift; open my $primes, '<:raw', 'primes.all' or die $!; my @primes = split ' ', do{ local $/ = \( $n * 10 ); <$primes> }; close $primes; return \@primes; } $T->mark( '201' ); my $ref1 = firstNprimes( 201 ); $T->mark( '100,000' ); my $ref2 = firstNprimes( 100_000 ); $T->mark( '1,000,000' ); my $ref3 = firstNprimes( 1_000_000 ); $T->report; __END__ C:\Perl\test\data>..\junk4 Devel::Timer Report -- Total time: 0.3176 secs Interval Time Percent ---------------------------------------------- 02 -> 03 0.3169 99.78% 100,000 -> 1,000,000 01 -> 02 0.0007 0.21% 201 -> 100,000 00 -> 01 0.0000 0.01% INIT -> 201