CPU架构

2013-09-28 09:46:09 | 新闻来源:叶凡网络 | 点击量:852

      早期的CPU为单核芯片,工程师们很快意识到,仅仅提高单核的速度会产生过多的热量且无法带来相应的性能改善。因此,现代服务器基本为多核或多个CPU。经典的多CPU架构为对称多处理结构(Symmetric Multi-Processing,SMP),即在一个计算机上汇集了一组处理器,它们之间对称工作,无主次或从属关系,共享相同的物理内存及总线,如图2-1所示。

 

 

 

      SMP系统由两个CPU组成,每个CPU有两个核心(core),CPU与内存之间通过总线通信。每个核心有各自的L1d Cache(L1数据缓存)及L1i Cache(L1指令缓存),同一个CPU的多个核心共享L2以及L3缓存,另外,某些CPU还可以通过超线程技术(Hyper-Threading Technology)使得一个核心具有同时执行两个线程的能力。

      SMP架构的主要特征是共享,系统中所有资源(CPU、内存、I/O等)都是共享的,由于多CPU对前端总线的竞争,SMP的扩展能力非常有限。为了提高可扩展性,现在的主流服务器架构一般为NUMA(Non-Uniform Memory Access,非一致存储访问)架构。它具有多个NUMA节点,每个NUMA节点是一个SMP结构,一般由多个CPU(如4个)组成,并且具有独立的本地内存、IO槽口等。

      NUMA节点可以直接快速访问本地内存,也可以通过NUMA互联互通模块访问其他NUMA节点的内存,访问本地内存的速度远远高于远程访问的速度。由于这个特点,为了更好地发挥系统性能,开发应用程序时需要尽量减少不同NUMA节点之间的信息交互。

上一篇:SDN架构的特征分析 下一篇:如何做性能测试