Tweakig -lowmem to be more eager

Anonymouse asdf at asdf.net
Tue May 21 23:41:40 UTC 2019


On Monday, 20 May 2019 at 13:41:15 UTC, Boris-Barboris wrote:
> On Sunday, 19 May 2019 at 23:54:27 UTC, Anonymouse wrote:
>> What makes it decide to collect? What triggers it?
>
> You can try setting heapSizeFactor option to something lower 
> than 2 to increase collection frequency:
> https://github.com/dlang/druntime/blob/47b03c14a1097d28afcf22f645628ba4046377bd/src/core/gc/config.d#L26
> https://dlang.org/spec/garbage.html#gc_config
>
> dmd appears to respect DRT_GCOPT environment variable.

This does look like what I need. I'm having no luck with 
DRT_GCOPT though.

$ dmd "--DRT-gcopt=heapSizeFactor=1.5 profile:1" hello.d
         Number of collections:  2
         Total GC prep time:  0 milliseconds
         Total mark time:  0 milliseconds
         Total sweep time:  0 milliseconds
         Total page recovery time:  0 milliseconds
         Max Pause Time:  0 milliseconds
         Grand total GC time:  0 milliseconds
GC summary:    5 MB,    2 GC    0 ms, Pauses    0 ms <    0 ms

$ DRT_GCOPT="heapSizeFactor=1.5 profile:1" dmd hello.d
[no output]

Are you sure dmd honours it? I can't grep rt_envvars_enabled in 
the dmd sources.

How can I otherwise get dub to pass these onto dmd?


More information about the Digitalmars-d-learn mailing list