#! perl -slw use strict; use constant { CHROM => 'chromosome.txt', PROBES => 'probes.txt', }; our $N ||= 1000; my $chrom; open C, '<', CHROM or die CHROM . ": $!"; sysread C, $chrom, -s( CHROM ) or die $!; close C; $chrom = uc $chrom; open P, '<', PROBES or die $!; my @probes =
; close P; chomp @probes; warn "Trying $N probes with perl $]"; warn time; my $re = join '|', @probes[ 0 .. $N ]; $re = qr[($re)]; print "$1 : $-[ 0 ]" while $chrom =~ m[$re]g; warn time; __END__ [13:47:01.65]C:\test>\Perl510\bin\perl5.10.0.exe -s 668954.p10 -N=1000 > nul Trying 1000 probes with perl 5.010000 at 668954.p10 line 21. 1203515291 at 668954.p10 line 23. 1203515295 at 668954.p10 line 29. [13:48:16.15]C:\test>\Perl510\bin\perl5.10.0.exe -s 668954.p10 -N=12000 > nul Trying 12000 probes with perl 5.010000 at 668954.p10 line 21. 1203515310 at 668954.p10 line 23. 1203515335 at 668954.p10 line 29. [13:50:56.37]C:\test>\Perl510\bin\perl5.10.0.exe -s 668954.p10 -N=13000 > nul Trying 13000 probes with perl 5.010000 at 668954.p10 line 21. 1203515469 at 668954.p10 line 23. 1203515494 at 668954.p10 line 29. [13:51:35.67]C:\test>\Perl510\bin\perl5.10.0.exe -s 668954.p10 -N=14000 > nul Trying 14000 probes with perl 5.010000 at 668954.p10 line 21. 1203515696 at 668954.p10 line 23. Terminating on signal SIGINT(2) ### Over 15 minutes of CPU used by this point [14:08:03.32]C:\test>