1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/pkg/ioutils
Brian Goff 9a25b1d942 Improve performance/reduce allocs of bytespipe
Creates a `fixedBuffer` type that is used to encapsulate functionality
for reading/writing from the underlying byte slices.

Uses lazily-loaded set of sync.Pools for storing buffers that are no
longer needed so they can be re-used.

```
benchmark                     old ns/op     new ns/op     delta
BenchmarkBytesPipeWrite-8     138469        48985         -64.62%
BenchmarkBytesPipeRead-8      130922        56601         -56.77%

benchmark                     old allocs     new allocs     delta
BenchmarkBytesPipeWrite-8     18             8              -55.56%
BenchmarkBytesPipeRead-8      0              0              +0.00%

benchmark                     old bytes     new bytes     delta
BenchmarkBytesPipeWrite-8     66903         1649          -97.54%
BenchmarkBytesPipeRead-8      0             1             +Inf%
```

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-04-05 13:06:04 -04:00
..
buffer.go Improve performance/reduce allocs of bytespipe 2016-04-05 13:06:04 -04:00
buffer_test.go Improve performance/reduce allocs of bytespipe 2016-04-05 13:06:04 -04:00
bytespipe.go Improve performance/reduce allocs of bytespipe 2016-04-05 13:06:04 -04:00
bytespipe_test.go Improve performance/reduce allocs of bytespipe 2016-04-05 13:06:04 -04:00
fmt.go
fmt_test.go
multireader.go
multireader_test.go
readers.go
readers_test.go
temp_unix.go
temp_windows.go
writeflusher.go Cleanup WriteFlusher 2016-02-09 14:02:26 -05:00
writers.go
writers_test.go