|
Minux |
at Oct 12, 2012 at 7:07 am
|
⇧ |
| |
On Fri, Oct 12, 2012 at 2:41 PM, Rémy Oudompheng wrote:
As far as I remember, the largest memory usage when compiling the
dreadful output of test/rotate.go was essentially in Nodes. It's not
clear what we can do for that.
Yeah, true.
By freely reordering struct Node, I can make the 6g's maximum RSS
smaller by 1.43% (from 5357168 KiB to 5281024 KiB, -76144 KiB).
After reordering struct Sym, RSS go down by 3776 KiB (to 5277248 KiB).
After reordering struct Type, RSS go down by 9168 KiB (to 5268080 KiB).
To see the maximum RSS saved this way, I added #pragma pack to gc/go.h,
and the RSS is now 5198800 KiB (down by 158368 KiB, a merely 3%).
No big improvements (and doing this will severely affect code documentation
quality), so maybe we need to use different type of Node struct for
different
kinds of node (which is a pretty big task).