Backport #8146

Backport r39811

Added by Narihiro Nakamura about 1 year ago. Updated about 1 year ago.

[ruby-dev:47186]
Status:Closed
Priority:Normal
Assignee:Tomoyuki Chikanaga

Description

不要なヒープ拡張がおこなわれることがあった問題の修正です。


Related issues

Related to ruby-trunk - Bug #8093: [patch] gc: avoid unnecessary heap growth Closed 03/14/2013

Associated revisions

Revision 40176
Added by Tomoyuki Chikanaga about 1 year ago

merge revision(s) 39811: [Backport #8146]

* gc.c: Avoid unnecessary heap growth. patched by tmm1(Aman Gupta).
  [Bug #8093] 

History

#1 Updated by Motohiro KOSAKI about 1 year ago

あれ、この問題っていつ起きるんですか。

#2 Updated by Narihiro Nakamura about 1 year ago

ヒープを拡張する判断は、GCのスイープ前に「現在のヒープ内の生存オブジェクト数」を見て判断していましたが、GC.statが入ったときから「前回のGC終了後からどの程度オブジェクトが割り当てられたか」で判断するようになってしまってました。
そのため最初のGC時に必ずヒープ拡張が起こったり、実際には生存オブジェクトが少ないにも関わらずヒープ拡張がおきることもあるようです。
それを修正した(元の状態(1.9系)に戻した)のが、このコミットです。

#3 Updated by Tomoyuki Chikanaga about 1 year ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r40176.
Narihiro, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


merge revision(s) 39811: [Backport #8146]

* gc.c: Avoid unnecessary heap growth. patched by tmm1(Aman Gupta).
  [Bug #8093] 

Also available in: Atom PDF