我试图了解处理器中的显式并行性,但对于多核处理器(在单个芯片上具有多个内核)的概念与对称多线程>的概念不同而感到困惑strong>(作为超线程销售)。
答案 0 :(得分:1)
超线程
超线程只允许一个处理器同时处理两个命令。当只有一个处理器可用时,它开始执行并意识到它需要额外的信息然后它发送新信息的命令,同时等待数据到达它在其他命令上工作。
多核
多核处理器在同一芯片上有几个物理上独立的处理器内核。这里只使用一个芯片,因此价格便宜。芯片由附加的I / O寄存器组成。多核处理器也可以使用超线程。
答案 1 :(得分:0)
核心是做实际工作的东西。一个线程就像一条传送带,向核心输送指令,告诉它做什么工作。
打个比方:
每个核心都是工厂的一名工人。他从传送带(线)上拿起一张纸(指令)来执行任务。如果一张纸和下一张纸之间有空隙,他就坐在那里什么也不做。这是单核,单线程。
如果他有 2 个传送带给他送纸,如果一个是空的,他可以从另一个那里获取指令。工人能够做更多的工作,因为他有更少的空闲时间。这是具有 2 个线程的 1 个核心。虽然这比单条传送带要好,但工人仍然必须自己完成工作,所以他是瓶颈。
但是如果他与另一个人类工作者一起(添加另一个核心),他们可以完成两倍的工作。新工人将始终拥有自己的传送带(每个核心至少有 1 条线喂入)。
从最低到最好的性能:
请注意,具有超线程的 1 核与常规双核具有相同的线程数,但双核可以完成更多工作。