FAQ
Keith, this is great.

I ran tip against our server tool which has the following workload:

Load and parse roughly 100GB of data into 200GB or RAM
Do some full dataset computations for caching

The code is heavily parallelized and reasonably well tuned. We instrumented
it to exit after 'ready' status was achieved, and used the time utility to
time it, so these numbers include freeing up OS RAM at end of the run.

I ran each version of the binary once and then threw away the numbers to
let Linux do what it could on caching the file reads. Then I ran each three
times. The results look great for tip.

Results vs go1.6:

             Go 1.6 Tip
          ------------- ---------
             25.2s 22.2s
             27.3s 22.1s
             25.3s 22.2s


So this is a big win for us, thanks, and it's nice to see these
improvements show up in a large codebase with varied kinds of work.

There do seem to be some performance regressions for a few functions, but
it might be noise, or old data on our part. If I can find any areas that
seem much slower and can get it drilled down to something repeatable, I
will follow up. In any event, these numbers include those regressions (if
any) so there might be even more good news ahead.

Peter

On Thursday, March 10, 2016 at 9:09:00 PM UTC-8, Keith Randall wrote:

Here's the current performance numbers for the go1 benchmarks, comparing
tip relative to go1.6:

name old time/op new time/op delta
BinaryTree17-12 3.16s ±14% 2.77s ± 3% -12.33% (p=0.000
n=10+9)
Fannkuch11-12 2.68s ± 1% 2.21s ± 1% -17.72% (p=0.000
n=10+9)
FmtFprintfEmpty-12 52.5ns ± 3% 50.2ns ± 2% -4.42% (p=0.000
n=10+10)
FmtFprintfString-12 175ns ± 1% 163ns ± 0% -6.55%
(p=0.000 n=9+9)
FmtFprintfInt-12 170ns ± 6% 160ns ± 0% -5.77% (p=0.000
n=10+8)
FmtFprintfIntInt-12 272ns ± 0% 260ns ± 1% -4.62%
(p=0.000 n=8+9)
FmtFprintfPrefixedInt-12 245ns ± 1% 228ns ± 0% -7.11%
(p=0.000 n=9+8)
FmtFprintfFloat-12 328ns ± 1% 303ns ± 1% -7.48%
(p=0.000 n=9+8)
FmtManyArgs-12 1.06µs ± 2% 0.96µs ± 0% -9.61% (p=0.000
n=10+9)
GobDecode-12 8.20ms ± 3% 7.75ms ± 2% -5.44%
(p=0.000 n=8+9)
GobEncode-12 6.99ms ± 1% 6.42ms ± 2% -8.14% (p=0.000
n=10+9)
Gzip-12 336ms ± 1% 289ms ± 1% -13.97%
(p=0.000 n=9+9)
Gunzip-12 44.2ms ± 1% 40.7ms ± 1% -7.84% (p=0.000
n=9+10)
HTTPClientServer-12 223µs ± 7% 208µs ± 6% -6.56% (p=0.000
n=10+10)
JSONEncode-12 17.7ms ± 1% 16.7ms ± 1% -5.58%
(p=0.000 n=8+9)
JSONDecode-12 58.6ms ± 0% 54.3ms ± 1% -7.24%
(p=0.000 n=9+8)
Mandelbrot200-12 4.18ms ± 3% 4.40ms ± 1% +5.24% (p=0.000
n=10+9)
GoParse-12 3.74ms ± 2% 3.56ms ± 2% -4.84% (p=0.000
n=9+10)
RegexpMatchEasy0_32-12 102ns ± 1% 79ns ± 0% -22.93% (p=0.000
n=10+10)
RegexpMatchEasy0_1K-12 352ns ± 1% 251ns ± 0% -28.60% (p=0.000
n=8+10)
RegexpMatchEasy1_32-12 87.5ns ± 0% 76.5ns ± 1% -12.60% (p=0.000
n=8+10)
RegexpMatchEasy1_1K-12 515ns ± 1% 410ns ± 3% -20.37% (p=0.000
n=10+10)
RegexpMatchMedium_32-12 138ns ± 1% 122ns ± 1% -11.50% (p=0.000
n=10+10)
RegexpMatchMedium_1K-12 40.4µs ± 1% 37.0µs ± 0% -8.43% (p=0.000
n=10+10)
RegexpMatchHard_32-12 2.19µs ± 1% 1.94µs ± 4% -11.42% (p=0.000
n=8+10)
RegexpMatchHard_1K-12 66.2µs ± 1% 58.7µs ± 2% -11.32% (p=0.000
n=9+10)
Revcomp-12 594ms ± 1% 416ms ± 8% -29.96% (p=0.000
n=8+10)
Template-12 70.5ms ± 1% 65.0ms ± 1% -7.87% (p=0.000
n=8+10)
TimeParse-12 358ns ± 1% 341ns ± 0% -4.55% (p=0.000
n=10+9)
TimeFormat-12 363ns ± 1% 369ns ± 7% ~ (p=0.186
n=9+10)

Attached are the same numbers in graphical form.

Tip compiler (with SSA internal checks off) is about 7% slower than go1.6
to compile net/http (go test -a -c -gcflags=-d=ssa/check/off net/http)
--
You received this message because you are subscribed to the Google Groups "golang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 7 of 8 | next ›
Discussion Overview
groupgolang-dev @
categoriesgo
postedMar 11, '16 at 5:08a
activeMar 11, '16 at 6:16p
posts8
users6
websitegolang.org

People

Translate

site design / logo © 2021 Grokbase