1. 04 Jun, 2012 14 commits
  2. 03 Jun, 2012 7 commits
  3. 02 Jun, 2012 9 commits
  4. 01 Jun, 2012 5 commits
  5. 31 May, 2012 5 commits
    • Nigel Tao's avatar
      exp/html/atom: faster, hash-based lookup. · d2a6098e
      Nigel Tao authored
      exp/html/atom benchmark:
      benchmark          old ns/op    new ns/op    delta
      BenchmarkLookup       199226        80770  -59.46%
      
      exp/html benchmark:
      benchmark                      old ns/op    new ns/op    delta
      BenchmarkParser                  4864890      4510834   -7.28%
      BenchmarkHighLevelTokenizer      2209192      1969684  -10.84%
      benchmark                       old MB/s     new MB/s  speedup
      BenchmarkParser                    16.07        17.33    1.08x
      BenchmarkHighLevelTokenizer        35.38        39.68    1.12x
      
      R=r
      CC=golang-dev
      https://golang.org/cl/6261054
      d2a6098e
    • Rémy Oudompheng's avatar
      runtime: lower memory overhead of heap profiling. · baf91c31
      Rémy Oudompheng authored
      The previous code was preparing arrays of entries that would be
      filled if there was one entry every 128 bytes. Moving to a 4096
      byte interval reduces the overhead per megabyte of address space
      to 2kB from 64kB (on 64-bit systems).
      The performance impact will be negative for very small MemProfileRate.
      
      test/bench/garbage/tree2 -heapsize 800000000 (default memprofilerate)
      Before: mprof 65993056 bytes (1664 bucketmem + 65991392 addrmem)
      After:  mprof  1989984 bytes (1680 bucketmem +  1988304 addrmem)
      
      R=golang-dev, rsc
      CC=golang-dev, remy
      https://golang.org/cl/6257069
      baf91c31
    • Sameer Ajmani's avatar
      CONTRIBUTORS: Add Ryan Barrett (Google CLA) · 29e32d73
      Sameer Ajmani authored
      R=golang-dev, r
      CC=golang-dev
      https://golang.org/cl/6244071
      29e32d73
    • Rémy Oudompheng's avatar
      runtime/pprof, misc/pprof: correct profile of total allocations. · c4a814f2
      Rémy Oudompheng authored
      The previous heap profile format did not include buckets with
      zero used bytes. Also add several missing MemStats fields in
      debug mode.
      
      R=golang-dev, rsc
      CC=golang-dev, remy
      https://golang.org/cl/6249068
      c4a814f2
    • Nigel Tao's avatar
      exp/html/atom: new package. · bb4a817a
      Nigel Tao authored
      50% fewer mallocs in HTML tokenization, resulting in 25% fewer mallocs
      in parsing go1.html.
      
      Making the parser use integer comparisons instead of string comparisons
      will be a follow-up CL, to be co-ordinated with Andy Balholm's work.
      
      exp/html benchmarks before/after:
      
      BenchmarkParser	     500	   4754294 ns/op	  16.44 MB/s
              parse_test.go:409: 500 iterations, 14651 mallocs per iteration
      BenchmarkRawLevelTokenizer	    2000	    903481 ns/op	  86.51 MB/s
              token_test.go:678: 2000 iterations, 28 mallocs per iteration
      BenchmarkLowLevelTokenizer	    2000	   1260485 ns/op	  62.01 MB/s
              token_test.go:678: 2000 iterations, 41 mallocs per iteration
      BenchmarkHighLevelTokenizer	    1000	   2165964 ns/op	  36.09 MB/s
              token_test.go:678: 1000 iterations, 6616 mallocs per iteration
      
      BenchmarkParser	     500	   4664912 ns/op	  16.76 MB/s
              parse_test.go:409: 500 iterations, 11266 mallocs per iteration
      BenchmarkRawLevelTokenizer	    2000	    903065 ns/op	  86.55 MB/s
              token_test.go:678: 2000 iterations, 28 mallocs per iteration
      BenchmarkLowLevelTokenizer	    2000	   1260032 ns/op	  62.03 MB/s
              token_test.go:678: 2000 iterations, 41 mallocs per iteration
      BenchmarkHighLevelTokenizer	    1000	   2143356 ns/op	  36.47 MB/s
              token_test.go:678: 1000 iterations, 3231 mallocs per iteration
      
      R=r, rsc, rogpeppe
      CC=andybalholm, golang-dev
      https://golang.org/cl/6255062
      bb4a817a