- 27 May, 2017 1 commit
-
-
Josh Bleecher Snyder authored
compilebench emits both ns/op and user-ns/op measurements. This CL improves benchstat's handling of such measurements. Migrated from https://github.com/rsc/benchstat/pull/5. Sample output, before: name old user-ns/op new user-ns/op delta Template 279M ± 7% 273M ± 4% ~ (p=0.329 n=6+5) Unicode 148M ±11% 131M ± 7% -11.49% (p=0.030 n=6+5) GoTypes 830M ± 2% 835M ± 3% ~ (p=0.792 n=6+5) SSA 9.60G ± 3% 9.64G ± 2% ~ (p=0.792 n=6+5) Flate 158M ± 3% 155M ± 1% ~ (p=0.329 n=6+5) GoParser 204M ± 6% 202M ± 8% ~ (p=0.792 n=6+5) Reflect 511M ± 9% 531M ± 6% ~ (p=0.177 n=6+5) Tar 151M ± 3% 151M ± 5% ~ (p=0.931 n=6+5) XML 271M ± 3% 268M ± 3% ~ (p=0.429 n=6+5) Sample output, after: name old user-time/op new user-time/op delta Template 279ms ± 7% 273ms ± 4% ~ (p=0.329 n=6+5) Unicode 148ms ±11% 131ms ± 7% -11.49% (p=0.030 n=6+5) GoTypes 830ms ± 2% 835ms ± 3% ~ (p=0.792 n=6+5) SSA 9.60s ± 3% 9.64s ± 2% ~ (p=0.792 n=6+5) Flate 158ms ± 3% 155ms ± 1% ~ (p=0.329 n=6+5) GoParser 204ms ± 6% 202ms ± 8% ~ (p=0.792 n=6+5) Reflect 511ms ± 9% 531ms ± 6% ~ (p=0.177 n=6+5) Tar 151ms ± 3% 151ms ± 5% ~ (p=0.931 n=6+5) XML 271ms ± 3% 268ms ± 3% ~ (p=0.429 n=6+5) Change-Id: I716b4e89a28adc72e9135b8c580434f748a9c0a9 Reviewed-on: https://go-review.googlesource.com/39794 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Quentin Smith <quentin@golang.org>
-
- 12 May, 2017 1 commit
-
-
Tamir Duberstein authored
Before this change, localperf would log: localperf: 2017/05/09 14:10:47 failed to fetch recent uploads: Get localhost:8081/uploads?extra_label=by&extra_label=upload-time&limit=16: unsupported protocol scheme "localhost" Change-Id: Ifeba048c9dd54cf2c02ed539c5bfa0e6074fd60a Reviewed-on: https://go-review.googlesource.com/43032Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 11 May, 2017 1 commit
-
-
Quentin Smith authored
Change-Id: I18ee1d1eab704c628dd476ee3aa7dc90e729106d Reviewed-on: https://go-review.googlesource.com/43053 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 21 Apr, 2017 3 commits
-
-
Quentin Smith authored
Change-Id: I0ba5b534e0d5262e2626351d10564219d18f93a8 Reviewed-on: https://go-review.googlesource.com/41372Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Quentin Smith authored
Change-Id: Ibbe3faf5bad9f702b46703a68c612b6e9dbf666d Reviewed-on: https://go-review.googlesource.com/41250Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
This adds a -data flag to localperfdata to specify a local data directory. In combination with -dsn to specify a local database, localperfdata is now useful for non-testing applications. Change-Id: I32ddb7ba5a96483c1f93cb7b52bbc2643b5b3798 Reviewed-on: https://go-review.googlesource.com/37861Reviewed-by: Russ Cox <rsc@golang.org>
-
- 07 Apr, 2017 2 commits
-
-
Quentin Smith authored
MySQL requires HAVING to refer to a column from a subquery, but SQLite requires WHERE since the query is not an aggregation. Plumb through the driver name so ListUploads can change its query slightly. Change-Id: I07bb8010824d7e2362e203a68fed7bb968d5fe40 Reviewed-on: https://go-review.googlesource.com/39614 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Go 1.9 and up write "pkg", "goos", and "goarch" keys in benchmark output. benchstat now understands benchmark labels, and uses them to separate incomparable benchmark results. cmd/benchstat gains a command-line flag called "-split" to control this, defaulting to "pkg,goos,goarch". Change-Id: I00413ab348bbff31743b59e81d88c4faab1a8dca Reviewed-on: https://go-review.googlesource.com/38584 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 04 Apr, 2017 1 commit
-
-
Quentin Smith authored
Change-Id: I8c284c7d8f1a567c740bfe78c2b8f1ee5e662e72 Reviewed-on: https://go-review.googlesource.com/38395Reviewed-by: Chris Broadfoot <cbro@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 03 Apr, 2017 1 commit
-
-
Egon Elbre authored
Flush strings to disk before diffing files. Change-Id: I91c47bfe352ee833a164fa7de00341e96498bc96 Reviewed-on: https://go-review.googlesource.com/39235Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 31 Mar, 2017 3 commits
-
-
Quentin Smith authored
The Uploads table gets an entry when a user or the server aborts an upload in mid-upload. The Records table is cleaned up by the transaction, but the Uploads entry is left behind. The optimized query that is used for the perf.golang.org homepage did not properly exclude these uploads that have no records. Change-Id: I8322af5946c233e5cb4b15bf57d9487bcd1e6423 Reviewed-on: https://go-review.googlesource.com/39051 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: I79f486a875e4c6858482d406b1c0328655e32aef Reviewed-on: https://go-review.googlesource.com/38305 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: Ie2cafb6ee0fe30860803cc332133fc1922857831 Reviewed-on: https://go-review.googlesource.com/38304 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 14 Mar, 2017 3 commits
-
-
Austin Clements authored
Change-Id: I5c1363125998acf7d28692aa94ddfbef148577c2 Reviewed-on: https://go-review.googlesource.com/38094Reviewed-by: Quentin Smith <quentin@golang.org>
-
Austin Clements authored
If there's just one benchmark, the geomean will be the same as the benchmark result. Omit it. Change-Id: Id165fa127aa8615015511d6a1da6e1be48b85539 Reviewed-on: https://go-review.googlesource.com/38093Reviewed-by: Quentin Smith <quentin@golang.org>
-
Austin Clements authored
This makes the geomean undefined (or zero, depending on who you ask). Since these usually come from counts, it's more informative to just omit the benchmark. Change-Id: Ia426955784cf12fea19b3d5e51a49a436cbc81c6 Reviewed-on: https://go-review.googlesource.com/38092Reviewed-by: Quentin Smith <quentin@golang.org>
-
- 07 Mar, 2017 1 commit
-
-
Quentin Smith authored
Change-Id: Iceca4836257d102335be2cd4e86fae8fb869f652 Reviewed-on: https://go-review.googlesource.com/37853 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 06 Mar, 2017 1 commit
-
-
Quentin Smith authored
- document local servers in README - rename local servers to "localperf" and "localperfdata" so one can "go get" them. - find static/templates dirs automatically - allow configuring a persistent database in localperfdata Change-Id: I4e62f23c38be6978f091ccbbda8002d9f588b8a4 Reviewed-on: https://go-review.googlesource.com/37717Reviewed-by: Russ Cox <rsc@golang.org>
-
- 28 Feb, 2017 2 commits
-
-
Quentin Smith authored
This adds a -view_url_base flag to set the view URL base, and renames -port to -addr to match analysis/localserver. Change-Id: I2903ec0814c630345c212dac10a0f36567aab5ec Reviewed-on: https://go-review.googlesource.com/37533Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
This changes benchsave to behave like benchstat; in addition to uploading the files and printing a URL, it also prints the text format of benchstat. This is fetched from the ViewURL provided by the storage server, so the analysis can be changed/improved without requiring users to rebuild benchsave. Change-Id: I28519a5e3cf89962bd952ff26a8a6a717b9ef636 Reviewed-on: https://go-review.googlesource.com/37532Reviewed-by: Russ Cox <rsc@golang.org>
-
- 27 Feb, 2017 5 commits
-
-
Quentin Smith authored
This uses a different query structure for ListUploads when the query string is empty. On our production database, this reduces the query time from ~5s to ~0.1s, which drastically improves the performance of perf.golang.org. Change-Id: I1f2bf97449858d1b06791dd352cc437dcbda1fac Reviewed-on: https://go-review.googlesource.com/37168 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
SortBy seems to sometimes sort by the second column instead of the first. Until that bug is figured out, do the sorting one column at a time to control the ordering. Without this patch, try /trend?q=upload%3A20170216.3+name%3ARegexpMatchEasy0_1K&raw=1 and /trend?q=trend%3Abuild.golang.org%2Fwindows-amd64-gce+name%3AGzip+commit-time%3E2016-11-08+commit-time%3C2016-11-30&raw=1 The former seems to sort first by "commit" instead of "commit-time", but the latter sorts by "commit-time" first. Apply the patch and both are sorted by commit-time. Change-Id: I8ebd2720fa1147fc1d468a6bab515a224537a98e Reviewed-on: https://go-review.googlesource.com/37471 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Since the upload ID is part of the primary key, we can avoid using the RecordLabels table to find matching records. This takes the query "upload:20170127.22 name:Gzip" from ~0.3s to ~0.04s on our production database. Change-Id: Id31624ec1b81f3a7f648c6597392718c56a10edd Reviewed-on: https://go-review.googlesource.com/37236 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: I7bd1ed03127830d6530415d77263ee8b0155a2c4 Reviewed-on: https://go-review.googlesource.com/37230 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: I0aad9567cc8887922541145868fd927d8c4fb10b Reviewed-on: https://go-review.googlesource.com/37167 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 17 Feb, 2017 5 commits
-
-
Quentin Smith authored
This adds an undocumented "raw=1" query parameter to visualize raw results without any averaging or filtering. Results are colored according to the upload-part they came from. Change-Id: I25590ace89dfe55380e28182c38aeb223e2e73b9 Reviewed-on: https://go-review.googlesource.com/37160 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: I405ff8d89593365b0e27925e7640bee35c723682 Reviewed-on: https://go-review.googlesource.com/37158 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Queries with multiple parts referring to the same key are now simplified before sending to the database. If the query can be proven to return no results, the query is not sent to the database at all. Change-Id: I2d307d09f463fb0e6e7bd9b9902115916e7ffffa Reviewed-on: https://go-review.googlesource.com/36953 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
This is still not feature complete, so the page is not linked from anywhere. It supports graphing benchmark results that match any perf query. One line is shown per matching benchmark name. Demo available at: https://quentin.perf.golang.org/trend?q=upload:20170127.25 Big TODO tasks: - improve display of multiple benchmarks (multiple graphs? click-to-select? additional user controls?) - correlate benchmarks across uploads (currently all uploads are assumed to be from identical machines) - optimize/cache queries (6 months of a single benchmark loads in 12s; 6 months of all benchmarks times out at >60s) Change-Id: I7d1f6073c4837ef63205a10dd4e18085fe7d00ac Reviewed-on: https://go-review.googlesource.com/36612 Run-TryBot: Quentin Smith <quentin@golang.org> Reviewed-by: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Quentin Smith authored
Change-Id: I89a2ad20d0378077fb90cae45fcc8cab33c147ec Reviewed-on: https://go-review.googlesource.com/36952 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 10 Feb, 2017 1 commit
-
-
Quentin Smith authored
With this CL, the perf repo should now pass all tests on Windows. Change-Id: I91fead1e065f22b54236ff96c6ace529dc3964a8 Reviewed-on: https://go-review.googlesource.com/36627 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
- 09 Feb, 2017 1 commit
-
-
Quentin Smith authored
The query term "key>" can be used to search for records that have any value for the key. This optimizes the query with a separate SQL expression and adds tests for this behavior. Change-Id: I5e2734734e0911a3ed12c87e7ada776ad309a90d Reviewed-on: https://go-review.googlesource.com/36590Reviewed-by: Russ Cox <rsc@golang.org>
-
- 08 Feb, 2017 3 commits
-
-
Quentin Smith authored
Change-Id: I268e3731b51b2c7cb327fc47913058490c439d6a Reviewed-on: https://go-review.googlesource.com/36610 Run-TryBot: Quentin Smith <quentin@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Quentin Smith authored
- storage/db/dbtest, storage/cmd/reindex: hide cloud SQL behind a build tag (run go test -tags cloud golang.org/x/perf/storage/db -cloud to run tests) - analysis/appengine, storage/appengine: hide behind appengine build tag (automatically supplied by goapp) - vendor: used govendor to import non-x non-appengine dependencies Change-Id: Ia5590599e7191ab3427618204fab7d2cec907579 Reviewed-on: https://go-review.googlesource.com/36592 Run-TryBot: Quentin Smith <quentin@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: I08e93f469558ca3db356cb03eba345bfe29e36f8 Reviewed-on: https://go-review.googlesource.com/36252Reviewed-by: Russ Cox <rsc@golang.org>
-
- 03 Feb, 2017 1 commit
-
-
Quentin Smith authored
Change-Id: I7f8c384dc9dd47b2706392188685a106a1ed487a Reviewed-on: https://go-review.googlesource.com/36251Reviewed-by: Russ Cox <rsc@golang.org>
-
- 02 Feb, 2017 4 commits
-
-
Quentin Smith authored
Change-Id: I8b4b85a2c38deb53bd30a26447aef8c6ce1b49d3 Reviewed-on: https://go-review.googlesource.com/36117Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
Change-Id: Id9eecd9bc5bf7be4ffcdd5a120c7ccc4afe2fb17 Reviewed-on: https://go-review.googlesource.com/36115Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
In a test database containing 309,000 real benchmark records, given the query select t1.UploadID, (select t2.Value from RecordLabels t2 where t2.UploadID = t1.UploadID AND Name = 'upload-time' limit 1) from Uploads t1; used to obtain sample values from each upload, the PRIMARY KEY index causes the query to fall from 1.49s to 0.03s. The NOT NULL constraint is necessary to make the PRIMARY KEY effective. Change-Id: I9e663766e2f99f1096952e4c20eecbf8faab577b Reviewed-on: https://go-review.googlesource.com/36114Reviewed-by: Russ Cox <rsc@golang.org>
-
Quentin Smith authored
This will eventually be used to serve a "Recent Uploads" section on the analysis server, and potentially a "My Uploads" section. Change-Id: I532fc79310d6f98ff12c80a628606845b40ceb60 Reviewed-on: https://go-review.googlesource.com/36012Reviewed-by: Russ Cox <rsc@golang.org>
-