NUMA and vNUMA
NUMA and vNUMA
posted by szamosattila on march 04, 2012
Tutorial, Virtualization
With the spread of SMP (Symmetric Multi-Processing) systems a new scalability issue came up: CPU-memory communication became a bottleneck (again.) In spite of the newest and fastest multicore CPUs, bandwidth of Northbridge wasn’t enough to take advantage of new developments.
This is where NUMA came to the stage. NUMA (Non-Uniform Memory Access) introduced local memory and remote memory. DIMMs have no longer been connected to the IOH, but to the CPU itself. With the apperance of Nehalem processors Intel departed the traditional Front-Side Bus architecture and started to build integrated memory controllers into its processors with two or three memory channels. This new architecture meant that processors were able to read/write from/to local DIMMs faster than DIMMs attached to other CPUs.
With the appearance of NUMA, operating systems and applications had to be prepared for taking advantage of this technology, so a lot of popular OSs and ESX(i) became NUMA aware. The scheduling of NUMA is fully transparent to administrators, ESXi deals with placing vCPUs onto physical CPU cores. If a VM has equal or less vCPUs than the number of cores that a NUMA node has, then the scheduler of ESXi assigns these vCPUs to cores within the same NUMA node. This results in fast memory access speed, because guest memory will be allocated to the virtual machine from the same NUMA node. What if we have VMs with a greater number of vCPUs than the number of cores a NUMA node has? Then so called wide virtual machines are going to be created. In this case a virtual machine cannot fit into a single NUMA node, so this VM has local and remote memory at the same time. This can cause performance degradation in specific systems. If a virtual machine has more vCPUs than the number of cores a NUMA node has, but less virtual processors (because of hyperthreading), there is an option to tell the scheduler to use hyperthreaded logical processors instead of physical cores in another physical CPU. This results in the usage of only local memory modules, which could be useful for memory intensive applications. You can set this option per VM basis with the following flag:
numa.vcpu.preferHT
So basically that is NUMA all about. But what about vNUMA? NUMA and vNUMA are the same technology, the only difference is that while NUMA is for ESXi, vNUMA is for the guest OS.
vNUMA is a new feature of vSphere 5.0. By default, vNUMA is only enabled for virtual machines with more than 8 vCPUs. If vNUMA is enabled for a VM, the guest OS running inside can take advantage of NUMA technology. Homogeneousity of host servers is very important when using vNUMA. A vNUMA-enabled virtual machine uses a NUMA topology that the underlying physical server has when the VM is powered-on. If the VM is vMotioned to another host, the new host’s NUMA topology might be different from the previous one, which could result in performance degradation.
- See more at: http://blog.szamosattila.hu/index.php/2012/03/numa-and-vnuma/#sthash.2gQCkYjg.dpuf
NUMA and vNUMA的更多相关文章
- All you should know about NUMA in VMware!
http://www.elasticvision.info/ All you should know about NUMA in VMware! Lets try answering some typ ...
- 如何知道SQL Server机器上有多少个NUMA节点
如何知道SQL Server机器上有多少个NUMA节点 文章出处: How can you tell how many NUMA nodes your SQL Server has? http://i ...
- SMP、NUMA、MPP体系结构介绍
从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构 (SMP : Symmetric Multi-Processor) ,非一致存储访问结构 (NUMA : Non-Uniform ...
- 高级NUMA参数
Advanced NUMA Attributes You can use the advanced NUMA attributes to customize NUMA usage. Attribute ...
- Summarizing NUMA Scheduling两篇文章,解释得不错
http://vxpertise.net/2012/06/summarizing-numa-scheduling/ Sitting on my sofa this morning watching S ...
- NUMA总结。
vsphere 5.1性能最佳实践http://www.vmware.com/pdf/Perf_Best_Practices_vSphere5.1.pdf vNUMA 要求:硬件版本8以上. 1.整个 ...
- esxtop 指标%RDY,NUMA,Wide-VMs
参考文章:http://www.boche.net/blog/index.php/2010/10/21/cpu-ready-to-rdy-conversion/ http://kb.vmware.co ...
- 【转贴】SMP、NUMA、MPP体系结构介绍
SMP.NUMA.MPP体系结构介绍 https://www.cnblogs.com/tcicy/p/10185783.html 从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构 ...
- SMP、NUMA、MPP(Teradata)体系结构介绍
从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构 (SMP : Symmetric Multi-Processor) ,非一致存储访问结构 (NUMA : Non-Uniform ...
随机推荐
- Javascript数据模型
本文主要描述Javascript的数据模型,即对Javascript所支持的数据类型的一个全局概缆.文章比较的理论化,非常深入,因此不易理解,但务必对数据模型有一个映象,因为他是理解Javascrip ...
- Nginx rewrite URL examples with and without redirect address
原文地址: http://www.claudiokuenzler.com/blog/436/nginx-rewrite-url-examples-with-without-redirect-addre ...
- fragment做成选项卡,tab效果。 fragment+RadioGroup
fragment做成选项卡,tab效果. fragment+RadioGroup from://http://blog.csdn.net/zimo2013/article/details/122393 ...
- 深入理解Java并发之synchronized实现原理
深入理解Java类型信息(Class对象)与反射机制 深入理解Java枚举类型(enum) 深入理解Java注解类型(@Annotation) 深入理解Java类加载器(ClassLoader) 深入 ...
- 通过Spannable对象设置textview的样式
通过Spannable对象我们可以设置textview的各种样式,其功能十分强大.通过SpannableString和它的setSpan(Object what, int start, int end ...
- 《数据挖掘:R语言实战》
<数据挖掘:R语言实战> 基本信息 作者: 黄文 王正林 丛书名: 大数据时代的R语言 出版社:电子工业出版社 ISBN:9787121231223 上架时间:2014-6-6 出版 ...
- 《Web性能权威指南》
<Web性能权威指南> 基本信息 原书名:High performance browser networking 原出版社: O'Reilly Media 作者: (加)Ilya Grig ...
- 使用Mobx插件查看mobx的变量值
mobx浏览器调试:可以知道store值.方法 在chrome上安装插件Mobx,可以查看store.history.match.location等内容
- java-nio之zero copy深入分析
对于所有的io操作,底层一定是调用操作系统的api来进行读写.受限于不同的操作系统,操作方式一定是有差异的.以下read和write操作,可以看做服务器从磁盘硬件上读取文件数据,然后通过socket发 ...
- OpenCV 脸部跟踪(3)
前面一篇文章我们生成了脸部特征的线性形状模型,本章来学习一下显示线性形状的代码. 线性模型类的结构如下: class shape_model { ...