1。多核基本理论
多核即在一个单芯片上面集成两个甚至更多个处理器内核,其中每个内核都有自己的逻辑单元、控制单元、中断处理器、运算单元、一级cache、二级cache共享或独有,其部件的完整性和单核处理器内核相比完全一致。
片上多核处理器(CMP)是将多个计算内核集成在一个片处理器芯片中,从而提高计算能力。每个微处理器核心实质上都是一个相对简单的单线程微处理器或者比较简单的多线程微处理器,这样多个微处理器核心就可以并行地执行程序代码,因而具有了较高的线程级并行性。由于CMP采用了相对简单的微处理器作为处理器核心,使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点。此外,CMP还能充分利用不同应用的指令级并行和线程级并行,具有较高线程级并行性的应用如商业应用等可以很好地利用这种结构来提高性能。
按照内核的对等与否,CMP可分为同构多核和异构多核。计算内核相同,地位对等的称为“同构多核”。同构CMP大多数由通用的处理器组成,多个处理器执行相同或者类似的任务。计算内核不同,地位不对等的称为“异构多核”,异构多核多采用“主处理核+协处理核”的设计,Cell处理器正是这种异构架构的典范,它是一枚拥有9个硬件核心的多核处理器。在Cell芯片中,只有一个是IBM完整的Power(精简的PowerPC970)处理器,其余8个内核都是为处理图像而专门设计的、用于浮点运算的协处理器。主处理器的主要职能就是负责任务的分配,实际的浮点运算工作都是由协处理器来完成。由于Cell中的协处理器只负责浮点运算任务,所需的运算规则非常简单,对应的电路逻辑同样如此,只要CPU运行频率足够高,Cell就能获得惊人的浮点效能。整数性能和动态指令执行性能并不理想。由于电路逻辑简单,主处理器和协处理器都可以轻松工作在很高的频率上,Cell起步频率可达到4GHz。在高效率的专用核心和高频率的帮助下,Cell可以获得高达256Gigaflops