2011-12-06 23 views
1

私は非常に高速なPCでCygwinを使用していますが、私はgrepを使用したいときにそれが馬鹿げて遅いことがわかります。また、大きなファイル(たとえば25Mb)を処理したいときは遅くなります。ここで私の事例を証明するための例を使用しています。CygwinであなたのGREPはどれくらい速いですか?

> time for i in $(seq 1000); do grep "$i" .; done 

real 75.865  user 5.442  sys 14.542  pcpu 26.34 

私は

  1. は私にあなたのスコアを表示するかを知りたいです。あなたは、同様のcygwinのの遅さに問題があるか、GNU grepの
  2. どのようにパフォーマンスを向上させることができますがあったのunameが
    CYGWIN_NT-を-rvs何Cygwinの

を使用してのあなたのヒント

  • 6.1-WOW64 1.7.9(0.237/5/3)2011-03-29 10:10

  • which grep 
    grep is /usr/bin/grep 
    grep is /bin/grep 
    grep is /usr/bin/grep` 
    
    +2

    'grep foo .'はすべきではありません_anything_ - ' .'は読むことができないディレクトリを指します。 – sarnold

    +0

    同じ25 MiBファイルを1000回以上グロッピングしないと、25,000 MiB(25 GiB)のデータを効果的に処理していますか?どのくらい早くこれが完了すると思いますか? (あなたのコマンドが正しい場合) – Bart

    +0

    また、非常に短い文字列( "1" .. "1000")をgreppingしています。 GNU grepは、長い文字列でBoyer-Mooreを使うことにします。 _Morale:現実的なシナリオを使用したベンチマーク。 – ninjalj

    答えて

    0
    $ time for i in $(seq 1000); do grep "$i" .; done 
    
    real 0m13.741s 
    user 0m3.520s 
    sys  0m8.577s 
    
    $ uname -rvs 
    CYGWIN_NT-6.1-WOW64 1.7.15(0.260/5/3) 2012-05-09 10:25 
    
    $ which grep 
    /usr/bin/grep 
    
    関連する問題