runtime: poor performance in simulated environment #56704
Labels
arch-s390x
Issues solely affecting the s390x architecture.
compiler/runtime
Issues related to the Go compiler and/or runtime.
FrozenDueToAge
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
WaitingForInfo
Issue is not actionable because of missing required information, which needs to be provided.
Milestone
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
I wrote a little test tool that start 50 goroutines that waste some time and exits once all goroutines are done.
main.go.txt
What did you expect to see?
When running the code on real hardware it finishes in about 200ms. I expected it to execute in roughly the same time in a virtual environment. We are using cecsim, which is based on KVM.
What did you see instead?
In our virtual environment the execution takes at least 10 times longer and the system shows a very high steal time. When using
GODEBUG=asyncpreemptoff=1
the problem does not seem to ocur.Here is an strace of a run on real hardware and one in a simulation:
testtool-1.19.2-strace-real-machine.txt
testtool-1.19.2-strace-sim.txt
The trace shows many
nanosleep
calls. Or assumption is that this might be the cause of the problem.The text was updated successfully, but these errors were encountered: