Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime: add PauseStart array to MemStats #8787

Closed
rsc opened this issue Sep 22, 2014 · 8 comments
Closed

runtime: add PauseStart array to MemStats #8787

rsc opened this issue Sep 22, 2014 · 8 comments
Milestone

Comments

@rsc
Copy link
Contributor

rsc commented Sep 22, 2014

MemStats contains PauseNs, which gives recent history of GC pauses, but it does not tell
when they happened.
I'd like to see a parallel array that gives the end time of each pause (start time makes
more sense but LastGC is an end time, so be consistent).
This information should be exported in runtime/debug's GCStats too.
Having this information available would let Go servers check observed latencies against
GC pause history, to see if a specific latency included a GC pause or not.
@griesemer
Copy link
Contributor

Comment 1:

Labels changed: added repo-main.

@frederich
Copy link
Contributor

Comment 2:

I'll add the feature.

@frederich
Copy link
Contributor

Comment 3:

I think I'll add this feature.

@RLH
Copy link
Contributor

RLH commented Oct 13, 2014

Comment 4:

The word pause is not future proof as we move to a concurrent GC. On the other hand
start and end times seem fine. sweepstart, markstart, and scanstart all seem more future
proof since when they start and finish is orthogonal to whether they are run
concurrently or not.

@rsc
Copy link
Contributor Author

rsc commented Oct 13, 2014

Comment 5:

The other field is already named PauseNs and can't be changed. PauseStart says where
PauseNs begins, for better or worse. We can redefine the two as needed. I think the most
useful thing to keep moving forward will be the length of time that the world was
stopped.

@frederich
Copy link
Contributor

Comment 6:

On my current patch the names are:
GCStats {
  Pause    []
  PauseEnd []
}
MemStats {
  PauseNs    []
  PauseEndNs []
}
Russ, why PauseStart? I thought you want to have end times ("I'd like to ... array that
gives the end time of each pause").
Jens

@gopherbot
Copy link
Contributor

Comment 7:

CL https://golang.org/cl/153670043 mentions this issue.

@rsc
Copy link
Contributor Author

rsc commented Oct 28, 2014

Comment 8:

This issue was closed by revision 46af789.

Status changed to Fixed.

@rsc rsc added fixed labels Oct 28, 2014
@rsc rsc added this to the Go1.4 milestone Apr 14, 2015
@rsc rsc removed the release-go1.4 label Apr 14, 2015
@golang golang locked and limited conversation to collaborators Jun 25, 2016
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jun 25, 2018
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jun 26, 2018
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jul 9, 2018
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jul 20, 2018
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jul 30, 2018
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants