【问题标题】:Tracking CPU usage after logical offline逻辑离线后跟踪 CPU 使用率
【发布时间】:2021-02-02 16:14:55
【问题描述】:

我对跟踪 CPU 使用率的任何可能方式以及在逻辑上已通过以下方式离线的 CPU 内核上发生的进程/中断列表感兴趣:

echo 0 > /sys/devices/system/cpu/cpuN/online

是否有文件或任何对象仍在跟踪此类核心上发生的进程/中断,因为对于大多数测量程序来说,核心是不可见的(例如顶部)?

【问题讨论】:

    标签: linux performance x86 cpu cpu-usage


    【解决方案1】:

    使 CPU 脱机的一部分是确保它不会执行任何进程或任何 IRQ(没有任何可跟踪的内容)。

    请注意,“离线”是热插拔支持的一部分,旨在“准备从计算机上拔下”,只是大多数实际硬件不支持热插拔 CPU。

    【讨论】:

    • @Anton9988:我希望内核将内核置于最低功耗状态并执行cli(禁用所有IRQ)和hlt(等待获胜的IRQ '不会发生,因为他们被禁用);导致核心(字面上)无法执行单个指令(直到/除非它通过特殊的“AP CPU 启动/重置”序列重新联机)。
    • @Anton9988:我应该补充一点,虽然大多数真实硬件不支持热插拔 CPU,但有些支持/支持,有些虚拟机支持。如果调度程序可以获取离线内核,那么这将是一个重大错误(但不能保证没有重大错误)。
    • @Anton9988:是的。当系统仍在其他插槽中的 CPU 内核上运行时,从字面上将处理器包从主板的插槽之一中拉出(并可选择放入新的插槽)。 (显然,只有多插槽系统才有意义,当然也只有为此电气设计的系统,以及在启动方面。)
    • 就像在 RAID 阵列中热插拔故障 SATA 驱动器一样; SATA 电源/数据连接器具有较长的接地引脚,以便首先接触,从而确保热插拔安全。对于 CPU,只有非常大的/高可靠性和更新系统才能支持这一点。 CPU 封装与系统其他部分之间的连接数量远高于 SATA,并且延迟要求通常要低得多,因此这是一个更难的设计问题,除非你真的需要它,否则非常不值得,不像 SATA .
    • 坏内存或 CPU 可能会损坏某些东西并且无论如何都需要重新启动,因此具有热插拔 CPU 的系统可能具有冗余来检测错误,然后再损坏全局内核数据,如果这是使 CPU 脱机的动机. (如果只是为了升级连接到套接字的内存,那可能是有道理的,或者更换坏的 RAM,ECC 检测到始终失败的位,而错误仍然可以纠正。)
    猜你喜欢
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多