www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - For Inspiration: arena-based, quad-color incremental, generational, non-copying, high-speed, cache-optimized garbage collector

reply =?iso-8859-1?Q?Robert_M._M=FCnch?= <robert.muench saphirion.com> writes:
Hi, not sure if anyone is aware of this:

http://wiki.luajit.org/New-Garbage-Collector

I don't know if anythin like this would fit for D but the concept is 
described pretty extensive.

-- 
Robert M. Münch
http://www.saphirion.com
smarter | better | faster
Feb 04 2018
next sibling parent reply rikki cattermole <rikki cattermole.co.nz> writes:
On 04/02/2018 8:33 AM, Robert M. Münch wrote:
 Hi, not sure if anyone is aware of this:
 
 http://wiki.luajit.org/New-Garbage-Collector
 
 I don't know if anythin like this would fit for D but the concept is 
 described pretty extensive.
 
"It doesn't need to be concurrent, since Lua states are completely independent." Single threaded simplifies a lot. So no, not useful.
Feb 04 2018
next sibling parent reply =?iso-8859-1?Q?Robert_M._M=FCnch?= <robert.muench saphirion.com> writes:
On 2018-02-04 08:41:04 +0000, rikki cattermole said:

 "It doesn't need to be concurrent, since Lua states are completely 
 independent."
 
 Single threaded simplifies a lot. So no, not useful.
Well, I wouldn't be able to judge that fast from a single line in the text, if the concept can/can't be tweaked/extended. That's why I added "for inspiration" to the subject... -- Robert M. Münch http://www.saphirion.com smarter | better | faster
Feb 04 2018
parent reply rikki cattermole <rikki cattermole.co.nz> writes:
On 04/02/2018 8:49 AM, Robert M. Münch wrote:
 On 2018-02-04 08:41:04 +0000, rikki cattermole said:
 
 "It doesn't need to be concurrent, since Lua states are completely 
 independent."

 Single threaded simplifies a lot. So no, not useful.
Well, I wouldn't be able to judge that fast from a single line in the text, if the concept can/can't be tweaked/extended. That's why I added "for inspiration" to the subject...
Really we ought to use Boehm, as the newer versions can be generational&incremental. It is potentially quite a lot better than our version of it.
Feb 04 2018
next sibling parent reply notna <notna.remove.this ist-einmalig.de> writes:
On Sunday, 4 February 2018 at 09:04:41 UTC, rikki cattermole 
wrote:
 On 04/02/2018 8:49 AM, Robert M. Münch wrote:
 On 2018-02-04 08:41:04 +0000, rikki cattermole said:
 
 "It doesn't need to be concurrent, since Lua states are 
 completely independent."

 Single threaded simplifies a lot. So no, not useful.
Well, I wouldn't be able to judge that fast from a single line in the text, if the concept can/can't be tweaked/extended. That's why I added "for inspiration" to the subject...
Really we ought to use Boehm, as the newer versions can be generational&incremental. It is potentially quite a lot better than our version of it.
... found this a nice read some time ago... https://blog.plan99.net/modern-garbage-collection-911ef4f8bd8e
Feb 04 2018
parent =?iso-8859-1?Q?Robert_M._M=FCnch?= <robert.muench saphirion.com> writes:
On 2018-02-04 12:41:16 +0000, notna said:

 ... found this a nice read some time ago... 
 https://blog.plan99.net/modern-garbage-collection-911ef4f8bd8e
Thanks, pretty interesting. BTW: I used this stuff about 20 years ago: http://www.microquill.com/ and they are still around. And yes, it was damn fast and HeapAgent was a great tool to use. -- Robert M. Münch http://www.saphirion.com smarter | better | faster
Feb 04 2018
prev sibling parent Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On Sunday, 4 February 2018 at 09:04:41 UTC, rikki cattermole 
wrote:
 On 04/02/2018 8:49 AM, Robert M. Münch wrote:
 On 2018-02-04 08:41:04 +0000, rikki cattermole said:
 
 "It doesn't need to be concurrent, since Lua states are 
 completely independent."

 Single threaded simplifies a lot. So no, not useful.
Well, I wouldn't be able to judge that fast from a single line in the text, if the concept can/can't be tweaked/extended. That's why I added "for inspiration" to the subject...
Really we ought to use Boehm, as the newer versions can be generational&incremental.
Not really you can’t - first check the API to understand that without manually placed (or injected by compiler) safepoints it doesn’t work.
 It is potentially quite a lot better than our version of it.
It might be.
Feb 04 2018
prev sibling parent Kagamin <spam here.lot> writes:
On Sunday, 4 February 2018 at 08:41:04 UTC, rikki cattermole 
wrote:
 Single threaded simplifies a lot. So no, not useful.
Useful for server applications that more often than not have independent threads.
Feb 06 2018
prev sibling parent Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On Sunday, 4 February 2018 at 08:33:35 UTC, Robert M. Münch wrote:
 Hi, not sure if anyone is aware of this:

 http://wiki.luajit.org/New-Garbage-Collector

 I don't know if anythin like this would fit for D but the 
 concept is described pretty extensive.
Generational -> write barriers -> no, not really.
Feb 04 2018