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

Issue 4815087: code review 4815087: runtime: add more specialized type algorithms (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 7 months ago by dvyukov
Modified:
12 years, 6 months ago
Reviewers:
CC:
golang-dev, rsc
Visibility:
Public.

Description

runtime: add more specialized type algorithms The change adds specialized type algorithms for slices and types of size 8/16/32/64/128. It significantly accelerates chan and map operations for most builtin types as well as user structs. benchmark old,ns/op new,ns/op BenchmarkChanUncontended 226 94 (on Intel Xeon E5620, 2.4GHz, Linux 64 bit)

Patch Set 1 #

Patch Set 2 : diff -r 2165d97e8e19 https://go.googlecode.com/hg/ #

Patch Set 3 : diff -r 2165d97e8e19 https://go.googlecode.com/hg/ #

Patch Set 4 : diff -r 2165d97e8e19 https://go.googlecode.com/hg/ #

Patch Set 5 : diff -r 2165d97e8e19 https://go.googlecode.com/hg/ #

Patch Set 6 : diff -r 2165d97e8e19 https://go.googlecode.com/hg/ #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+196 lines, -16 lines) Patch
M src/cmd/gc/go.h View 1 1 chunk +11 lines, -1 line 0 comments Download
M src/cmd/gc/subr.c View 1 2 2 chunks +26 lines, -4 lines 1 comment Download
M src/pkg/runtime/runtime.h View 1 1 chunk +11 lines, -1 line 0 comments Download
M src/pkg/runtime/runtime.c View 1 2 3 5 chunks +148 lines, -10 lines 0 comments Download

Messages

Total messages: 7
dvyukov
Hello golang-dev@googlegroups.com (cc: golang-dev@googlegroups.com), I'd like you to review this change to https://go.googlecode.com/hg/
12 years, 7 months ago (2011-08-04 19:25:21 UTC) #1
dvyukov
http://codereview.appspot.com/4815087/diff/14001/src/cmd/gc/subr.c File src/cmd/gc/subr.c (right): http://codereview.appspot.com/4815087/diff/14001/src/cmd/gc/subr.c#newcode514 src/cmd/gc/subr.c:514: else if(isslice(t)) Is it a proper check for arrays? ...
12 years, 7 months ago (2011-08-05 11:20:28 UTC) #2
rsc
> http://codereview.appspot.com/4815087/diff/14001/src/cmd/gc/subr.c#newcode514 > src/cmd/gc/subr.c:514: else if(isslice(t)) > Is it a proper check for arrays? Fixed-size ...
12 years, 7 months ago (2011-08-05 11:30:09 UTC) #3
dvyukov
On 2011/08/05 11:30:09, rsc wrote: > > http://codereview.appspot.com/4815087/diff/14001/src/cmd/gc/subr.c#newcode514 > > src/cmd/gc/subr.c:514: else if(isslice(t)) > > ...
12 years, 7 months ago (2011-08-05 11:34:30 UTC) #4
rsc
> Ok. Then the check must be correct. I meant - don't I need to ...
12 years, 7 months ago (2011-08-05 11:42:11 UTC) #5
rsc
LGTM
12 years, 7 months ago (2011-08-08 13:13:23 UTC) #6
rsc
12 years, 7 months ago (2011-08-08 13:35:44 UTC) #7
*** Submitted as http://code.google.com/p/go/source/detail?r=9fdf63b59479 ***

runtime: add more specialized type algorithms
The change adds specialized type algorithms
for slices and types of size 8/16/32/64/128.
It significantly accelerates chan and map operations
for most builtin types as well as user structs.

benchmark                   old,ns/op   new,ns/op
BenchmarkChanUncontended          226          94
(on Intel Xeon E5620, 2.4GHz, Linux 64 bit)

R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/4815087

Committer: Russ Cox <rsc@golang.org>
Sign in to reply to this message.

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