perf 中断是什么意思?

j0h*_*j0h 30 kernel events dmesg

我正在我的电脑上工作,试图编写一些设备代码。我检查了 dmesg 以获取一些信息,并看到了:

perf interrupt took too long (2507 > 2500), lowering kernel.perf_event_max_sample_rate to 50000
Run Code Online (Sandbox Code Playgroud)

这个事件是什么意思?原因?忧虑?

Ron*_*Ron 14

这不应该是一个问题。perf是处理 CPU 性能的工具。内核能够在不影响系统性能的情况下自动确定采样率。是来自 Arch 论坛的一个主题。

  • 如果我切换到另一个时钟源(如 HPET)会有所不同吗? (2认同)

Phi*_*ßen 11

Arch 论坛的这个答案总结了它:

此消息仅供参考,无需担心。

它与内核中包含的 Linux perf 工具有关。内核会自动确定可以使用的采样率,而不会对系统性能产生太大影响;即使在 perf 未激活或什至未安装时,它也会记录此信息。

像这样的消息是由高(er)系统负载或正在扩展的 cpu触发的。

  • 在将 I/O 基准测试与重复同步相结合后,我得到了这个。只要“中断时间过长 (3979 > 3930)”后的数字足够接近,就无需担心。如果较大的一个是另一个的 10 倍,那么 CPU 调度可能会出现一些问题。 (7认同)
  • 我在玩游戏时经常遇到这种废话,这会导致延迟峰值和其他问题。超级讨厌,因为游戏会挂起一秒钟,性能中断消息会在 dmesg 中弹出,然后游戏会快速返回,但在那一刻的任何鼠标/移动输入都非常夸张......飞进山边很有趣无缘无故...呃。 (2认同)