由于单个CPU一次只能执行一条指令。基本上,多线程CPU的作用是在单核内的多个线程之间来回切换。由于单线程和单核CPU可以通过在进程之间进行上下文切换来执行多任务处理,为什么多线程CPU如此重要?
您在这里混淆了很多事情……首先:硬件线程几乎没有与软件线程相同的地方。据我所知,n
CPU上只能有硬件线程,而n
实际或虚拟CPU内核(例如ALU)的数量是
进行了上下文切换,以允许在单个内核上出现并行性错觉。现在:由于不再有没有多个内核的CPU,每个CPU都支持MT,它可以有效地实现真正的并行性-可以同时完成多个计算,但结果必须流水线化。
现代的CPU甚至模拟额外的内核-这就是可能的,因为有成果的交付和命令调度,AFAIR之间的时间间隔-这可用于额外的计算...这就是所谓的hyperthreading
和可以提高你的表现了一下。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句