2009-08-24 9 views
2

大きなコードベースのものを探すためにvimでcscopeを使用します。 "cs f e"オプションが遅すぎるとわかります。とにかくヒントはそれをスピードアップします。私は自分のcscopeデータベースを構築します。cscope -bqCscope egrep speedup

+1

コードベースのサイズはどれくらいですか?どのくらい遅いのが「遅すぎますか?どのプラットフォームを使用していますか?あなたのソースコードはローカルファイルシステムかネットワークファイルシステムか? –

答えて

1

cscopeはデータベースでgrepとegrepをスピードアップしません。これは、cscopeが任意の部分文字列に対して反転インデックスを作成したり、事前計算インデックスのある種の正規表現スピードアップ手法を使用したりしないためです。唯一のスピードアップは、cscopeがソースファイルに対してのみgrep/egrep関数を実行し、grep regex -r .(バイナリ.obj、.exeもチェックする)と比較したときのスピードアップです。

Egrep関数ではcscopeデータベースを使用できません。

コードをローカルfs(ネットワークfsから)に移動し、メモリを増設し、envで照合を無効にします。LC_ALL = CまたはLC_ALL = POSIX、fsでatimeを無効にします。

また、SSをSSDまたはRAMDISKに移動することもできます。

+0

情報ありがとうございます。何とかopengrokはegrepのような検索の方がはるかに高速です。コードは数百万行のコードです(ちょうどここで推測しますが、基本的にはかなり大きいと言いたい)。 – kgunjikar

関連する問題