1. 13 Jun, 2011 6 commits
  2. 12 Jun, 2011 1 commit
  3. 11 Jun, 2011 5 commits
  4. 10 Jun, 2011 14 commits
  5. 09 Jun, 2011 13 commits
  6. 08 Jun, 2011 1 commit
    • Nigel Tao's avatar
      compress/lzw: reduce decoder buffer size from 3*4096 to 2*4096. · 833529fd
      Nigel Tao authored
      This happens to speed up the decoder benchmarks by 50% on my computer
      (GOARCH=amd64 GOOS=linux), but I don't have a good intuition as to why.
      For example, just adding an unused [4096]byte field to the decoder
      struct doesn't significantly change the numbers.
      
      Before:
      
      lzw.BenchmarkDecoder1e4	    5000	    488057 ns/op	  20.49 MB/s
      lzw.BenchmarkDecoder1e5	     500	   4613638 ns/op	  21.67 MB/s
      lzw.BenchmarkDecoder1e6	      50	  45672260 ns/op	  21.90 MB/s
      lzw.BenchmarkEncoder1e4	    5000	    353563 ns/op	  28.28 MB/s
      lzw.BenchmarkEncoder1e5	     500	   3431618 ns/op	  29.14 MB/s
      lzw.BenchmarkEncoder1e6	      50	  34009640 ns/op	  29.40 MB/s
      
      After:
      
      lzw.BenchmarkDecoder1e4	    5000	    339725 ns/op	  29.44 MB/s
      lzw.BenchmarkDecoder1e5	     500	   3166894 ns/op	  31.58 MB/s
      lzw.BenchmarkDecoder1e6	      50	  31317260 ns/op	  31.93 MB/s
      lzw.BenchmarkEncoder1e4	    5000	    354909 ns/op	  28.18 MB/s
      lzw.BenchmarkEncoder1e5	     500	   3432710 ns/op	  29.13 MB/s
      lzw.BenchmarkEncoder1e6	      50	  34010500 ns/op	  29.40 MB/s
      
      R=rsc, r
      CC=golang-dev
      https://golang.org/cl/4535123
      833529fd