兄弟姐妹在/ proc / cpuinfo中是什么意思?


Answers:


9

如果同级数等于内核数,那么您的CPU不会超线程或超线程已关闭;如果同级数是内核数的2倍,则您有一个超线程CPU且超线程已打开。这是一个很好的文章在这里


7

处理器上的同级数是该处理器内执行单元的总数。这将包括其他核心和超线程。

例如,

  1. Core 2 Duo将会列出siblings : 2。双核,无超线程。
  2. Xeon E5420将会上市siblings : 4。双核,具有超线程。
  3. 带有超线程的Pentium 4将会列出siblings : 2。单核,具有超线程。

1

首先了解以下术语及其用法上下文。

  • 中央处理器
    • CPU是处理单元。
    • 它将有多个组件来处理指令。
    • 每个组件负责不同的操作,例如指令提取,解码,处理,更新等。
  • 核心
    • 一个CPU可以具有多套/单元的上述组件。
    • 如果有两组这样的单元,则处理器可以并行运行两条指令。
    • 一个单元称为核心。
    • Duel-Core CPU将具有两组相同的组件。四核CPU将具有四个相同的这些组件/单元集
  • 多CPU /超线程
    • 这有点棘手。仅在软件上下文中有效。
    • 每当一条指令等待外部事件完成时,CPU就会空闲。为了更好地利用CPU,一些供应商维护两个硬件线程,并且每当一个线程被阻塞时,硬件就会切换到另一个线程。这种处理器将具有存储和恢复CPU状态的能力
    • 对于软件,看起来两个线程正在并行运行。
    • Linux将此超线程内核视为多CPU。因为它可以并行运行两个线程。因此它将看到两个执行单元(伪CPU)。
    • 例如,最近的Intel CPU是超线程的,能够同时运行两个线程。
  • 多核
    • 现代CPU具有多套上述硬件单元/内核
    • 与超线程不同,它们实际上可以并行执行两条指令
    • 每个内核也可以超线程
  • 多处理器
    • 诸如服务器,超级计算机之类的高性能系统将具有多个物理CPU。
    • 您可以在其主板上看到多个CPU插槽
    • 每个都可以有多个核心。同样,每个内核都可以超线程

现代PC通常都带有多核超线程处理器。例如,在装有四核超线程英特尔CPU的PC上运行的Linux,将看到8个CPU(4个核心x 2个超线程)。

现代服务器通常是多核多处理器系统。典型的服务器将有两个套接字,每个套接字具有24个超线程内核。因此,在此系统上运行的Linux将看到96个CPU(2个插槽x 24核心x 2个超线程)

兄弟姐妹

回到实际问题,共享缓存的处理器将称为同级。高速缓存的组织将类似于(尽管会因架构而异),

  • 每个内核将具有一个L1指令缓存和一个L1数据缓存
  • 每个Core将拥有一个Unified L2缓存
  • 套接字中的所有内核将具有一个Unified L3缓存
  • 通常没有两个套接字将共享任何缓存

考虑带有2个插槽的多核多处理器系统。每个插槽具有24个具有超线程功能的内核。在这种情况下,Linux将看到总共96个CPU,其编号从0到95。套接字1将具有0-47的CPU,套接字2将具有48-95的CPU(与之不同的是,通常这些数字将被交错)。对于具有上述缓存组织的系统,

  • 处理器0-47是同级
  • 处理器48-95是同级

0

例如,内核使用同级数进行负载平衡。

在具有两个物理程序包的系统上运行四个任务,每个程序包具有两个核心(共享末级缓存),每个核心具有两个逻辑线程。第一个程序包的负载均衡在多核域开始,导致所有内核之间的负载均衡分配。


包是错误的术语。
Wim Kerkhoff
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.