NUMA(Non Uniform Memory Access Achitecture)技术可以使众多服务器像单一系统那样运转,同时保留小系统便于编程和管理的有点。基于电子商务应用对内存访问提出的更高的要求,NUMA也向复杂的结构设计提出了挑战。
[size=18:7130835b77]体系结构的发展[/size:7130835b77]
我们知道,当今数据计算领域的主要应用程序和模型可大致分为联机事务处理(OLTP)、决策支持系统(DSS)和企业信息通讯(Business Communications)三大类。而小型独立服务器模式、SMP(对称多处理)模式、MPP(大规模并行处理)模式和NUMA模式,则是上述3类系统设计人员在计算平台的体系结构方面可以采用的选择。
为了全面的了解NUMA的优势,我们不妨先来考察一下这集中模式在处理器与存储器结构方面的区别。
SMP模式将多个处理器与一个集中的存储器相连。在SMP模式下,所有处理器都可以访问同一个系统物理存储器,这就意味着SMP系统只运行操作系统的一个拷贝。因此SMP系统有时也被称为一致存储器访问(UMA)结构体系,一致性意指无论在什么时候,处理器只能为内存的每个数据保持或共享唯一一个数值。很显然,SMP的缺点是可伸缩性有限,因为在存储器接口达到饱和的时候,增加处理器并不能获得更高的性能。
MPP模式则是一种分布式存储器模式,能够将更多的处理器纳入一个系统的存储器。一个分布式存储器模式具有多个节点,每个节点都有自己的存储器,可以配置为SMP模式,也可以配置为非SMP模式。单个的节点相互连接起来就形成了一个总系统。MPP体系结构对硬件开发商颇具吸引力,因为它们出现的问题比较容易解决,开发成本比较低。由于没有硬件支持共享内存或高速缓存一致性的问题,所以比较容易实现大量处理器的连接。
可见,单一SMP模式与MPP模式的关键区别在于,在SMP模式中,数据一致性是由硬件专门管理的,这样做比较容易实现,但成本较高;在MPP模式中,节点之间的一致性是由软件来管理,因此,它的速度相对较慢,但成本却低得多。