[ruby-dev:39869] Re: [Bug #2447] reduce GC pressure by symbol table without String instance

From: Yusuke ENDOH <mame@...>
Date: 2009-12-10 17:20:50 UTC
List: ruby-dev #39869
遠藤です。

2009年12月8日18:37 wanabe <s.wanabe@gmail.com>:
>> どなたか追試してくださると助かります。私の環境で make test-all は
>> 通っています。
>
> 興味がありますので試してみたところ、
> 少し不思議な結果になりましたので報告させていただきます。
> 詳細はわかりませんが、環境が貧弱であることが関係していると思われます。
>
> 生のベンチマーク結果を末尾に添付します。
> そのうち大きく差があったものについて、改めて再現性を調べました。


とても詳しい追試、ありがとうございます。


> * 速くなったもの、再現性あり
> app_pentomino   :  185 -  187 秒 =>  182 -  183 秒
> so_fannkuch     :  194 -  195 秒 =>  191 -  192 秒
> so_mandelbrot   : 56.1 - 56.3 秒 => 48.2 - 48.3 秒
> so_nbody        : 39.2 - 39.5 秒 => 34.4 - 35.0 秒
> so_partial_sums : 54.3 - 54.5 秒 => 47.0 - 47.0 秒
> so_spectralnorm : 39.4 - 39.6 秒 => 35.4 - 35.5 秒
> vm1_block*      : 28.5 - 29.5 秒 => 22.5 - 22.8 秒
> vm1_const*      :  6.4 -  6.6 秒 =>  5.5 -  5.5 秒
> vm1_not*        :  5.6 -  5.8 秒 =>  4.1 -  4.2 秒
> vm3_gc          : 10.4 - 10.5 秒 =>  9.0 -  9.0 秒

それぞれ 2% 、2% 、14% 、12% 、14% 、10% 、21% 、15% 、27% 、13%
くらいの高速化ですね。


> * 遅くなったもの、再現性あり
> loop_whileloop2       : 17.0 - 17.5 秒 => 18.0 - 18.5 秒
> so_ackermann          :  8.6 -  8.7 秒 =>  8.7 -  8.9 秒
> so_exception          : 11.8 - 12.2 秒 => 12.8 - 13.4 秒
> so_meteor_contest     : 46.4 - 48.8 秒 => 50.4 - 51.2 秒
> so_reverse_complement :  388 -  389 秒 =>  391 -  392 秒
> vm2_eval*             :  195 -  198 秒 =>  206 -  207 秒

-6% 、-2% 、-9% 、-7% 、-1% 、-5% くらいですね。

総じて言えば、速くなっていると言えるのではないかと思います。
どうでしょうか。

-- 
Yusuke ENDOH <mame@tsg.ne.jp>

In This Thread