On Tuesday, 13 September 2016 at 11:59:46 UTC, Shachar Shemesh wrote:
On 13/09/16 02:21, deadalnix wrote:

I stay convinced that an hybrid approach is inevitable and am surprised
why few are going there (hello PHP, here right).


Here's my worries about the hybrid approach. The GC run time is proportional not to the amount of memory you manage with the GC, but to the amount of memory that might hold a pointer to a GC managed memory. In other words, if most of my memory is RC managed, but some of it is GC, I pay the price of both memory manager on most of my memory.

Shachar

Hi Shachar.

I hope you're well.

Would you mind elaborating a bit on why the cost of GC managed memory is as high as you imply when combined with other approaches, at least on a 64 bit machine and presuming you have a degree of hygiene and don't directly use a pointer allowed to point to either. Eg if you use GC for long lived allocations and RC for short lived ones (and the RC constructor makes sure the thing is not registered with the GC so that takes care of short lived parts of long lived structures), how in practice would this be a problem ? I am no GC expert, but keen to update my mental model.


Laeeth

Reply via email to