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

Issue 4673054: code review 4673054: runtime: eliminate false sharing on runtime.goidgen (Closed)

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

Description

runtime: eliminate false sharing on runtime.goidgen runtime.goidgen can be quite frequently modified and shares cache line with the following variables, it leads to false sharing. 50c6b0 b nfname 50c6b4 b nfunc 50c6b8 b nfunc$17 50c6bc b nhist$17 50c6c0 B runtime.checking 50c6c4 B runtime.gcwaiting 50c6c8 B runtime.goidgen 50c6cc B runtime.gomaxprocs 50c6d0 B runtime.panicking 50c6d4 B strconv.IntSize 50c6d8 B src/pkg/runtime/_xtest_.ss 50c6e0 B src/pkg/runtime/_xtest_.stop 50c6e8 b addrfree 50c6f0 b addrmem 50c6f8 b argv

Patch Set 1 #

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

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

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -3 lines) Patch
M src/pkg/runtime/proc.c View 1 2 chunks +3 lines, -2 lines 0 comments Download
M src/pkg/runtime/runtime.h View 1 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 4
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, 10 months ago (2011-07-11 13:39:23 UTC) #1
dvyukov
I don't think that the following benchmark worth committing func spawn(compl *bool) { if *compl ...
12 years, 10 months ago (2011-07-11 13:42:43 UTC) #2
rsc
LGTM Thanks for finding this!
12 years, 10 months ago (2011-07-12 05:25:01 UTC) #3
rsc
12 years, 10 months ago (2011-07-12 05:25:18 UTC) #4
*** Submitted as http://code.google.com/p/go/source/detail?r=538318748eec ***

runtime: eliminate false sharing on runtime.goidgen
runtime.goidgen can be quite frequently modified and
shares cache line with the following variables,
it leads to false sharing.
50c6b0 b nfname
50c6b4 b nfunc
50c6b8 b nfunc$17
50c6bc b nhist$17
50c6c0 B runtime.checking
50c6c4 B runtime.gcwaiting
50c6c8 B runtime.goidgen
50c6cc B runtime.gomaxprocs
50c6d0 B runtime.panicking
50c6d4 B strconv.IntSize
50c6d8 B src/pkg/runtime/_xtest_.ss
50c6e0 B src/pkg/runtime/_xtest_.stop
50c6e8 b addrfree
50c6f0 b addrmem
50c6f8 b argv

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

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