極悪です。
閑舎 さんの [TSperl:190] Re: txtsearchver.0.63が異様に遅い……。 から
>$ perl hoge.pl 000text
>128MB
>5s
速いなぁ。OS の違いでしょうか。僕は Windows 2000 なんですが。
> OS の違いによって read の実装も違うような感じだし、ここから先はソース
>を見ないとわからんですね。
>
> クラスタサイズないし、Inode Density が 4096 が標準だから 4096 ないし
>8192 程度で read し、while で回すのがやはり無難なのかな?
読んでは処理して捨てて、の繰り返しではなく、読んで溜めて読ん
で溜めて、なので、それなら最初からガバッと全部読んじゃうほう
がいい気がするんですよね。
my $file = shift or die;
open(FILE,$file) or die $!;
binmode FILE;
read(FILE,my $buff,-s $file);
close FILE;
print int((length $buff)/1024/1024),"MB\n";
print time - $^T,"s\n";
試したら
D:%perl hoge.pl D:\PDF\00legend.txt
175MB
36s
D:%perl hoge.pl D:\PDF\00legend.txt
175MB
35s
D:%
でした。いまいちだな…
--
FZH01112@..., http://homepage1.nifty.com/dune/