Wednesday, October 10, 2012

GC improvements continue

I had a bit of time recently to go back to the HPS memory manager and deal with a few loose ends I had previously identified.  I overhauled the large and fixed space implementation because of performance considerations, with the goal of removing bits of inefficiency from the VM's background performance level.  Besides the usual code deletion (about 250 LOC gone so far), scavenges in the presence of numerous fixed space objects became measurably faster.  The same should be true with large space, but of course there are generally fewer large space objects than fixed space objects so your mileage may vary.  Other operations that got a bit faster include mark/sweep GCs and becomes in which at least one of the objects involved is in fixed or large space.

No comments: