Skip to content

Commit 46816bb

Browse files
committed
fix benchmark
1 parent d7f6407 commit 46816bb

3 files changed

Lines changed: 12 additions & 13 deletions

File tree

decode.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,12 @@ func DecodeString(s string) []byte {
6161
type decoder struct {
6262
// input
6363
reader io.Reader
64+
err error
6465

6566
outBuf []byte
6667
inBuf *[1024]byte
6768
nInBuf int
6869

69-
err error
70-
7170
b, n uint32
7271
v int
7372
}
@@ -77,13 +76,15 @@ type decoder struct {
7776
func NewDecoder(r io.Reader) io.Reader {
7877
return &decoder{
7978
reader: r,
79+
err: nil,
80+
8081
outBuf: []byte{},
8182
inBuf: new([1024]byte),
8283
nInBuf: 0,
83-
err: nil,
84-
b: 0,
85-
n: 0,
86-
v: -1,
84+
85+
b: 0,
86+
n: 0,
87+
v: -1,
8788
}
8889
}
8990

@@ -128,7 +129,7 @@ func (d *decoder) Read(c []byte) (int, error) {
128129
d.v = -1
129130
}
130131

131-
if d.nInBuf == 1024 {
132+
if d.nInBuf >= 1024 {
132133
d.nInBuf = 0
133134
}
134135

decode_test.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,18 +61,15 @@ func BenchmarkDecoder(b *testing.B) {
6161
}
6262

6363
encoded := EncodeToString(s)
64-
size := int64(len(encoded))
64+
b.SetBytes(int64(len(encoded)))
6565

6666
b.ResetTimer()
6767
for i := 0; i < b.N; i++ {
6868
d := NewDecoder(strings.NewReader(encoded))
6969

70-
if n, err := io.CopyN(ioutil.Discard, d, 1024*1024); err != nil {
71-
b.Log(n)
72-
b.Log(size)
70+
if _, err := io.CopyN(ioutil.Discard, d, 1024*1024); err != nil {
7371
b.Fatal(err)
7472
}
7573

76-
b.SetBytes(size)
7774
}
7875
}

encode_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ func BenchmarkEncode(b *testing.B) {
5656
func BenchmarkEncoder(b *testing.B) {
5757
buf := new(bytes.Buffer)
5858
buf.Grow(1024 * 1024)
59+
b.SetBytes(1024 * 1024)
60+
5961
e := NewEncoder(buf)
6062
defer e.Close()
6163

@@ -65,6 +67,5 @@ func BenchmarkEncoder(b *testing.B) {
6567
b.Fatal(err)
6668
}
6769

68-
b.SetBytes(1024 * 1024)
6970
}
7071
}

0 commit comments

Comments
 (0)