Ciprian Mustiata | 18 Nov 2008 16:13
Picon

Compacting GC (again)

Hello,

Great achievements with the Linear IL runtime and Mono.SIMD optimizations. The linked-list allocators as Visual C++'s runtime new and delete works for a large amount of small objects (the worse case anyway for a C++ program) around 10-40 times slower than the GC allocation in C#. Anyway, mono allocations/deallocations took (again in my microbenchmarks) around of the speed of C++. I've happily read about the 2.2+ versions will try to include the compacting GC.

The question is: for microbenchmarks with small objects, that will be the main thing that will be tested when someone will use the CompactingGC (and for typical desktop programs that do processing, like a XML processing logic or ASP.NET applications), what should be the typical gain on mater of speed? Can be enabled right now to test it from SVN code?

Best achievements forward in Mono's future!
Ciprian Mustiata

_______________________________________________
Mono-gc-list maillist  -  Mono-gc-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-gc-list
Rodrigo Kumpera | 18 Nov 2008 18:00
Picon
Gravatar

Re: Compacting GC (again)



On Tue, Nov 18, 2008 at 1:13 PM, Ciprian Mustiata <ciprian.mustiata <at> gmail.com> wrote:
Hello,

Great achievements with the Linear IL runtime and Mono.SIMD optimizations. The linked-list allocators as Visual C++'s runtime new and delete works for a large amount of small objects (the worse case anyway for a C++ program) around 10-40 times slower than the GC allocation in C#. Anyway, mono allocations/deallocations took (again in my microbenchmarks) around of the speed of C++. I've happily read about the 2.2+ versions will try to include the compacting GC.

The question is: for microbenchmarks with small objects, that will be the main thing that will be tested when someone will use the CompactingGC (and for typical desktop programs that do processing, like a XML processing logic or ASP.NET applications), what should be the typical gain on mater of speed? Can be enabled right now to test it from SVN code?

The new generational gc is faster than the current one but the main advantage is the smaller pause times.

Right now you can do a custom build of mono with the new gc enabled. It's a very experimental feature and it's neither complete or ready for general use, so use at your our risk.


 

Best achievements forward in Mono's future!
Ciprian Mustiata

_______________________________________________
Mono-gc-list maillist  -  Mono-gc-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-gc-list


_______________________________________________
Mono-gc-list maillist  -  Mono-gc-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-gc-list

Gmane