[#41916] Proposal: Bitmap Marking GC — Narihiro Nakamura <authornari@...>

Hi.

18 messages 2012/01/05

[#41941] [ruby-trunk - Bug #5851][Open] make check fails when compiling with GCC 4.7 - *** longjmp causes uninitialized stack frame *** — Vit Ondruch <v.ondruch@...>

12 messages 2012/01/06

[#41979] [ruby-trunk - Bug #5865][Open] Exception#== should return false if the classes differ — Hiro Asari <asari.ruby@...>

10 messages 2012/01/08

[#42003] [ruby-trunk - Bug #5871][Open] regexp \W matches some word characters when inside a case-insensitive character class — Gareth Adams <gareth@...>

14 messages 2012/01/09

[#42016] [ruby-trunk - Feature #5873][Open] Adopt FFI over DL — Heesob Park <phasis@...>

15 messages 2012/01/10

[#42149] [ruby-trunk - Feature #5899][Open] chaining comparsions. — Ondrej Bilka <neleai@...>

12 messages 2012/01/16

[#42164] [ruby-trunk - Feature #5903][Open] Optimize st_table (take 2) — Yura Sokolov <funny.falcon@...>

18 messages 2012/01/17

[ruby-core:41940] Re: Proposal: Bitmap Marking GC

From: Narihiro Nakamura <authornari@...>
Date: 2012-01-06 09:33:01 UTC
List: ruby-core #41940
2012/1/6 Hiroshi Shirosaki <h.shirosaki@gmail.com>:
>> I created Bitmap Marking GC for Ruby2.0.
>>
>> Source code: https://github.com/authorNari/ruby/tree/bitmap_marking
>> Patch: https://github.com/authorNari/patch_bag/blob/master/ruby/gc_bitmap_using_alignment_r33786.patch
>>
>
> I've tried benchmark against trunk@34217 on Windows XP with mingw32
> gcc version 4.5.2 (tdm-1).
> I used __mingw_aligned_malloc() cause of build error with
> _aligned_[malloc|free].
> I also found _aligned_malloc() is usable if #define __MSVCRT_VERSION__ 0x0700.
>

Thank you! I commit this patch to my repository of github.
https://gist.github.com/1569277#file_mingw_aligned_malloc.patch
https://github.com/authorNari/ruby/commit/5b0b56c7e60b532ed732fa39ae682a8ed0396dfa

> Result of make benchmark OPTS="-r 5".
> https://gist.github.com/1569277
>
> I skipped vm_thread_mutex2 and vm_thread_pass_flood cause of errors.
> Some benchmarks are not a little slower on my box. Some benchmarks are
> faster. Win7 might have different results.

Thanks for your help :)

> Here is _aligned_[malloc|free] timing result.
> https://gist.github.com/1569002
>
> It's based on Jon Forums's work.
> https://github.com/jonforums/tma
>
> _aligned_[malloc|free] looks slower than plain malloc/free.

It would not be a big problem because my patch don't call
_aligned_malloc/free frequently.


Thanks.
-- 
Narihiro Nakamura (nari)

In This Thread