Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(533)

Issue 12440044: code review 12440044: runtime: tune append crossover on amd64 and 386 (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 7 months ago by dave
Modified:
11 years, 7 months ago
Reviewers:
r
CC:
golang-dev, r
Visibility:
Public.

Description

runtime: tune append crossover on amd64 and 386 Fixes issue 4963. Sets the append crossover to 0 on intel platforms. Results for linux/amd64 Core i5 SNB benchmark old ns/op new ns/op delta BenchmarkAppend 102 104 +1.96% BenchmarkAppend1Byte 10 11 +0.92% BenchmarkAppend4Bytes 15 11 -28.10% BenchmarkAppend7Bytes 17 12 -32.58% BenchmarkAppend8Bytes 18 12 -36.17% BenchmarkAppend15Bytes 24 11 -55.02% BenchmarkAppend16Bytes 25 11 -56.03% BenchmarkAppend32Bytes 11 12 +4.31% BenchmarkAppendStr1Byte 8 9 +13.99% BenchmarkAppendStr4Bytes 11 9 -17.52% BenchmarkAppendStr8Bytes 14 9 -35.70% BenchmarkAppendStr16Bytes 21 9 -55.19% BenchmarkAppendStr32Bytes 10 10 -5.66% BenchmarkAppendSpecialCase 49 52 +7.96% Results for linux/386 Atom(TM) CPU 330 @ 1.60GHz benchmark old ns/op new ns/op delta BenchmarkAppend 219 218 -0.46% BenchmarkAppend1Byte 75 72 -3.44% BenchmarkAppend4Bytes 92 73 -19.87% BenchmarkAppend7Bytes 108 74 -31.20% BenchmarkAppend8Bytes 116 74 -35.95% BenchmarkAppend15Bytes 162 77 -52.22% BenchmarkAppend16Bytes 169 77 -54.20% BenchmarkAppend32Bytes 88 86 -2.38% BenchmarkAppendStr1Byte 57 59 +3.32% BenchmarkAppendStr4Bytes 72 59 -17.40% BenchmarkAppendStr8Bytes 92 60 -34.70% BenchmarkAppendStr16Bytes 141 63 -54.89% BenchmarkAppendStr32Bytes 75 73 -2.64% BenchmarkAppendSpecialCase 270 270 +0.00%

Patch Set 1 #

Patch Set 2 : diff -r adc2b4f10096 https://code.google.com/p/go #

Patch Set 3 : diff -r adc2b4f10096 https://code.google.com/p/go #

Patch Set 4 : diff -r adc2b4f10096 https://code.google.com/p/go #

Patch Set 5 : diff -r adc2b4f10096 https://code.google.com/p/go #

Total comments: 1

Patch Set 6 : diff -r adc2b4f10096 https://code.google.com/p/go #

Patch Set 7 : diff -r adc2b4f10096 https://code.google.com/p/go #

Patch Set 8 : diff -r 0aee4b3eb910 https://code.google.com/p/go #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -4 lines) Patch
M src/pkg/runtime/append_test.go View 1 2 1 chunk +8 lines, -0 lines 0 comments Download
M src/pkg/runtime/arch_386.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M src/pkg/runtime/arch_amd64.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M src/pkg/runtime/slice.c View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download

Messages

Total messages: 8
dave_cheney.net
Hello golang-dev@googlegroups.com, I'd like you to review this change to https://code.google.com/p/go
11 years, 7 months ago (2013-08-05 10:24:26 UTC) #1
dave_cheney.net
On 2013/08/05 10:24:26, dfc wrote: > Hello mailto:golang-dev@googlegroups.com, > > I'd like you to review ...
11 years, 7 months ago (2013-08-05 10:25:32 UTC) #2
r
I'm suspicious. What happened to memmove? -rob
11 years, 7 months ago (2013-08-05 10:34:02 UTC) #3
r
https://codereview.appspot.com/12440044/diff/10001/src/pkg/runtime/slice.c File src/pkg/runtime/slice.c (right): https://codereview.appspot.com/12440044/diff/10001/src/pkg/runtime/slice.c#newcode98 src/pkg/runtime/slice.c:98: if(appendCrossover && w <= appendCrossover) { appendCrossover is not ...
11 years, 7 months ago (2013-08-05 10:34:19 UTC) #4
dave_cheney.net
> I'm suspicious. What happened to memmove? khr made it better after tip reopened in ...
11 years, 7 months ago (2013-08-05 10:39:09 UTC) #5
dave_cheney.net
Hello golang-dev@googlegroups.com, r@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
11 years, 7 months ago (2013-08-05 10:49:01 UTC) #6
r
LGTM
11 years, 7 months ago (2013-08-05 12:24:59 UTC) #7
dave_cheney.net
11 years, 7 months ago (2013-08-05 21:51:54 UTC) #8
*** Submitted as https://code.google.com/p/go/source/detail?r=e285a7b170aa ***

runtime: tune append crossover on amd64 and 386

Fixes issue 4963.

Sets the append crossover to 0 on intel platforms.

Results for linux/amd64 Core i5 SNB

benchmark                     old ns/op    new ns/op    delta
BenchmarkAppend                     102          104   +1.96%
BenchmarkAppend1Byte                 10           11   +0.92%
BenchmarkAppend4Bytes                15           11  -28.10%
BenchmarkAppend7Bytes                17           12  -32.58%
BenchmarkAppend8Bytes                18           12  -36.17%
BenchmarkAppend15Bytes               24           11  -55.02%
BenchmarkAppend16Bytes               25           11  -56.03%
BenchmarkAppend32Bytes               11           12   +4.31%
BenchmarkAppendStr1Byte               8            9  +13.99%
BenchmarkAppendStr4Bytes             11            9  -17.52%
BenchmarkAppendStr8Bytes             14            9  -35.70%
BenchmarkAppendStr16Bytes            21            9  -55.19%
BenchmarkAppendStr32Bytes            10           10   -5.66%
BenchmarkAppendSpecialCase           49           52   +7.96%

Results for linux/386 Atom(TM) CPU 330 @ 1.60GHz

benchmark                     old ns/op    new ns/op    delta
BenchmarkAppend                     219          218   -0.46%
BenchmarkAppend1Byte                 75           72   -3.44%
BenchmarkAppend4Bytes                92           73  -19.87%
BenchmarkAppend7Bytes               108           74  -31.20%
BenchmarkAppend8Bytes               116           74  -35.95%
BenchmarkAppend15Bytes              162           77  -52.22%
BenchmarkAppend16Bytes              169           77  -54.20%
BenchmarkAppend32Bytes               88           86   -2.38%
BenchmarkAppendStr1Byte              57           59   +3.32%
BenchmarkAppendStr4Bytes             72           59  -17.40%
BenchmarkAppendStr8Bytes             92           60  -34.70%
BenchmarkAppendStr16Bytes           141           63  -54.89%
BenchmarkAppendStr32Bytes            75           73   -2.64%
BenchmarkAppendSpecialCase          270          270   +0.00%

R=golang-dev, r
CC=golang-dev
https://codereview.appspot.com/12440044
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b