Hyper-V性能监控_CPU
Hyper-V性能监控:
物理CPU: \Hyper-V Hypervisor Logical Processor(*)\%Total Run Time
%Total Run Time :处理器处理来宾代码和虚拟机监控程序代码所花费时间的百分比
%Total Run Time = %Guest Run Time + %Hypervisor Run Time
虚拟CPU: \Hyper-V Hypervisor Virtual Processor(*)\%Guest Run Time
根分区CPU: \Hyper-V Hypervisor Root Virtual Processor(_Total)\%Total Run Time (注:宿主机本身其实也是一台虚机,该虚机的配置=宿主机本身配置)
Hypervisor\Logical Processors:8 宿主机所有CPU核心总数量
Hypervisor\Virtual Processors:20=4C*3+8 > 8(3台运行中VM,每个VM 4vC,宿主8vC)
Hypervisor\Partitions :4=3+1 (3运行中VM+1根分区)
Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time:物理CPU总体使用率,可用
Hyper-V Hypervisor Logical Processor(_Total)\% Guest Run Time
Hyper-V Hypervisor Logical Processor(_Total)\% Hypervisor Run Time
单台VM CPU(每个核心)利用率:(该值与VM中任务管理器中看到的CPU利用率并不是一回事,不能直接使用该值来衡量VM CPU使用率,实际查看还是使用vM中的任务管理器)
Hyper-V Hypervisor Virtual Processor(2003_1:Hv VP 0)\来宾运行时间百分比
Hyper-V Hypervisor Virtual Processor(2003_1:Hv VP 1)\来宾运行时间百分比
Hyper-V Hypervisor Virtual Processor(2003_1:Hv VP 2)\来宾运行时间百分比
Hyper-V Hypervisor Virtual Processor(2003_1:Hv VP 3)\来宾运行时间百分比
Hyper-V Hypervisor Virtual Processor(_Total)\来宾运行时间百分比 (与vCPU数量有关系,不能直接使用该值来衡量实际VM的CPU利用率)
Hyper-V Hypervisor Virtual Processor(_Total)\虚拟机监控程序运行时间百分比
Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比
vCPU/pCPU:
write-host (@(gwmi -ns root\virtualization MSVM_Processor).count / (@(gwmi Win32_Processor) | measure -p NumberOfLogicalProcessors -sum).Sum) "virtual processor(s) per logical processor" -f yellow

