aboutsummaryrefslogtreecommitdiff
path: root/src/encoding/xml
diff options
context:
space:
mode:
authorBryan C. Mills <bcmills@google.com>2017-02-10 15:54:35 -0500
committerBryan Mills <bcmills@google.com>2017-04-26 19:04:03 +0000
commit9d37d4c88abc1920e45abc7c2c80a156420090fe (patch)
tree16acd4b670fa1df126e8236aea13c7993c7d0644 /src/encoding/xml
parent959025c0ac97ec3533ef9f3f70d64453352a7b56 (diff)
downloadgo-9d37d4c88abc1920e45abc7c2c80a156420090fe.tar.gz
go-9d37d4c88abc1920e45abc7c2c80a156420090fe.zip
encoding/xml: parallelize benchmarks
Results remain comparable with the non-parallel version with -cpu=1: benchmark old ns/op new ns/op delta BenchmarkMarshal 31220 28618 -8.33% BenchmarkMarshal-6 37181 7658 -79.40% BenchmarkUnmarshal 81837 83522 +2.06% BenchmarkUnmarshal-6 96339 18244 -81.06% benchmark old allocs new allocs delta BenchmarkMarshal 23 23 +0.00% BenchmarkMarshal-6 23 23 +0.00% BenchmarkUnmarshal 189 189 +0.00% BenchmarkUnmarshal-6 189 189 +0.00% benchmark old bytes new bytes delta BenchmarkMarshal 5776 5776 +0.00% BenchmarkMarshal-6 5776 5776 +0.00% BenchmarkUnmarshal 8576 8576 +0.00% BenchmarkUnmarshal-6 8576 8576 +0.00% updates #18177 Change-Id: I7e7055a11d18896bd54d7d773f2ec64767cdb4c8 Reviewed-on: https://go-review.googlesource.com/36810 Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src/encoding/xml')
-rw-r--r--src/encoding/xml/marshal_test.go16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/encoding/xml/marshal_test.go b/src/encoding/xml/marshal_test.go
index 4fb901f258..674c6b5b3f 100644
--- a/src/encoding/xml/marshal_test.go
+++ b/src/encoding/xml/marshal_test.go
@@ -1901,17 +1901,21 @@ func TestMarshalFlush(t *testing.T) {
func BenchmarkMarshal(b *testing.B) {
b.ReportAllocs()
- for i := 0; i < b.N; i++ {
- Marshal(atomValue)
- }
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ Marshal(atomValue)
+ }
+ })
}
func BenchmarkUnmarshal(b *testing.B) {
b.ReportAllocs()
xml := []byte(atomXml)
- for i := 0; i < b.N; i++ {
- Unmarshal(xml, &Feed{})
- }
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ Unmarshal(xml, &Feed{})
+ }
+ })
}
// golang.org/issue/6556