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: CPU bound goroutines cause unnecessary timer latency [1.14 backport] #39383

Closed
gopherbot opened this issue Jun 3, 2020 · 6 comments
Closed
Labels
CherryPickCandidate Used during the release process for point releases FrozenDueToAge
Milestone

Comments

@gopherbot
Copy link

@networkimprov requested issue #38860 to be considered for backport to the next 1.14 minor release.

@gopherbot please backport to 1.14. This is a regression with a simple fix. (It may have a more complex fix, too, but that won't land until 1.16.)

@gopherbot gopherbot added the CherryPickCandidate Used during the release process for point releases label Jun 3, 2020
@gopherbot gopherbot added this to the Go1.14.5 milestone Jun 3, 2020
@ianlancetaylor
Copy link
Contributor

We don't backport performance improvements, simple or not. Although 1.14 showed a regression in timer latency for programs with soft real time constraints, the timers in 1.14 improved in other ways. This doesn't rise to the level of something that merits a backport. Sorry.

@networkimprov
Copy link

Sorry, I had the impression that regressions without workarounds would be fixed... Is that not so?

@dmitshur @andybons @rsc

@ianlancetaylor
Copy link
Contributor

Behavior regressions, yes. Not performance regressions.

This is a performance regression. All programs continue to run as expected. Certain specific kinds of program take a small amount more time before they invoke timers.

We can't promise that for each new release all programs will continue to run as fast as they did in previous releases. Of course we hope that they do. And we certainly try hard to ensure that on average programs run faster. But the fact that it is possible to write a program that runs slightly slower in a new release does not in itself constitute a regression that should be fixed.

@networkimprov
Copy link

networkimprov commented Jul 23, 2020

@ianlancetaylor did you mean to reopen this?

this also needs a backport to 1.15, as it is milestoned for 1.16 -- sorry, got confused by the milestone change after fix landed.

@ianlancetaylor
Copy link
Contributor

@networkimprov No, I raised the possibility of reopening it. I don't think we've made a decision.

@ianlancetaylor
Copy link
Contributor

And the only fix we would be backporting would be the one that is already in 1.15.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CherryPickCandidate Used during the release process for point releases FrozenDueToAge
Projects
None yet
Development

No branches or pull requests

4 participants