我应该禁用超线程吗?

Ala*_*air 6 linux centos

我将最大化运行一些 CPU 密集型处理的几个盒子。

每个进程只使用 1 个线程,所以我将并行运行它们。我正在使用具有 4 个内核的机器,因此启用了超线程的机器是 8 个。

每个进程还使用 1GB 的 RAM,因此如果启用超线程,我将需要每台机器 8GB 的​​ RAM,如果禁用超线程,则需要 4GB。

我的问题是:我应该启用还是禁用超线程?

RAM 的成本不是问题,而是处理的速度。启用或禁用超线程会更有效吗?

afr*_*ier 8

确定的唯一方法是进行基准测试。

也就是说,很少有 HT 在现代 CPU 上减慢速度的情况,但是从 4 个进程移动到 8 个进程可能会增加足够的 I/O,使系统的其他区域(磁盘、网络、RAM 带宽等)变成瓶颈。 )

我认为无论如何,都应该启用 HT,但是您需要对系统进行基准测试,以查看一次可以运行多少作业以获得最大吞吐量。

如果不出意外,操作系统可能能够利用一些额外的执行资源。

  • @Alasdair 如果您无权访问服务器,您打算如何禁用 HT? (4认同)
  • +1:如果您无法对其进行基准测试,请不要费心更改它。 (2认同)