Linux内核学习笔记:SMP、UMA、NUMA
来源:互联网 发布:我太孤独 知乎 编辑:程序博客网 时间:2024/05/20 11:47
1. 概述
SMP称为共享存储型多处理机(Shared Memory mulptiProcessors), 也称为对称型多处理机(Symmetry MultiProcessors)。
共享存储型多处理机有三种模型:均匀存储器存取(Uniform-Memory-Access,简称UMA)模型、非均匀存储器存取(Nonuniform-Memory-Access,简称NUMA)模型和只用高速缓存的存储器结构(Cache-Only Memory Architecture,简称COMA)模型,这些模型的区别在于存储器和外围资源如何共享或分布。
UMA多处理机模型如图8.23所示。图中,物理存储器被所有处理机均匀共享。所有处理机对所有存储字具有相同的存取时间,这就是为什么称它为均匀存储器存取的原因。每台处理机可以有私用高速缓存,外围设备也以一定形式共享。
共享存储型多处理机有三种模型:均匀存储器存取(Uniform-Memory-Access,简称UMA)模型、非均匀存储器存取(Nonuniform-Memory-Access,简称NUMA)模型和只用高速缓存的存储器结构(Cache-Only Memory Architecture,简称COMA)模型,这些模型的区别在于存储器和外围资源如何共享或分布。
UMA多处理机模型如图8.23所示。图中,物理存储器被所有处理机均匀共享。所有处理机对所有存储字具有相同的存取时间,这就是为什么称它为均匀存储器存取的原因。每台处理机可以有私用高速缓存,外围设备也以一定形式共享。
到80年代中期,对可扩展的多处理器系统的需求不断增长。基于总线的、cache一致性、共享单一存储器的机器显然是不可扩展的。1996年SGI Origin 2000系列服务器的推出,一种称为S2MP的并行计算机体系结构受到了广泛的注意。S2MP全称为可扩展共享存储多处理(Scalable Shared-memory MultiProcessing)技术。S2MP系统将大量高性能微处理器连接起来,共享一个统一的地址空间,较好地解决其他并行处理系统无法解决的问题。
S2MP是一种共享存储的体系结构,和大规模的消息传递系统相比,它支持简单的编程模型,系统使用方便,是对SMP系统在支持更高扩展能力方面的发展。共享存储系统降低了通信的额外开销,因此系统也可以运行细粒度的应用。S2MP着眼于扩展性能的研究,和传统的基于总线的共享存储并行处理系统相比,它不存在系统中可以连接的处理器数目的总线带宽的限制。
S2MP作为大规模多处理系统,主要问题仍然是解决系统的可扩展和易编程能力。S2MP系统采用分布式存储器技术,引入cache,降低了访存时延。同时系统内处理器通过高速无阻塞的互连网络连接,增加了系统的通信带宽。这些技术保证了S2MP系统的可扩展性能。另一方面,解决编程问题的主要方法仍然是提供与单机类似的统一地址空间,因此S2MP系统采用共享存储的存储器模型,每个处理器结点都可以直接访问所有的存储单元,程序员不用在程序中显式地控制在处理器之间分布数据和进行通信,因而容易编程。直接访存也使得在处理器间动态分配任务,实现负载平衡简单了。同时,由于共享存储系统是由小规模并行多处理器系统演变而来的,它们具有相同的编程模型,所以那些已有的并行应用问题可以很容易地移植过来运行,解决了并行处理系统的应用程序开发问题。
- Linux内核学习笔记:SMP、UMA、NUMA
- Linux内核学习笔记:SMP、UMA、NUMA
- SMP,UMA,NUMA
- 什么是SMP,UMA,NUMA(zz)
- SMP与AMP-UMA与NUMA概念
- SMP、UMA、NUMA、COMA、ccNUMA区别
- SMP,UMA,NUMA,MPP的概念理解
- 内存学习1 UMA和NUMA
- 服务器体系(SMP, NUMA, MPP)与共享存储器架构(UMA和NUMA)
- Hawq学习笔记 --- SMP架构,NUMA架构 和 MPP架构
- linux SMP系统学习笔记
- linux SMP 启动过程学习笔记
- linux SMP 启动过程学习笔记
- 《深入Linux内核架构》笔记:(N)UMA模型中的内存组织
- (N)UMA 模型中的内存组织------《深入Linux内核架构》笔记
- N)UMA 模型中的内存组织------《深入Linux内核架构》笔记
- SMP MPP NUMA
- smp,mpp,numa
- VS快捷键使用技巧
- 堆栈以及常用的几种堆栈实现原理
- JIRA 4.4.4 破解、汉化、安装 (适用于JIRA 4.X)
- freemarker加载模板文件的三种方法
- 数组元素循环左移p个位置
- Linux内核学习笔记:SMP、UMA、NUMA
- 读取excel
- java 面试题详解(转自传智播客张孝祥老师)
- myeclipse10 激活
- Linux 内存泄露调试工具
- Android_文件下载
- C++函数调用原理
- .NET安全系列之四:.NET中加密算法及证书
- Objective-C实现单例模式