NEW GC NEW GC NEW GC
FeepingCreature
feepingcreature at gmail.com
Mon Feb 10 12:17:42 UTC 2025
On Monday, 3 February 2025 at 18:14:59 UTC, Steven Schveighoffer
wrote:
> The videos are here:
> part 1:
> https://www.youtube.com/live/AzezZhvIyS4?si=JH8vtvIbZigbBdcx&t=7467
> part 2:
> https://www.youtube.com/live/dq7Jhp9cv4w?si=TbOPzVQ2k-sCGuVT&t=8173
>
> TL;DW:
>
> 1. We have a lot of improvements possible over the current GC.
> 2. Get rid of global lock
> 3. Utilize the system memory in a cache-friendly way
> 4. Give back memory to the OS more regularly.
> 5. Lower the cost of using the GC to the point where using
> malloc isn't really advantageous
> 6. Concurrent scanning (planned)
>
> FYI, we have a working version of ldc that includes the new GC
> as an option. There are caveats, but you can try it out:
> https://github.com/symmetryinvestments/ldc/releases/
>
> To use, pass in `--DRT-gcopt=gc:sdc`, and if you get hangs, you
> may want to try `--DRT-gcopt=parallel:0`, as we currently have
> some hangs that occur rarely with parallel scanning with
> multiple threads.
>
> -Steve
NEW GC NEW GC NEW GC! I tried it on an internal service that's
been known as a bit of a memory hog.
*Not* as fast as the current one right now as far as I can see. A
memory heavy test workload seems about 2x slower.
But tbh I'll take that because:
Stock LDC based service after a memory hungry operation: 2952MB
res
SDC/Symmetry GC after the same operation: 907MB res
That's genuinely amazing to me. Very excited for how this thing
will run with a bit more opt.
More information about the Digitalmars-d-announce
mailing list