我最近听说过超线程这个术语,超线程到底是什么,为什么它很重要?
我的处理器是Intel Core i3-380m。如您所见,它有 2 个内核和 4 个线程。
尽管 Ubuntu 11.04 和 Windows 7 似乎都认为它是四核 CPU:
为什么是这样?是不是因为每个内核有 2 个线程,将 CPU 分成 4 个处理单元?
在与网络管理员的交谈中,我提到我的机器是双核的。他告诉我不是。我调出任务管理器,转到性能选项卡,向他展示有两个独立的 CPU 使用率图表。我家里有一台四核机器,它有四个图形。他说,由于超线程,这台特定机器上有两个图。以前我曾经有一个超线程奔腾 4 处理器,但我从来没有完全理解它的意思。那么超线程和双核有什么区别呢?你怎么知道你有哪一个?
我想知道超线程 CPU 的理论加速是多少。假设 100% 并行化和 0 次通信 - 两个 CPU 的加速比为 2。超线程 CPU 怎么样?
Windows 处理器关联如何与超线程 CPU 配合使用?让我们使用具有四个内核的系统的示例(如图),每个内核都有一个超线程虚拟内核。
这对我来说都是非常模糊和混乱的。HT 很棒,但它似乎确实降低了资源分配的透明度。
某些 bios 没有禁用 CPU 超线程的选项,有没有办法在 Windows 7 注册表中禁用它?还是工具或软件?
我知道 msconfig 引导选项卡(高级选项)并在那里禁用处理器,不确定它是否禁用了完整的内核或超线程,或者如何判断。
32 位或 64 位 Windows 7
编辑:
让我们假设它是一个双核或更多的超线程。
在设备管理器中,它显示了我的 i5 英特尔处理器上的 4 个处理器,你也不能禁用它们,该死。
如何获得启用多核超线程的 cpu 的真正用途?
例如,让我们考虑一个 2 核 CPU,表示 4 个虚拟核。
单线程工作负载现在将在 中显示为 100% top
,因为虚拟核心中的一个核心已被完全使用。CPU 和top
按预期工作,就像有 4 个真正的内核一样。
然而,对于两个线程,事情变得很糟糕:如果一切正常,它们就会平衡到两个真实内核,所以我们得到了 200% 的使用率:两次 100% 和两个空闲的虚拟内核,并且正在使用所有可用的 CPU 功率. 对我来说似乎没问题。
但是,如果两个线程在单个真实核心上运行,它们将显示为使用 100% 的两倍,即 200% 的虚拟核心使用率。但在实际情况下,这将是一个内核在两个线程上共享其功率,然后仅使用总 CPU 功率的一半。
所以显示的使用数字top
不能用于衡量总 CPU 工作负载。
我也想知道超线程如何在一个真正的核心上平衡两个虚拟。如果两个线程占用不同的周期数,即使实际负载不同,虚拟内核是否会“适应”以便两者都显示 100% 负载?
有一种在 Mac OS X 上禁用超线程的方法:如何在 Mac OS X Lion 上禁用超线程?
是否有终端命令可以查看 Mac OS X 是否启用了超线程?
我听说过超线程和多线程这两个术语,但它们之间究竟有什么区别?什么样的英特尔处理器使用它们?
hyper-threading ×10
cpu ×5
architecture ×2
multi-core ×2
windows-7 ×2
affinity ×1
cpu-usage ×1
linux ×1
mac ×1
scheduling ×1
terminal ×1
threads ×1
top ×1
ubuntu ×1
windows ×1