在多核处理器上优化单线程算法

Optimising single threaded algorithm on multi core processor

假设我在 Intel Core i7(4 核/8 线程)上有一个单线程算法 运行。以下哪项可以优化我的算法速度?

a) 关闭CPU 核心隔离

b) 关闭尽可能多的内核

c) 关闭省电

d) 关闭超线程

我认为只有 (d) 有助于提高速度。

这在很大程度上取决于算法功能。 ab 的影响微乎其微。 a 是一项安全功能,应该不会影响执行速度。 b 关闭不使用的核心 - 由于进程调度的简化,可能影响很小。 c 可以通过防止 CPU 由于移动到低功耗状态而减慢速度来加快执行速度 - 但它可能相关也可能不相关,具体取决于实际算法。 d 如果单个算法线程确实能够有效地使用单个物理内核的所有物理资源,则可能会带来好处。