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

Issue 53080043: code review 53080043: runtime: ensure fair scheduling during frequent GCs (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 5 months ago by dvyukov
Modified:
11 years, 5 months ago
Reviewers:
khr1
CC:
golang-codereviews, shanemhansen, khr, khr1
Visibility:
Public.

Description

runtime: ensure fair scheduling during frequent GCs What was happenning is as follows: Each writer goroutine always triggers GC during its scheduling quntum. After GC goroutines are shuffled so that the timer goroutine is always second in the queue. This repeats infinitely, causing timer goroutine starvation. Fixes issue 7126.

Patch Set 1 #

Patch Set 2 : diff -r 209c0d648d9c https://dvyukov%40google.com@code.google.com/p/go/ #

Patch Set 3 : diff -r 209c0d648d9c https://dvyukov%40google.com@code.google.com/p/go/ #

Patch Set 4 : diff -r 209c0d648d9c https://dvyukov%40google.com@code.google.com/p/go/ #

Patch Set 5 : diff -r 209c0d648d9c https://dvyukov%40google.com@code.google.com/p/go/ #

Total comments: 1

Patch Set 6 : diff -r c249c52cd276 https://dvyukov%40google.com@code.google.com/p/go/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+65 lines, -5 lines) Patch
M src/pkg/runtime/proc.c View 1 2 3 4 5 2 chunks +22 lines, -5 lines 0 comments Download
M src/pkg/runtime/proc_test.go View 1 1 chunk +43 lines, -0 lines 0 comments Download

Messages

Total messages: 7
dvyukov
Hello golang-codereviews@googlegroups.com, I'd like you to review this change to https://dvyukov%40google.com@code.google.com/p/go/
11 years, 5 months ago (2014-01-16 08:34:00 UTC) #1
shanemhansen
On 2014/01/16 08:34:00, dvyukov wrote: > Hello mailto:golang-codereviews@googlegroups.com, > > I'd like you to review ...
11 years, 5 months ago (2014-01-16 16:44:57 UTC) #2
dvyukov
On Thu, Jan 16, 2014 at 8:44 PM, <shanemhansen@gmail.com> wrote: > On 2014/01/16 08:34:00, dvyukov ...
11 years, 5 months ago (2014-01-17 10:53:20 UTC) #3
khr
https://codereview.appspot.com/53080043/diff/60001/src/pkg/runtime/proc.c File src/pkg/runtime/proc.c (right): https://codereview.appspot.com/53080043/diff/60001/src/pkg/runtime/proc.c#newcode2223 src/pkg/runtime/proc.c:2223: // collect all runnable goroutines in global queue preserving ...
11 years, 5 months ago (2014-01-18 00:40:45 UTC) #4
dvyukov
On Sat, Jan 18, 2014 at 4:40 AM, <khr@golang.org> wrote: > > https://codereview.appspot.com/53080043/diff/60001/src/pkg/runtime/proc.c > File ...
11 years, 5 months ago (2014-01-18 12:55:28 UTC) #5
khr1
LGTM. This change sounds fine. But maybe at some point we need to sort waiting ...
11 years, 5 months ago (2014-01-18 17:55:46 UTC) #6
dvyukov
11 years, 5 months ago (2014-01-21 06:25:00 UTC) #7
*** Submitted as https://code.google.com/p/go/source/detail?r=d214b5bf923c ***

runtime: ensure fair scheduling during frequent GCs
What was happenning is as follows:
Each writer goroutine always triggers GC during its scheduling quntum.
After GC goroutines are shuffled so that the timer goroutine is always second in
the queue.
This repeats infinitely, causing timer goroutine starvation.
Fixes issue 7126.

R=golang-codereviews, shanemhansen, khr, khr
CC=golang-codereviews
https://codereview.appspot.com/53080043
Sign in to reply to this message.

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