From: Yasuki Date: 2000-10-22T20:08:35+09:00 Subject: [ruby-list:25570] Re: Ruby で遅い処理は? Yasukiです. taca> 本質的なアルゴリズム的な問題はどうでしょう。 もちろん本質的なアルゴリズムの問題です. でも,もう〆切が近いので本格的には変えられないので. aamine> うーん、とりあえずソースが見られないと、「モノによる」という答えしか aamine> 返せないと思いますが、とりあえず常道としては aamine> aamine> 1 あまりオブジェクトを捨てないアプリの場合、GC が無駄におきてる aamine> 2 str += s や arr += a など再生成系(非破壊)メソッドの多用 aamine> aamine> あたりが考えられます。 aamine> aamine> 1 だとすると、普段は GC を止めておいて時々 (特に、オブジェクトが aamine> 捨てられる場所がわかるならその後で) 明示的に GC してやることで aamine> 劇的に速くなります。2 だとすると、str << s や arr.concat a にして aamine> やれば、これまた劇的に速くなります。 まず 1 を試してみましたが35秒から1秒程度しか速くなりませんでした. 2 を少しずつやっていこうとおもいます. ----------------------------- Yasuki / yasuki@hikoboshi.net -----------------------------