[Gc] More memory used on PPC platforms?
hans.boehm at hp.com
Wed Feb 6 12:42:23 PST 2008
[Adding a little to previous observations:]
> We recently ported our application to the PPC 405 platform.
> First we are noticing a big performance drop between our X86
> and PPC program. I suspect this is mainly due to the CPU on
> the PPC side, but on X86 our GC cycles take roughly 30 msec,
> whereas on PPC it takes about 90 msec.
If this can't be explained by general CPU performance differences, it might be worth profiling. I don't do a lot of ppc testing. There may be particularly synchronization related issues that we don't handle in the best possible way.
> Any thoughts on why memory usage for the same code is more on
> PPC then on X86?
As was pointed out, the difference is not huge, and may be fairly random variation. The heap size is also affected by the root size. If the root segments are larger, the collector will aim for a large heap to amortize the added root scanning costs. You might want to look at GC_dump() output (e.g. by setting GC_DUMP_REGULARLY) to compare root set sizes. If the root set is much bigger than it should be, you may be scanning memory regions you shouldn't be.
More information about the Gc