Re: call for GC benchmarks
On Sunday, 4 January 2015 at 05:38:06 UTC, Martin Nowak wrote: I'd like to have a few more real world GC benchmarks in druntime. The current ones are all rather micro-benchmarks, some of them don't even create garbage. So if someone has a program that is heavily GC limited, I'd be interested in seeing that converted to a benchmark. Made the start with one https://github.com/D-Programming-Language/druntime/pull/1078 that resembles a mysql to mongodb importer I wrote recently. You could try building really old versions of DCD. I converted my entire D parsing library to allocators several months ago and got a huge speed boost.
Re: call for GC benchmarks
Am 04.01.2015 um 06:37 schrieb Martin Nowak: I'd like to have a few more real world GC benchmarks in druntime. The current ones are all rather micro-benchmarks, some of them don't even create garbage. So if someone has a program that is heavily GC limited, I'd be interested in seeing that converted to a benchmark. Made the start with one https://github.com/D-Programming-Language/druntime/pull/1078 that resembles a mysql to mongodb importer I wrote recently. I have a 3D Space shooter implemented in D. Before I transitioned it over to complete manual memory management, the GC was the biggest bottleneck. Would you be interrested in something like that as well, or are smaller applications with a command line interface preferred? If you are interrested I might be able to branch of a old revision and make it compile with the latest dmd again. Kind Regards Benjamin Thaut
Re: call for GC benchmarks
On 01/05/2015 11:26 AM, Benjamin Thaut wrote: If you are interrested I might be able to branch of a old revision and make it compile with the latest dmd again. I'm interested in realistically simulating your allocation patterns. That includes types and allocation sizes, allocation order, lifetime and connectivity. Definitely sounds interesting.
Re: call for GC benchmarks
Am 05.01.2015 um 17:02 schrieb Kiith-Sa: On Monday, 5 January 2015 at 14:52:36 UTC, Martin Nowak wrote: On 01/05/2015 11:26 AM, Benjamin Thaut wrote: If you are interrested I might be able to branch of a old revision and make it compile with the latest dmd again. I'm interested in realistically simulating your allocation patterns. That includes types and allocation sizes, allocation order, lifetime and connectivity. Definitely sounds interesting. Maybe make a proxy GC, record all allocations to a file, then replay those allocations as a benchmark? That won't work. Not only the allocations are important but the pointers between them as well. Your proposed solution would only work if all pointers within a D program are known and could be recorded.
Re: call for GC benchmarks
On Monday, 5 January 2015 at 14:52:36 UTC, Martin Nowak wrote: On 01/05/2015 11:26 AM, Benjamin Thaut wrote: If you are interrested I might be able to branch of a old revision and make it compile with the latest dmd again. I'm interested in realistically simulating your allocation patterns. That includes types and allocation sizes, allocation order, lifetime and connectivity. Definitely sounds interesting. Maybe make a proxy GC, record all allocations to a file, then replay those allocations as a benchmark?
Re: call for GC benchmarks
On 01/05/2015 06:18 PM, Benjamin Thaut wrote: That won't work. Not only the allocations are important but the pointers between them as well. Your proposed solution would only work if all pointers within a D program are known and could be recorded. And I'm also interested in the type information.
Re: call for GC benchmarks
On Sunday, 4 January 2015 at 06:04:38 UTC, Manu via Digitalmars-d wrote: I wonder if the code can still run against the builtin GC to reproduce the original problem? OK, will have a look.
Re: call for GC benchmarks
On 5 January 2015 at 01:26, Martin Nowak via Digitalmars-d digitalmars-d@puremagic.com wrote: On Sunday, 4 January 2015 at 06:04:38 UTC, Manu via Digitalmars-d wrote: I wonder if the code can still run against the builtin GC to reproduce the original problem? OK, will have a look. Recall rainer lectured on it as dconf2013. So there's measurements there too.
call for GC benchmarks
I'd like to have a few more real world GC benchmarks in druntime. The current ones are all rather micro-benchmarks, some of them don't even create garbage. So if someone has a program that is heavily GC limited, I'd be interested in seeing that converted to a benchmark. Made the start with one https://github.com/D-Programming-Language/druntime/pull/1078 that resembles a mysql to mongodb importer I wrote recently.
Re: call for GC benchmarks
On 4 January 2015 at 15:37, Martin Nowak via Digitalmars-d digitalmars-d@puremagic.com wrote: I'd like to have a few more real world GC benchmarks in druntime. The current ones are all rather micro-benchmarks, some of them don't even create garbage. So if someone has a program that is heavily GC limited, I'd be interested in seeing that converted to a benchmark. Made the start with one https://github.com/D-Programming-Language/druntime/pull/1078 that resembles a mysql to mongodb importer I wrote recently. VisualD used to be my poster-child of GC problem cases. Rainer wrote his whole new GC for it. I wonder if the code can still run against the builtin GC to reproduce the original problem?