Skip to content

testing: move gomaxprocs to key-value pair in benchmark output #30056

@rsc

Description

@rsc

It's been a few releases since we introduced the new key: value syntax in benchmark output. When we first introduced it, we left the -P suffix to signal the GOMAXPROCS setting, to avoid disruption for tools that didn't know about the new syntax. At this point I think we can safely move that into the key-value sections, cleaning up the main output lines.

That is, this output from go test -bench=Parallel64 -benchtime=0.1s -count=5 -cpu=1,2,4 -run=XXX net/http:

goos: darwin
goarch: amd64
pkg: net/http
BenchmarkClientServerParallel64     	    2000	     76182 ns/op	    5503 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     86365 ns/op	    5610 B/op	      64 allocs/op
BenchmarkClientServerParallel64     	    2000	     81944 ns/op	    5485 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     79690 ns/op	    5488 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     98858 ns/op	    5481 B/op	      64 allocs/op
BenchmarkClientServerParallel64-2   	    1000	    150096 ns/op	    9203 B/op	      81 allocs/op
BenchmarkClientServerParallel64-2   	    1000	    147771 ns/op	    8820 B/op	      78 allocs/op
BenchmarkClientServerParallel64-2   	    1000	    251588 ns/op	    9759 B/op	      81 allocs/op
BenchmarkClientServerParallel64-2   	     500	    241765 ns/op	   11516 B/op	      87 allocs/op
BenchmarkClientServerParallel64-2   	     500	    262960 ns/op	   11397 B/op	      86 allocs/op
BenchmarkClientServerParallel64-4   	     200	    634660 ns/op	   16159 B/op	     116 allocs/op
BenchmarkClientServerParallel64-4   	     100	   1377371 ns/op	   17915 B/op	     126 allocs/op
BenchmarkClientServerParallel64-4   	     200	    576365 ns/op	   15874 B/op	     114 allocs/op
BenchmarkClientServerParallel64-4   	     200	    516387 ns/op	   14173 B/op	     112 allocs/op
BenchmarkClientServerParallel64-4   	     200	    515807 ns/op	   14572 B/op	     113 allocs/op

would become this output:

goos: darwin
goarch: amd64
pkg: net/http
gomaxprocs: 1
BenchmarkClientServerParallel64     	    2000	     76182 ns/op	    5503 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     86365 ns/op	    5610 B/op	      64 allocs/op
BenchmarkClientServerParallel64     	    2000	     81944 ns/op	    5485 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     79690 ns/op	    5488 B/op	      63 allocs/op
BenchmarkClientServerParallel64     	    2000	     98858 ns/op	    5481 B/op	      64 allocs/op
gomaxprocs: 2
BenchmarkClientServerParallel64     	    1000	    150096 ns/op	    9203 B/op	      81 allocs/op
BenchmarkClientServerParallel64     	    1000	    147771 ns/op	    8820 B/op	      78 allocs/op
BenchmarkClientServerParallel64     	    1000	    251588 ns/op	    9759 B/op	      81 allocs/op
BenchmarkClientServerParallel64     	     500	    241765 ns/op	   11516 B/op	      87 allocs/op
BenchmarkClientServerParallel64     	     500	    262960 ns/op	   11397 B/op	      86 allocs/op
gomaxprocs: 4
BenchmarkClientServerParallel64     	     200	    634660 ns/op	   16159 B/op	     116 allocs/op
BenchmarkClientServerParallel64     	     100	   1377371 ns/op	   17915 B/op	     126 allocs/op
BenchmarkClientServerParallel64     	     200	    576365 ns/op	   15874 B/op	     114 allocs/op
BenchmarkClientServerParallel64     	     200	    516387 ns/op	   14173 B/op	     112 allocs/op
BenchmarkClientServerParallel64     	     200	    515807 ns/op	   14572 B/op	     113 allocs/op

/cc @aclements

Metadata

Metadata

Assignees

No one assigned

    Labels

    NeedsFixThe path to resolution is known, but the work has not been done.early-in-cycleA change that should be done early in the 3 month dev cycle.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions