shared libraries in D

Iain Buclaw ibuclaw at ubuntu.com
Sat Feb 19 03:20:12 PST 2011


== Quote from Iain Buclaw (ibuclaw at ubuntu.com)'s article
> == Quote from Christian Kamm (kamm-incasoftware at removethis.de)'s article
> > Iain Buclaw wrote:
> > > == Quote from Christian Kamm (kamm-incasoftware at removethis.de)'s article
> > >> Iain Buclaw wrote:
> > >> > Will be making shared libraries default in GDC pretty soon now...
> > >> Did you adjust the GC to check the shared libraries' data sections for
> > >> references? When we looked at this for LDC that turned out to slow down
> > >> GC runs significantly.
> > >> I'm pretty sure bearophile benchmarked it at the time.
> > >> As far as I remember the main problem was that we were scanning all data
> > >> sections - even of plain C libraries.
> > >> Regards,
> > >> Christian
> > >
> > > When adding more ranges in the GC to check, slowdowns are inevitable. So
> > > far in my personal testing, the slowdowns seem pretty negligible in
> > > comparison (never more than 0.300 seconds, though that could be a sign
> > > that I'm not pushing it in the right way).
> > >
> > > To prevent the GC from scanning C libraries, I've added an extra check to
> > > only add ranges that have a D module inside them.
> > That sounds good. I was asking because I didn't see any code like this in
> > http://bitbucket.org/goshawk/gdc - which repository is this in?
> > Christian
> It's currently on my local workstation, all mashed together with the D2 beta
> merge. I have faith that my workstation won't crash and die in the meantime
> <touchwood> and will sift through it all (and break it down into sizeable commits)
> once I'm satisfied that there's nothing more I can do.
> Regards
> Iain

Module/Routine is now up here:
https://bitbucket.org/goshawk/gdc/src/a402fef51a6a/d/druntime/rt/gccmemory.d


More information about the Digitalmars-d mailing list