作者: dune
日時: 2002/10/02(00:58)
極悪です。

閑舎 さんの [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/