我应该在 Intel CPU 中禁用超线程吗?

Gra*_*ity 9 cpu intel-core-i5 hyper-threading

我有一台配备 Intel i5 M430 2.27GHz 的笔记本电脑。CPU 有两个真正的内核,但它也有某种虚拟化,因此 Windows 将其视为 4 核。

在真正的双核 CPU 中,单线程程序将在 2.27GHz 的单核中运行。对?

我的问题是,在我的 4 核 CPU 中,相同的程序以 1.13 GHz 的速度运行?(2.27 / 2) 我的意思是,为了模拟 4 核 CPU,每个真实核心的频率被分成两部分?

我需要知道以最大速度运行 CPU 饥渴的程序。如果我运行该程序的两个实例,我会以两倍的速度完成数据处理,因为我有两个真正的内核。但是,如果我启动 4 个实例,我将完成 4 倍的处理速度,或者这个“2 个额外的虚拟内核”是否是英特尔的另一个引人注目的功能?


更新:

我使用CPU Overload来启动 2 和 3 个 CPU 密集型线程。在 Resource Monitor 中,“CPU-Total”图表分别显示只有 50% 和 75% 的利用率。

Mic*_*l K 22

您有一个采用超线程技术的 CPU 。你不能改变这一点,但别担心,你不会有任何性能损失;实际上,它提高了系统的性能。

请注意,CPU 时钟不等于 CPU 性能。对于两个线程,时钟不会被二分频。

更新/结论:正如评论中已经提到的,在某些(大多数?)BIOS 中,可以关闭超线程。但这不会带来任何性能增强,因为英特尔的线程管理足够智能,可以仅根据需要使用。

  • 如果需要,您可以在 bios 中关闭超线程。但是,在大多数情况下,超线程确实具有性能优势。 (12认同)
  • HT 对单核 CPU 非常有用,但多核 CPU 发现它由于存在其他内核而不太有用。此外,如果 HT 被禁用,您*可能*从*单个*应用程序中获得更好的性能,因为每个真正的核心都有更多的可用资源;唯一确定的方法是经验测试。 (4认同)
  • @Altar 作为旁注,当 CPU 的使用强度不足以要求使用超线程提供的潜在额外资源时,Windows 7 将“停放”该超线程核心,大概会释放所有资源以允许真正的核心有效地工作。我可以在 Resource Monitor 程序中看到我的四核 i7 上发生这种情况,因为内核 #1、#3、#4 和 #7 处于“停放状态”并显示 0% CPU 使用率,而内核 #0、#2、#5 和 # 6个正在运行。 (4认同)
  • 根据英特尔的说法,通过超线程将性能提高了 30%。我不知道您实际上可以将其关闭,大多数 BIOS 似乎没有此选项。 (2认同)
  • HT 不会将用于任何给定线程的 CPU 周期减半,因为它是一种允许物理 CPU 内核每个周期处理一个以上线程的技术。使用某种智能来确定任何给定线程将使用内核的哪个部分,HT 将在单个内核上的单个周期中运行 2 个线程,而不会相互干扰。 (2认同)