darai
darai****@users*****
2008年 3月 13日 (木) 20:44:04 JST
daraiです。 なるほど。10倍も違うとは、素晴らしいですね。 構文解析の部分は、今度ソースを読んで勉強させてもらいます。 On Thu, 13 Mar 2008 01:19:19 +0900 (JST) panacoran <panac****@yahoo*****> wrote: > --- darai <darai****@users*****> wrote: > > > 下記の処理速度の向上は、どのようにして達成するのでしょうか。 > > ぜひ教えてください。 > > 恥ずかしながら大したことはしていません。 > > 構文解析の速度向上には、字句解析で使っている正規表現にコンパイル > 済みのものを用いるようにしたことが効きました。実行速度の向上には > 、HashtableやArrayListをGenericsのDictionaryやListで置き換えたこ > とが効きました。 > > 構文解析には不自然なところや非効率なところがいろいろあったので、 > 字句解析はゼロから書き直し、構文解析にも全体にわたって手を入れま > した。その結果、ワンパスで単純な構文木が生成されるようになりまし > た。しかし、速度向上への寄与は、正規表現のコンパイルが圧倒的に大 > きいです。 > > 実行処理については、デリゲートの呼び出しはかなり遅いので、組み込 > み関数をデリゲートで実行するのをやめてみました。その他にも細かい > チューニングを施しました。しかし、これらの速度向上への寄与は、Generics > の利用によるものに比べると小さいです。 > > -- panacoran > > _______________________________________________ > Protra-members mailing list > Protr****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/protra-members -- Daisuke Arai <darai****@users*****>