runtime: faster GC sweep phase benchmark                              old ns/op    new ns/op    delta
runtime: faster GC sweep phase
benchmark                              old ns/op    new ns/op    delta

garbage.BenchmarkParser               3731065750   3715543750   -0.41%
garbage.BenchmarkParser-2             3631299750   3495248500   -3.75%
garbage.BenchmarkParser-4             3386486000   3339353000   -1.39%
garbage.BenchmarkParser-8             3267632000   3286422500   +0.58%
garbage.BenchmarkParser-16            3299203000   3316081750   +0.51%

garbage.BenchmarkTree                  977532888    919453833   -5.94%
garbage.BenchmarkTree-2                919948555    853478000   -7.23%
garbage.BenchmarkTree-4                841329000    790207000   -6.08%
garbage.BenchmarkTree-8                787792777    740380666   -6.01%
garbage.BenchmarkTree-16               899257166    846594555   -5.86%

garbage.BenchmarkTree2                 574876300    571885800   -0.52%
garbage.BenchmarkTree2-2               348162700    345888900   -0.65%
garbage.BenchmarkTree2-4               184912500    179137000   -3.22%
garbage.BenchmarkTree2-8               104243900    103485600   -0.73%
garbage.BenchmarkTree2-16               97269500     85137100  -14.25%

garbage.BenchmarkParserPause           141101976    157746974  +11.80%
garbage.BenchmarkParserPause-2         103096051     83043048  -19.45%
garbage.BenchmarkParserPause-4          52153133     45951111  -11.89%
garbage.BenchmarkParserPause-8          36730190     38901024   +5.91%
garbage.BenchmarkParserPause-16         32678875     29578585   -9.49%

garbage.BenchmarkTreePause              29487065     29648439   +0.55%
garbage.BenchmarkTreePause-2            22443494     21306159   -5.07%
garbage.BenchmarkTreePause-4            15799691     14985647   -5.15%
garbage.BenchmarkTreePause-8            10768112     9531420   -12.97%
garbage.BenchmarkTreePause-16           16329891     15205158   -6.89%

garbage.BenchmarkTree2Pause           2586957240   2577533200   -0.36%
garbage.BenchmarkTree2Pause-2         1683383760   1673923800   -0.56%
garbage.BenchmarkTree2Pause-4         1102860320   1074040280   -2.68%
garbage.BenchmarkTree2Pause-8          902627920    886122400   -1.86%
garbage.BenchmarkTree2Pause-16         856470920    804152320   -6.50%

garbage.BenchmarkParserLastPause       277316000    280839000   +1.25%
garbage.BenchmarkParserLastPause-2     179446000    163687000   -8.78%
garbage.BenchmarkParserLastPause-4     106752000     94144000  -11.81%
garbage.BenchmarkParserLastPause-8      57758000     61640000   +6.72%
garbage.BenchmarkParserLastPause-16     51235000     42552000  -16.95%

garbage.BenchmarkTreeLastPause          45244000     50786000  +12.25%
garbage.BenchmarkTreeLastPause-2        37163000     34654000   -6.75%
garbage.BenchmarkTreeLastPause-4        24178000     21967000   -9.14%
garbage.BenchmarkTreeLastPause-8        20390000     15648000  -30.30%
garbage.BenchmarkTreeLastPause-16       22398000     20180000   -9.90%

garbage.BenchmarkTree2LastPause       5748706000   5718809000   -0.52%
garbage.BenchmarkTree2LastPause-2     3481570000   3458844000   -0.65%
garbage.BenchmarkTree2LastPause-4     1849073000   1791330000   -3.22%
garbage.BenchmarkTree2LastPause-8     1042375000   1034811000   -0.73%
garbage.BenchmarkTree2LastPause-16     972637000    851323000  -14.25%

There is also visible improvement in consumed CPU time:
tree2 -heapsize=8000000000 -cpus=12
before: 248.74user 6.36system 0:52.74elapsed 483%CPU
after:  229.86user 6.33system 0:51.08elapsed 462%CPU
-1.66s of real time, but -18.91s of consumed CPU time

R=golang-dev
CC=golang-dev
http://codereview.appspot.com/6215065

Committer: Russ Cox <5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org>

d0f/go-zh,rdp/rogerpack2005-golang,mhennings/marcohennings-go,scirelli/scirelli-go,rdp/rogerpack2005-golang,d0f/go-zh,rflanagan/reginaldflanagan-project1,sanjosh/sanjos100-tipc,rdp/rogerpack2005-golang,rdp/rogerpack2005-golang,scirelli/scirelli-go,webfd/go-zh,glycerine/jeaten-go-arrayof-structof,sanjosh/sanjos100-tipc,webfd/go-zh,Triskite/willstone-goclone,bryanxu/go-zh,d0f/go-zh,glycerine/jeaten-go-arrayof-structof,Triskite/willstone-goclone,glycerine/jeaten-go-arrayof-structof,rflanagan/reginaldflanagan-project1,rflanagan/reginaldflanagan-project1,bryanxu/go-zh,rdp/rogerpack2005-golang,mhennings/marcohennings-go,rdp/rogerpack2005-golang,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,bryanxu/go-zh,sanjosh/sanjos100-tipc,d0f/go-zh,rflanagan/reginaldflanagan-project1,bryanxu/go-zh,glycerine/jeaten-go-arrayof-structof,sanjosh/sanjos100-tipc,rdp/rogerpack2005-golang,bryanxu/go-zh,glycerine/jeaten-go-arrayof-structof,Triskite/willstone-goclone,rflanagan/reginaldflanagan-project1,webfd/go-zh,sanjosh/sanjos100-tipc,bryanxu/go-zh,webfd/go-zh,mhennings/marcohennings-go,scirelli/scirelli-go,d0f/go-zh,bryanxu/go-zh,webfd/go-zh,scirelli/scirelli-go,sanjosh/sanjos100-tipc,sanjosh/sanjos100-tipc,rflanagan/reginaldflanagan-project1,rdp/rogerpack2005-golang,d0f/go-zh,rflanagan/reginaldflanagan-project1,d0f/go-zh,glycerine/jeaten-go-arrayof-structof,mhennings/marcohennings-go,scirelli/scirelli-go,Triskite/willstone-goclone,sanjosh/sanjos100-tipc,webfd/go-zh,webfd/go-zh,glycerine/jeaten-go-arrayof-structof,Triskite/willstone-goclone,mhennings/marcohennings-go,bryanxu/go-zh,scirelli/scirelli-go,mhennings/marcohennings-go,webfd/go-zh,scirelli/scirelli-go,mhennings/marcohennings-go,Triskite/willstone-goclone,scirelli/scirelli-go,Triskite/willstone-goclone,Triskite/willstone-goclone,rflanagan/reginaldflanagan-project1,mhennings/marcohennings-go