上图的最下面黑色区域代表硬件层,包含了硬件信息的描述,中间的Hypervisor层区域,Total代表看到物理CPU的总使用率;Guest代表包括了父分区以及其他正在运行的VM操作系统的总使用率;HvOh表示Hypervisor Overhead,这里的HvOh表示Hypervisor层自己的开销,它的开销数据代表着父分区和其他VM的开销。8Logical CPU,20Virtual CPU(4*3+8)
54%*(4/8)+57%*(4/8)+53%*(4/8)+5%*(8/8)= 87%(所有Guest OS<包括父分区>开销,,数值时刻处于动态,约等于90%)
56%*12/8 + 5%*(8/8)=89% ,约等于90%
当根分区或者子分区CPU压力增大时,Logical Processor\% Total Run Time都会增高。
如果vCPU个数(12,不包含根分区)大于LogicalCPU个数(8)时:第一台VM的CPU利用率达到80%,第二台VM的CPU利用率达到80%,则当第三台VM的CPU利用率逐渐增大时,会导致对物理CPU的争抢,三台VM的CPU利用率都会降低,最后达到一个均衡,如上图
物理CPU和虚拟CPU不能划等号,没有直接关系:
测试:
宿主8C,VM01:8C,VM02:8C
测试1:
VM01和VM02同时开机,VM01的Cpu利用率达到80%(任务管理器),VM01:Hv VP 0:80%,Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比:50%。关闭VM02后,Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比:100%。
可得知Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比 与vCPU总数量有关系,vCPU数量越多(只算运行中的VM),该值越低
测试2:
VM01开机,VM02关机,VM01的Cpu利用率达到80%(任务管理器),VM01:Hv VP 0=80%,宿主CPU:80%。
启动VM02后,VM02的CPU达到80%(任务管理器)的时候,VM01:Hv VP 0=45%, VM02:Hv VP 0=45%,VM02的CPU达到80%(任务管理器),宿主CPU:99%
总结:vCPU数量越多,宿主CPU利用率越高。当物理CPU利用率已达到100%时,再启动新的VM,则VM之间会争夺CPU资源,导致VM性能下降(此时 Hyper-V Hypervisor Virtual Processor(VM01:Hv VP 0)\总运行时间百分比 会下降,最终每台VM之间比例基本持平)。虽然VM01和VM02分别分配了8vCPU,但实际上只是抢到了4LCPU的资源,相当于4vCPU
测试3:
宿主共计48个logicalCPU,4个NUMA,每个NUMA 12个logicalCPU
使用计数器 HV VM Vid Partition\perferred NUMA Node Index(VM01)得知VM01位于NUMA节点1(LogicalCPU:12-23,共计12个)
VM2008:
分配给VM2008 4vCPU, CPU达到80%, 使用了NUMA1节点的8 个LogicalCPU
分配给VM2008 8vCPU, CPU达到80%, 使用了NUMA1节点的12 个LogicalCPU
分配给VM2008 12vCPU,CPU达到80%, 使用了NUMA1节点的12 个LogicalCPU
分配给VM2008 16vCPU(此时该VM需要使用两个NUMA节点LogicalCPU资源),当CPU达到80%, 使用了NUMA1和3节点的24 个LogicalCPU
VM2003:
分配给VM2003 1vCPU,CPU达到80%,使用了当前NUMA节点上的4个LogicalCPU
分配给VM2003 2vCPU,CPU达到80%,使用了当前NUMA节点上的4个LogicalCPU
分配给VM2003 4vCPU,CPU达到80%,使用了当前NUMA节点上的8个LogicalCPU
分配给VM2003 8vCPU,CPU达到80%,使用了当前NUMA节点上的8个LogicalCPU
总结:VM如果只位于某一个NUMA节点上,则不会使用其他NUMA节点上的资源,vCPU与logicalCPU并没有直接对应关系,4vC就会调用到8logicalCPU的资源
=======================================================
The “Hyper-V Hypervisor Virtual Processor” and “Hyper-V Hypervisor Root Virtual Processor” counter sets have the same counters. The only difference between the two is the ““Hyper-V Hypervisor Root Virtual Processor” contains counters for only the Root Virtual Processors (VP’s) whereas “Hyper-V Hypervisor Virtual Processor” has counter for all other partitions.
partition=分区=虚机,一个分区就是一个虚机,根分区就是宿主机
参考:http://blogs.msdn.com/b/tvoellm/archive/2008/05/12/hyper-v-performance-counters-part-four-of-many-hyper-v-hypervisor-virtual-processor-and-hyper-v-hypervisor-root-virtual-processor-counter-set.aspx
与在 Hyper-V 上运行来宾操作系统相关的成本
与所有服务器虚拟化软件一样,运行必需的虚拟化代码以支持在 Hyper-V 上运行的来宾操作系统都会产生一定的开销。以下各节总结了在 Hyper-V 虚拟机上运行来宾操作系统时所产生的特定资源开销:
CPU 开销
在 Hyper-V 虚拟机中运行来宾操作系统时所产生的 CPU 开销的范围是 9% 到 12%。例如,在 Hyper-V 虚拟机中运行的来宾操作系统通常有 88–91% 的空闲 CPU 资源可用于在物理硬件上运行的对等操作系统。
内存开销
在 Hyper-V 虚拟机中运行来宾操作系统时所产生的内存开销大约为 300 MB(用于虚拟机监控程序),加上第一次为每台虚拟机分配 1 GB RAM 时产生的 32 MB 内存开销,再加上以后每次为每台虚拟机分配 1 GB RAM 时产生的 8 MB 内存开销。
网络开销
与在 Hyper-V 虚拟机中运行来宾操作系统直接相关的网络延迟大约不到一毫秒 (ms),而且来宾操作系统维护的网络输出队列长度通常不超过 1。
磁盘开销
在 Hyper-V 中使用直通磁盘功能时,与在 Hyper-V 虚拟机中运行来宾操作系统相关联的磁盘 I/O 开销的范围是 6% 到 8%。例如,在 Hyper-V 上运行的来宾操作系统通常有 92–94% 的空闲磁盘 I/O 可用于在物理硬件上运行的对等操作系统。
相关链接:http://www.cnblogs.com/dreamer-fish/p/3794036.html
Hyper-V性能监控_CPU的更多相关文章
- cpu和memory性能监控
cpu性能监控 #!/bin/bash column_count= i= m= is_want= str_msg=""; file_name=./test/`date +%Y-%m ...
- 《深入理解Java虚拟机》虚拟机性能监控与故障处理工具
上节学习回顾 从课本章节划分,<垃圾收集器>和<内存分配策略>这两篇随笔同属一章节,主要是从理论+实验的手段来讲解JVM的内存处理机制.好让我们对JVM运行机制有一个良好的概念 ...
- Apache服务器性能监控
Apache服务器性能监控 1.使用自带mod_status模块监控 1)加载mod_status.so 模块 在httpd.conf中打开LoadModule status_module modul ...
- jvm性能监控与故障处理工具
jdk为我们提供了一系列的jvm性能监控和故障处理工具,在这里根据学习进度进行整理记录.便于之后查阅 1.jps 虚拟机进程工具 类似于Linux系统中的ps命令,用于查看虚拟机进程,常用的有以下功 ...
- 【转载】Linux系统与性能监控
原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...
- Linux系统与性能监控
原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...
- Sysstat性能监控工具包中20个实用命令
Sysstat性能监控工具包中20个实用命令 学习mpstat, pidstat, iostat和sar等工具,这些工具可以帮组我们找出系统中的问题.这些工具都包含了不同的选项,这意味着你可以根据不同 ...
- Linux运维不可不知的性能监控和调试工具
Linux运维不可不知的性能监控和调试工具 1 nagios Nagios是一个开源监控解决方案,我觉得他可以监控一切 ,可以看一下我以前的文章:NAGIOS 2 ps #用来查看程序的运行情况 ps ...
- 前端性能监控系统ShowSlow
作者:zhanhailiang 日期:2014-11-14 1. 简单介绍 ShowSlow是开源的前端性能监控系统,提供了下面功能: 前端性能指标数据收集功能:ShowSlow原生提供了数据收集工具 ...
随机推荐
- Codeforces 258 Div2
A题,n*m根木棍,相交放置,轮流取走相交的两根,最后谁不能行动,则输掉. min(n,m)&1 为1则先取者赢. B题,给定一个长度为n,且各不相同的数组,问能否通过交换连续一段L....R ...
- asp.net DropDownList无刷新ajax二级联动实现详细过程
只适合新手制作DropDownList无刷新ajax二级联动效果: 数据库实现,添加两表如图:表1,pingpai,表2,type,具体数据库实现看自己的理解: //页面主要代码: <asp:S ...
- Linux下使用clock_gettime给程序计时
http://www.cnblogs.com/daqiwancheng/archive/2010/07/01/1769522.html
- ruby quiz The Solitaire Cipher
solitaire cipher:http://en.wikipedia.org/wiki/Solitaire_(cipher) https://www.schneier.com/solitaire. ...
- linux内存管理机制
物理内存和虚拟内存 我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念. 物理内存就是系统 ...
- linux移植简介[MS2]
一:修改Makefile 1添加编译选项,2添加时钟 二:图形化配置(make menuconfig) 此时生成zlmage, 可以跑起来 三:对NandFlash配置,yaffs2 文件系统配置, ...
- 阿里巴巴SUI Mobile的使用
1.引入文件 <link rel="stylesheet" href="./css/sm.min.css"> <link rel=" ...
- cogs_396_魔术球问题_(最小路径覆盖+二分图匹配,网络流24题#4)
描述 http://cojs.tk/cogs/problem/problem.php?pid=396 连续从1开始编号的球,按照顺寻一个个放在n个柱子上,\(i\)放在\(j\)上面的必要条件是\(i ...
- 1.进入debug模式(基础知识列表)
1.进入debug模式(基础知识列表)1.设置断点 2.启动servers端的debug模式 3.运行程序,在后台遇到断点时,进入debug调试状态 ========================= ...
- BrnShop开源网上商城第四讲:自定义插件
重要通知:BrnShop企业版NOSQL设计(基于Redis)已经开源!源码内置于最新版的BrnShop中,感兴趣的园友可以去下载来看看.官网地址:www.brnshop.com. 好了现在进入今天的 ...