Skip to content

Commit a669860

Browse files
committed
update benchmark
1 parent eec54ed commit a669860

File tree

1 file changed

+46
-40
lines changed

1 file changed

+46
-40
lines changed

README.md

Lines changed: 46 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -63,69 +63,73 @@ func main() {
6363
## `bytes.Buffer`: sync.Pool vs BufferPool
6464

6565
```bash
66-
$ go test -v -bench=BenchmarkBufferPool -benchmem ./
66+
$ go test -bench=BenchmarkBufferPool -benchmem ./
6767
goos: darwin
6868
goarch: amd64
6969
pkg: github.com/octu0/bp
70-
BenchmarkBufferPool/default/8-8 1000000 1119 ns/op 32 B/op 1 allocs/op
71-
BenchmarkBufferPool/default/4096-8 965864 1289 ns/op 32 B/op 1 allocs/op
72-
BenchmarkBufferPool/syncpool/8-8 991191 1206 ns/op 48 B/op 1 allocs/op
73-
BenchmarkBufferPool/syncpool/4096-8 967411 1265 ns/op 48 B/op 1 allocs/op
74-
BenchmarkBufferPool/bufferpool/8-8 898627 1361 ns/op 48 B/op 1 allocs/op
75-
BenchmarkBufferPool/bufferpool/4096-8 811107 1430 ns/op 48 B/op 1 allocs/op
70+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
71+
BenchmarkBufferPool/default/8-8 1224789 990.2 ns/op 32 B/op 1 allocs/op
72+
BenchmarkBufferPool/default/4096-8 1000000 1103 ns/op 32 B/op 1 allocs/op
73+
BenchmarkBufferPool/syncpool/8-8 1000000 1055 ns/op 48 B/op 1 allocs/op
74+
BenchmarkBufferPool/syncpool/4096-8 1000000 1108 ns/op 48 B/op 1 allocs/op
75+
BenchmarkBufferPool/bufferpool/8-8 1000000 1155 ns/op 48 B/op 1 allocs/op
76+
BenchmarkBufferPool/bufferpool/4096-8 981954 1189 ns/op 48 B/op 1 allocs/op
7677
PASS
77-
ok github.com/octu0/bp 7.274s
78+
ok github.com/octu0/bp 7.899s
7879
```
7980

8081
## `[]byte`: sync.Pool vs BytePool
8182

8283
```bash
83-
$ go test -v -bench=BenchmarkBytePool -benchmem ./
84+
$ go test -bench=BenchmarkBytePool -benchmem ./
8485
goos: darwin
8586
goarch: amd64
8687
pkg: github.com/octu0/bp
87-
BenchmarkBytePool/default/8-8 1000000 1064 ns/op 16 B/op 1 allocs/op
88-
BenchmarkBytePool/default/4096-8 902665 1132 ns/op 16 B/op 1 allocs/op
89-
BenchmarkBytePool/syncpool/8-8 1000000 1165 ns/op 64 B/op 2 allocs/op
90-
BenchmarkBytePool/syncpool/4096-8 1000000 1059 ns/op 64 B/op 2 allocs/op
91-
BenchmarkBytePool/bytepool/8-8 1027453 1246 ns/op 32 B/op 1 allocs/op
92-
BenchmarkBytePool/bytepool/4096-8 935844 1299 ns/op 32 B/op 1 allocs/op
88+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
89+
BenchmarkBytePool/default/8-8 1294598 941.2 ns/op 16 B/op 1 allocs/op
90+
BenchmarkBytePool/default/4096-8 1000000 1031 ns/op 16 B/op 1 allocs/op
91+
BenchmarkBytePool/syncpool/8-8 1000000 1069 ns/op 48 B/op 2 allocs/op
92+
BenchmarkBytePool/syncpool/4096-8 1000000 1075 ns/op 48 B/op 2 allocs/op
93+
BenchmarkBytePool/bytepool/8-8 1213732 1023 ns/op 24 B/op 1 allocs/op
94+
BenchmarkBytePool/bytepool/4096-8 1000000 1127 ns/op 24 B/op 1 allocs/op
9395
PASS
94-
ok github.com/octu0/bp 7.878s
96+
ok github.com/octu0/bp 8.780s
9597
```
9698

9799
## `bufio.Reader`: sync.Pool vs BufioReaderPool
98100

99101
```bash
100-
$ go test -v -bench=BenchmarkBufioReaderPool -benchmem ./
102+
$ go test -bench=BenchmarkBufioReaderPool -benchmem ./
101103
goos: darwin
102104
goarch: amd64
103105
pkg: github.com/octu0/bp
104-
BenchmarkBufioReaderPool/default/8-8 1000000 1190 ns/op 1056 B/op 3 allocs/op
105-
BenchmarkBufioReaderPool/default/4096-8 766180 1500 ns/op 5136 B/op 3 allocs/op
106-
BenchmarkBufioReaderPool/syncpool/8-8 1000000 1339 ns/op 1056 B/op 2 allocs/op
107-
BenchmarkBufioReaderPool/syncpool/4096-8 896155 1337 ns/op 1058 B/op 2 allocs/op
108-
BenchmarkBufioReaderPool/bufiopool/8-8 831057 1485 ns/op 1168 B/op 4 allocs/op
109-
BenchmarkBufioReaderPool/bufiopool/4096-8 836048 1356 ns/op 1056 B/op 2 allocs/op
106+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
107+
BenchmarkBufioReaderPool/default/8-8 1000000 1120 ns/op 1056 B/op 3 allocs/op
108+
BenchmarkBufioReaderPool/default/4096-8 803418 1542 ns/op 5136 B/op 3 allocs/op
109+
BenchmarkBufioReaderPool/syncpool/8-8 1000000 1102 ns/op 1048 B/op 2 allocs/op
110+
BenchmarkBufioReaderPool/syncpool/4096-8 1000000 1110 ns/op 1051 B/op 2 allocs/op
111+
BenchmarkBufioReaderPool/bufiopool/8-8 1000000 1290 ns/op 1160 B/op 4 allocs/op
112+
BenchmarkBufioReaderPool/bufiopool/4096-8 918162 1279 ns/op 1048 B/op 2 allocs/op
110113
PASS
111-
ok github.com/octu0/bp 7.354s
114+
ok github.com/octu0/bp 7.147s
112115
```
113116

114117
## `image.RGBA`: sync.Pool vs `ImageRGBAPool`
115118

116119
```bash
117-
$ go test -v -bench=BenchmarkImageRGBAPool -benchmem ./
120+
$ go test -bench=BenchmarkImageRGBAPool -benchmem ./
118121
goos: darwin
119122
goarch: amd64
120123
pkg: github.com/octu0/bp
121-
BenchmarkImageRGBAPool/default/360-8 41775 28822 ns/op 925764 B/op 2 allocs/op
122-
BenchmarkImageRGBAPool/default/1080-8 2203 506796 ns/op 8294806 B/op 2 allocs/op
123-
BenchmarkImageRGBAPool/syncpool/360-8 1000000 1070 ns/op 28 B/op 1 allocs/op
124-
BenchmarkImageRGBAPool/syncpool/1080-8 1019760 1137 ns/op 89 B/op 1 allocs/op
125-
BenchmarkImageRGBAPool/imagepool/360-8 818752 1382 ns/op 138 B/op 3 allocs/op
126-
BenchmarkImageRGBAPool/imagepool/1080-8 976969 1448 ns/op 137 B/op 3 allocs/op
124+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
125+
BenchmarkImageRGBAPool/default/360-8 38256 29911 ns/op 925739 B/op 3 allocs/op
126+
BenchmarkImageRGBAPool/default/1080-8 1995 591596 ns/op 8286139 B/op 3 allocs/op
127+
BenchmarkImageRGBAPool/syncpool/360-8 1316624 1042 ns/op 26 B/op 1 allocs/op
128+
BenchmarkImageRGBAPool/syncpool/1080-8 1000000 1098 ns/op 82 B/op 1 allocs/op
129+
BenchmarkImageRGBAPool/imagepool/360-8 1006983 1326 ns/op 153 B/op 3 allocs/op
130+
BenchmarkImageRGBAPool/imagepool/1080-8 871188 1343 ns/op 154 B/op 3 allocs/op
127131
PASS
128-
ok github.com/octu0/bp 9.034s
132+
ok github.com/octu0/bp 10.637s
129133
```
130134

131135
## io.Copy vs CopyIOPool.Copy Benchmark
@@ -137,11 +141,12 @@ $ go test -bench=BenchmarkIoCopy -benchmem ./
137141
goos: darwin
138142
goarch: amd64
139143
pkg: github.com/octu0/bp
140-
BenchmarkIoCopy-8 528212 2270 ns/op 32816 B/op 3 allocs/op
141-
BenchmarkIoCopyPoolDefault-8 662061 1888 ns/op 16624 B/op 7 allocs/op
142-
BenchmarkIoCopyPoolFixedSize-8 2311072 521 ns/op 48 B/op 2 allocs/op
144+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
145+
BenchmarkIoCopy-8 452194 2650 ns/op 32816 B/op 3 allocs/op
146+
BenchmarkIoCopyPoolDefault-8 575596 2064 ns/op 16608 B/op 7 allocs/op
147+
BenchmarkIoCopyPoolFixedSize-8 2274831 522.1 ns/op 48 B/op 2 allocs/op
143148
PASS
144-
ok github.com/octu0/bp 4.244s
149+
ok github.com/octu0/bp 4.189s
145150
```
146151

147152
## ioutil.ReadAll vs CopyIOPool.ReadAll Benchmark
@@ -153,11 +158,12 @@ $ go test -bench=BenchmarkIoReadAll -benchmem ./
153158
goos: darwin
154159
goarch: amd64
155160
pkg: github.com/octu0/bp
156-
BenchmarkIoReadAllIoUtil-8 3774 315602 ns/op 4192308 B/op 13 allocs/op
157-
BenchmarkIoReadAllPoolDefault-8 3688 356025 ns/op 4063475 B/op 13 allocs/op
158-
BenchmarkIoReadAllPoolFixedSize-8 3208 348119 ns/op 4046906 B/op 8 allocs/op
161+
cpu: Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
162+
BenchmarkIoReadAllIoUtil-8 2628 455815 ns/op 5862972 B/op 30 allocs/op
163+
BenchmarkIoReadAllPoolDefault-8 3057 378599 ns/op 4063444 B/op 13 allocs/op
164+
BenchmarkIoReadAllPoolFixedSize-8 3180 378923 ns/op 4046892 B/op 8 allocs/op
159165
PASS
160-
ok github.com/octu0/bp 3.761s
166+
ok github.com/octu0/bp 3.718s
161167
```
162168

163169
## License

0 commit comments

Comments
 (0)