天天看点

CPU的核与逻辑CPU

CPU是一台计算机的重要组成部件。它相当于一个人的“大脑”。其中文名称是:中央处理器;英文名称是:Central Processing Unit,简写为CPU,它是一台计算机的核心部件。

  CPU一般由逻辑运算单元、控制单元和存储单元组成。在逻辑运算和控制单元中包括一些寄存器,这些寄存器用于CPU在处理数据过程中数据的暂时保存, 简单的讲是由控制器和运算器二部分组成。

  CPU的性能,在很大程度上决定了一台计算机的性能;但一台计算机的整体性能并非由CPU性能决定。

  每个CPU都有其核心。核心(Die)又称为内核,是CPU最重要的组成部分。CPU中心那块隆起的芯片就是核心,是由单晶硅以一定的生产工艺制造出来的,CPU所有的计算、接受/存储命令、处理数据都由核心执行。各种CPU核心都具有固定的逻辑结构,一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有科学的布局。

逻辑CPU可以这样理解,在未使用超线程技术的情况下,逻辑CPU可以当做物理CPU的一颗内核来看待,逻辑CPU的数量=物理CPU的数量x单个CPU的内核数,此时一颗内核在一个时间片内只能执行一个内核线程;当物理CPU使用了超线程技术后,在CPU的一颗内核中,利用就是利用其中空闲的执行单元,模拟出另外一个核心(并不是真正的物理运算核心),使得CPU的这颗内核有两个逻辑核心,也就是所谓的逻辑CPU,此时物理CPU的一颗内核在一个时间片内理论上可同时执行两个内核线程,从而提高了整个CPU的工作效率,此时逻辑CPU的数量=物理CPU的数量x单个CPU的内核数x2。值得注意的是,一颗内核并不代表只能有一个或者两个逻辑CPU,也可以有4个逻辑CPU或者更多。

超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资源,理论上要像两颗CPU一样在同一时间执行两个线程。但值得注意的是,超线程技术为了避免 CPU 处理资源冲突,负责处理第二个线程的那个逻辑CPU,其使用的是仅是运行第一个线程时被暂时闲置的处理单元。所以虽然采用超线程技术能同时执行多个线程,但它并不象两个真正的 CPU 内核那样,每个 CPU内核都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗 CPU内核的性能。

双核处理器,就是双内核CPU,是指在一个物理CPU上集成两颗物理运算核心,从而提高计算能力。

综上,为了更好的理解,举个例子,有两个 CPU分别位于两台机器上,并且它们都是四核的,可是在一台机器的设备管理器或任务管理器中显示有 4 个CPU,另一台机器的设备管理器或任务管理器中显示有 8 个,则说明这台机器CPU的每个核含有两个逻辑 CPU。

继续阅读