In this article: https://www.datadoghq.com/blog/engineering/profiling-improvements-in-go-1-18/.
Below word confusing me:reporting 20 CPU cores being used by top, the expected signal rate should have been 2,000 signals per second. However, the resulting profile only contained an average of 240 stack traces per second.
.
What i am confusing is that in func runtime.SetCPUProfileRate, only set the current thread profileHz to 100. And I know that in linux, the signal is randomly pick one thread to execute. So thread which profileHz is not zero will only receive about 2000 / 20 = 100 signal percond. So the average stack traces is about 100 per second.
Why this article said that the stack trace will produce 240 and even more stack traces per second?