From: ko1@... Date: 2014-03-01T09:34:36+00:00 Subject: [ruby-core:61170] [ruby-trunk - Bug #9584] RGenGC regression in CoW sharing Issue #9584 has been updated by Koichi Sasada. Does it help for CoW friendly? Basically, promoted bit is changed only for young objects. To make young object, pages are marked dirty. And also, I'm worry about WB performance. ---------------------------------------- Bug #9584: RGenGC regression in CoW sharing https://bugs.ruby-lang.org/issues/9584#change-45535 * Author: Eric Wong * Status: Open * Priority: Normal * Assignee: Koichi Sasada * Category: * Target version: * ruby -v: ruby 2.2.0dev (2014-02-17 trunk 45028) [x86_64-linux] * Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- I just changed USE_RGENGC in ruby.h (and made r45224) Using Nari-san's original test for bitmap marking GC: https://github.com/authorNari/skkzipcode.git rgengc enabled: (default) PROCESS_CNT : 5 SHARED_AVE : 81644.0 kb SHARED_TOTAL: 408220 kb PRIV_AVE : 87692.0 kb PRIV_TOTAL : 438460 kb REQ/SEC : 0.003136 rgengc disabled: PROCESS_CNT : 5 SHARED_AVE : 117307.2 kb SHARED_TOTAL: 586536 kb PRIV_AVE : 44453.6 kb PRIV_TOTAL : 222268 kb REQ/SEC : 0.002963 I started using bitmaps, but it seems there are some places where my code is buggy. I haven't had more time to investigate, yet. My work-in-progress is attached. ---Files-------------------------------- rgengc-bitmap-promoted-wip.diff (9.22 KB) -- http://bugs.ruby-lang.org/