[#46329] [ruby-trunk - Feature #7252][Assigned] version number of 2.0 release — "usa (Usaku NAKAMURA)" <usa@...>

26 messages 2012/11/01

[#46350] RubySpecメンテナ — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

15 messages 2012/11/02
[#46352] Re: RubySpecメンテナ — Urabe Shyouhei <shyouhei@...> 2012/11/02

On 11/01/2012 07:43 PM, Yukihiro Matsumoto wrote:

[#46414] [ruby-trunk - Bug #7287][Open] please rename atomic.h which conflicts with /usr/include/atomic.h in Solaris10 — "ngoto (Naohisa Goto)" <ngotogenome@...>

10 messages 2012/11/06

[#46434] トラップハンドラで許されない操作はなにか — KOSAKI Motohiro <kosaki.motohiro@...>

GyRCPi46aiRHJDkbKEIKCltCdWcgIzcxMzRdIBskQiRyRDQkWSRGJCQkRj88SiUkSjtFTU1MZEJq

9 messages 2012/11/06

[#46440] [ruby-trunk - Bug #7300][Open] Hash#[] の挙動が 1.9.3 と異なっている — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

12 messages 2012/11/07

[#46477] Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...>

refinement を導入するときの性能に対する excuse が「method cache に殆どあ

20 messages 2012/11/11
[#46480] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/11

前田です。

[#46488] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

 ささだです.

[#46491] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46493] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

 ささだです.

[#46495] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46497] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

(2012/11/12 18:20), Shugo Maeda wrote:

[#46501] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46513] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Nobuyoshi Nakada <nobu@...> 2012/11/14

なかだです。

[#46509] [ruby-trunk - Bug #7344][Open] gem pristine bigdecimal が失敗してしまう — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

31 messages 2012/11/13

[#46520] [ruby-trunk - Bug #7356][Open] ruby-2.0.0-preview1 で adlint-2.6.10 が性能劣化 — "yanoh (Yutaka Yanoh)" <yutaka@...>

11 messages 2012/11/15

[#46647] [ruby-trunk - Bug #7452][Assigned] Main thread is stopped after running finalizers if the main thread has a finalizer — "mrkn (Kenta Murata)" <muraken@...>

8 messages 2012/11/28

[ruby-dev:46628] [ruby-trunk - Bug #7356] ruby-2.0.0-preview1 で adlint-2.6.10 が性能劣化

From: "yanoh (Yutaka Yanoh)" <yutaka@...>
Date: 2012-11-26 08:42:51 UTC
List: ruby-dev #46628
Issue #7356 has been updated by yanoh (Yutaka Yanoh).


反応が遅れてすみません。
まずは、ko1 さんからリクエストがあった ruby 単体で動くベンチマークを作ってみて、
その後 dtrace してみます。

----------------------------------------
Bug #7356: ruby-2.0.0-preview1 で adlint-2.6.10 が性能劣化
https://bugs.ruby-lang.org/issues/7356#change-33943

Author: yanoh (Yutaka Yanoh)
Status: Assigned
Priority: Normal
Assignee: ko1 (Koichi Sasada)
Category: 
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux]


== 現象

ruby-1.9.3-p327 と ruby-2.0.0-preview1 で adlint-2.6.10 の性能比較を行った結果、
ruby-2.0.0-preview1 の方が解析時間が 1.2 倍ほど長くかかりました。

== 再現手順

 % gem install adlint
 % tar xvjf adlint-benchmark-screen.tar.bz2  <- 添付ファイル
 % cd adlint-benchmark-screen/adlint
 % time make -j 2 2>/dev/null

== 性能測定結果

=== 測定環境

* Core 2 Duo E4500 2.20GHz / 3.4GB
* Fedora 14 / Linux 2.6.35.14-106.fc14.i686

=== 測定方法

* 下記バージョンの ruby を用いて、adlint-2.6.10 で screen-4.0.3 を解析
  ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux]  built with gcc-4.5.1
  ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux]      built with gcc-4.5.1
  ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux]      built with gcc-4.7.2

* すべて configure オプションは --prefix のみ

* 解析は 2 コアを使い切れるよう make -j 2 を指定

* できるだけ IO による遅延を抑えるため標準エラーは /dev/null へリダイレクト
  ただし解析結果ファイルの出力は抑止できていません

=== 測定結果

* ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux]  built with gcc-4.5.1
  make -j 2 2> /dev/null  1335.85s user 7.10s system 184% cpu 12:07.79 total
  make -j 2 2> /dev/null  1336.54s user 7.17s system 184% cpu 12:07.80 total
  make -j 2 2> /dev/null  1340.71s user 7.23s system 184% cpu 12:10.69 total

* ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux]      built with gcc-4.5.1
  make -j 2 2> /dev/null  1626.45s user 8.08s system 184% cpu 14:48.20 total
  make -j 2 2> /dev/null  1633.40s user 8.10s system 185% cpu 14:46.92 total
  make -j 2 2> /dev/null  1631.37s user 7.86s system 184% cpu 14:50.18 total

* ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux]      built with gcc-4.7.2
  make -j 2 2> /dev/null  1531.83s user 7.85s system 184% cpu 13:53.04 total
  make -j 2 2> /dev/null  1533.46s user 7.97s system 184% cpu 13:54.54 total
  make -j 2 2> /dev/null  1532.89s user 8.03s system 184% cpu 13:53.33 total

== 備考

adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。



-- 
http://bugs.ruby-lang.org/

In This Thread