当我去任务管理器时,我看到8个处理器,但是我知道我有4个。为什么?
当我去任务管理器时,我看到8个处理器,但是我知道我有4个。为什么?
Answers:
超线程。
超线程将任务切换从操作系统中抽象出来。通常,操作系统必须处理不同CPU上的调度过程,并确保在系统上运行的每个任务都有其应有的份额,但不要过多(如果有其他需要)的CPU。
超线程是一种将第二个任务共享过程从操作系统上移走的方法,至少要花一点时间。原因是处理器的任务切换速度比操作系统所告知的快得多。因此,通过在实际上只有一个逻辑处理器的情况下提供两个逻辑处理器,操作系统只需执行一半的任务切换操作,但执行更多的CPU调度。但是,最终的结果是可以在多任务操作中使用更快的机器。
实际的好处会因您所处理的工作量而异。对于大多数人来说,打开或关闭它没有任何危害。4对8线程就像是为家庭用户在法拉利或兰博基尼之间进行选择。
但是,在服务器方案中,这可能会有很大的不同。例如,管理程序通常通过使用超线程来大大提高速度,因为它们具有非常严格的CPU调度要求。
但是,SQL服务器通常无法获得这种增长,因为拥有四个“大”线程通常比拥有8个“中”大小的线程更好。
我的朋友正在超线程。
超线程是同时多线程的一种形式,它利用了超标量体系结构。多个指令并行处理单独的数据。它们在OS中似乎是两个处理器,因此OS可以一次调度两个进程。另外,两个或多个进程可以使用相同的资源。如果一个进程失败,则可以很容易地重新分配资源。操作系统必须支持同时多线程(SMT)。