1. 11 May, 2012 2 commits
  2. 10 May, 2012 4 commits
  3. 09 May, 2012 4 commits
    • Marcel van Lohuizen's avatar
      exp/locale/collate: Add maketables tool and generated tables. · 0355a717
      Marcel van Lohuizen authored
      Also set maxContractLen automatically.
      Note that the table size is much bigger than it needs to be.
      Optimization is best done, though, when the language specific
      tables are added.
      
      R=r
      CC=golang-dev
      https://golang.org/cl/6167044
      0355a717
    • Francisco Souza's avatar
      cmd/go: fix remote help reference to "go help packages" · 25a8a8da
      Francisco Souza authored
      go help remote used to reference "go help importpath", which has
      changed to "go help packages".
      
      Fixes #3598.
      
      R=golang-dev, bradfitz
      CC=golang-dev
      https://golang.org/cl/6201065
      25a8a8da
    • Nigel Tao's avatar
      go: fix the import path "./..." not matching ".". · c8332198
      Nigel Tao authored
      Tested manually.
      
      Fixes #3554.
      
      Before:
      $ cd $GOROOT/src/pkg
      $ go list io
      io
      $ go list io/...
      io
      io/ioutil
      $ cd $GOROOT/src/pkg/io
      $ go list .
      io
      $ go list ./...
      io/ioutil
      
      After:
      $ cd $GOROOT/src/pkg
      $ go list io
      io
      $ go list io/...
      io
      io/ioutil
      $ cd $GOROOT/src/pkg/io
      $ go list .
      io
      $ go list ./...
      io
      io/ioutil
      $ go list ././...
      io
      io/ioutil
      $ go list ././.././io/...
      io
      io/ioutil
      $ go list ../image
      image
      $ go list ../image/...
      image
      image/color
      image/draw
      image/gif
      image/jpeg
      image/png
      $ go list ../.../template
      html/template
      text/template
      $ cd $GOROOT/src/pkg
      $ go list ./io
      io
      $ go list ./io/...
      io
      io/ioutil
      $ go list ./.../pprof
      net/http/pprof
      runtime/pprof
      $ go list ./compress
      can't load package: package compress: no Go source files in /home/nigeltao/go/src/pkg/compress
      $ go list ./compress/...
      compress/bzip2
      compress/flate
      compress/gzip
      compress/lzw
      compress/zlib
      $ cd $GOROOT/src/pkg/code.google.com
      $ go list ./p/leveldb-go/...
      code.google.com/p/leveldb-go/leveldb
      code.google.com/p/leveldb-go/leveldb/crc
      code.google.com/p/leveldb-go/leveldb/db
      code.google.com/p/leveldb-go/leveldb/memdb
      code.google.com/p/leveldb-go/leveldb/memfs
      code.google.com/p/leveldb-go/leveldb/record
      code.google.com/p/leveldb-go/leveldb/table
      code.google.com/p/leveldb-go/manualtest/filelock
      $ go list ./p/.../truetype
      code.google.com/p/freetype-go/example/truetype
      code.google.com/p/freetype-go/freetype/truetype
      $ go list ./p/.../example
      warning: "./p/.../example" matched no packages
      $ go list ./p/.../example/...
      code.google.com/p/freetype-go/example/freetype
      code.google.com/p/freetype-go/example/gamma
      code.google.com/p/freetype-go/example/raster
      code.google.com/p/freetype-go/example/round
      code.google.com/p/freetype-go/example/truetype
      code.google.com/p/x-go-binding/example/imgview
      code.google.com/p/x-go-binding/example/xgb
      
      R=rsc
      CC=golang-dev
      https://golang.org/cl/6194056
      c8332198
    • Nigel Tao's avatar
      compress/testdata: change {e,pi}.txt from 10k to 100k digits. · 738e77aa
      Nigel Tao authored
      These files change from exactly 10003 bytes long to 100003: a digit,
      a '.', 100k digits, and a '\n'.
      
      The magic constants in compress/flate/deflate_test.go change since
      deflateInflateStringTests checks that the compressed form of e.txt
      is not 'too large'. I'm not exactly sure how these numbers were
      originally calculated (they were introduced in codereview 5554066
      "make lazy matching work"); perhaps krasin@golang.org can comment.
      My change was to increase the first one (no compression) to a tight
      bound, and multiply all the others by 10.
      
      Benchcmp numbers for compress/flate and compress/lzw below. LZW's
      window size of 4096 is less than 10k, so shows no significant change.
      Flate's window size is 32768, between 10k and 100k, and so the .*1e5
      and .*1e6 benchmarks show a dramatic drop, since the compressed forms
      are no longer a trivial forward copy of 10k digits repeated over and
      over, but should now be more representative of real world usage.
      
      compress/flate:
      benchmark                            old MB/s     new MB/s  speedup
      BenchmarkDecodeDigitsSpeed1e4           16.58        16.52    1.00x
      BenchmarkDecodeDigitsSpeed1e5           68.09        18.10    0.27x
      BenchmarkDecodeDigitsSpeed1e6          124.63        18.35    0.15x
      BenchmarkDecodeDigitsDefault1e4         17.21        17.12    0.99x
      BenchmarkDecodeDigitsDefault1e5        118.28        19.19    0.16x
      BenchmarkDecodeDigitsDefault1e6        295.62        20.52    0.07x
      BenchmarkDecodeDigitsCompress1e4        17.22        17.17    1.00x
      BenchmarkDecodeDigitsCompress1e5       118.19        19.21    0.16x
      BenchmarkDecodeDigitsCompress1e6       295.59        20.55    0.07x
      BenchmarkEncodeDigitsSpeed1e4            8.18         8.19    1.00x
      BenchmarkEncodeDigitsSpeed1e5           43.22        12.84    0.30x
      BenchmarkEncodeDigitsSpeed1e6           80.76        13.48    0.17x
      BenchmarkEncodeDigitsDefault1e4          6.29         6.19    0.98x
      BenchmarkEncodeDigitsDefault1e5         31.63         3.60    0.11x
      BenchmarkEncodeDigitsDefault1e6         52.97         3.24    0.06x
      BenchmarkEncodeDigitsCompress1e4         6.20         6.19    1.00x
      BenchmarkEncodeDigitsCompress1e5        31.59         3.59    0.11x
      BenchmarkEncodeDigitsCompress1e6        53.18         3.25    0.06x
      
      compress/lzw:
      benchmark               old MB/s     new MB/s  speedup
      BenchmarkDecoder1e4        21.99        22.09    1.00x
      BenchmarkDecoder1e5        22.77        22.71    1.00x
      BenchmarkDecoder1e6        22.90        22.90    1.00x
      BenchmarkEncoder1e4        21.04        21.19    1.01x
      BenchmarkEncoder1e5        22.06        22.06    1.00x
      BenchmarkEncoder1e6        22.16        22.28    1.01x
      
      R=rsc
      CC=golang-dev, krasin
      https://golang.org/cl/6207043
      738e77aa
  4. 08 May, 2012 2 commits
    • Nigel Tao's avatar
      compress/flate: benchmark some English text, not just the digits of e. · ffd0d02d
      Nigel Tao authored
      The testdata/e.txt input is repeated on the longer benchmarks, but the
      length of that data is less than flate's window size, so the numbers are
      essentially measuring the performance of a trivial compression. A follow-up
      CL will add more data to testdata/e.txt.
      
      Sample output on my laptop (linux, amd64):
      
      BenchmarkDecodeDigitsSpeed1e4	    5000	    603153 ns/op	  16.58 MB/s
      BenchmarkDecodeDigitsSpeed1e5	    1000	   1465602 ns/op	  68.23 MB/s
      BenchmarkDecodeDigitsSpeed1e6	     200	   8036050 ns/op	 124.44 MB/s
      BenchmarkDecodeDigitsDefault1e4	    5000	    581796 ns/op	  17.19 MB/s
      BenchmarkDecodeDigitsDefault1e5	    2000	    846653 ns/op	 118.11 MB/s
      BenchmarkDecodeDigitsDefault1e6	     500	   3385782 ns/op	 295.35 MB/s
      BenchmarkDecodeDigitsCompress1e4	    5000	    581180 ns/op	  17.21 MB/s
      BenchmarkDecodeDigitsCompress1e5	    2000	    846209 ns/op	 118.17 MB/s
      BenchmarkDecodeDigitsCompress1e6	     500	   3386174 ns/op	 295.32 MB/s
      BenchmarkDecodeTwainSpeed1e4	    5000	    643563 ns/op	  15.54 MB/s
      BenchmarkDecodeTwainSpeed1e5	     500	   5418408 ns/op	  18.46 MB/s
      BenchmarkDecodeTwainSpeed1e6	      50	  52277520 ns/op	  19.13 MB/s
      BenchmarkDecodeTwainDefault1e4	    5000	    583551 ns/op	  17.14 MB/s
      BenchmarkDecodeTwainDefault1e5	     500	   4443428 ns/op	  22.51 MB/s
      BenchmarkDecodeTwainDefault1e6	      50	  41862080 ns/op	  23.89 MB/s
      BenchmarkDecodeTwainCompress1e4	    5000	    583490 ns/op	  17.14 MB/s
      BenchmarkDecodeTwainCompress1e5	     500	   4426356 ns/op	  22.59 MB/s
      BenchmarkDecodeTwainCompress1e6	      50	  41657940 ns/op	  24.01 MB/s
      BenchmarkEncodeDigitsSpeed1e4	    2000	   1230907 ns/op	   8.12 MB/s
      BenchmarkEncodeDigitsSpeed1e5	    1000	   2319129 ns/op	  43.12 MB/s
      BenchmarkEncodeDigitsSpeed1e6	     100	  12378950 ns/op	  80.78 MB/s
      BenchmarkEncodeDigitsDefault1e4	    1000	   1597865 ns/op	   6.26 MB/s
      BenchmarkEncodeDigitsDefault1e5	     500	   3163458 ns/op	  31.61 MB/s
      BenchmarkEncodeDigitsDefault1e6	     100	  18770240 ns/op	  53.28 MB/s
      BenchmarkEncodeDigitsCompress1e4	    1000	   1603461 ns/op	   6.24 MB/s
      BenchmarkEncodeDigitsCompress1e5	     500	   3168766 ns/op	  31.56 MB/s
      BenchmarkEncodeDigitsCompress1e6	     100	  18855830 ns/op	  53.03 MB/s
      BenchmarkEncodeTwainSpeed1e4	    1000	   1338049 ns/op	   7.47 MB/s
      BenchmarkEncodeTwainSpeed1e5	     500	   7341622 ns/op	  13.62 MB/s
      BenchmarkEncodeTwainSpeed1e6	      50	  67484600 ns/op	  14.82 MB/s
      BenchmarkEncodeTwainDefault1e4	    1000	   1778399 ns/op	   5.62 MB/s
      BenchmarkEncodeTwainDefault1e5	     100	  23261810 ns/op	   4.30 MB/s
      BenchmarkEncodeTwainDefault1e6	      10	 243533600 ns/op	   4.11 MB/s
      BenchmarkEncodeTwainCompress1e4	    1000	   1795469 ns/op	   5.57 MB/s
      BenchmarkEncodeTwainCompress1e5	      50	  29447140 ns/op	   3.40 MB/s
      BenchmarkEncodeTwainCompress1e6	       5	 321686800 ns/op	   3.11 MB/s
      ok  	compress/flate	89.246s
      
      R=rsc, r
      CC=golang-dev
      https://golang.org/cl/6195055
      ffd0d02d
    • Nigel Tao's avatar
      compress/testdata: remove Byte Order Mark from the Tom Sawyer data. · 32b85baa
      Nigel Tao authored
      I'm not sure where the BOM came from, originally.
      http://www.gutenberg.org/files/74/74.txt doesn't have it, although
      a fresh download of that URL gives me "\r\n"s instead of plain "\n"s,
      and the extra line "Character set encoding: ASCII". Maybe Project
      Gutenberg has changed their server configuration since we added that
      file to the Go repo.
      
      Anyway, this change is just manually excising the BOM from the start
      of the file, leaving pure ASCII.
      
      R=r, bradfitz
      CC=golang-dev, krasin, rsc
      https://golang.org/cl/6197061
      32b85baa
  5. 07 May, 2012 7 commits
  6. 04 May, 2012 15 commits
  7. 03 May, 2012 6 commits