vmware虚拟机多开虚拟机对cpu有什么要求

10373人阅读
虚拟化技术(6)
& & & & 为了在Ubuntu虚拟机内加快编译Android的速度,需要增加vCPU的数量,但VMware Workstation最多只允许有8个vCPU,因此今天破解了VMware Workstation 9.0.1.33347的这个限制,编译加速明显( make -j8原本需要40分钟,现在make -j32只需要不到18分钟)!
& & & &64位下载地址,32位下载地址,替换相应的vmware-vmx.exe即可。
& & & &注意,需要通过直接编辑vmx配置文件修改vCPU数量,GUI配置时还是有8个的限制。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:598135次
积分:6439
积分:6439
排名:第2907名
原创:49篇
转载:106篇
评论:157条
(1)(1)(1)(1)(1)(3)(1)(1)(1)(1)(1)(2)(2)(1)(2)(1)(1)(8)(27)(1)(3)(31)(13)(1)(8)(32)(3)(6)随笔 - 849&
文章 - 11&评论 - 178&trackbacks - 0
最近研究虚拟化技术,不可避免遇到一个问题:如何评估物理主机上虚拟主机的容量?下面这篇文章的思路有一定的启发性,转发一下。
如何确定一个CPU核上部署的虚拟机数量?
摘要:本文说明一个CPU核上部署虚拟机的理想数量。
&&&&& 用户经常会问我这样一个问题,&在一个CPU核上部署虚拟机的理想数量是多少?&我试图从下面两个答案中其中一方面回答:要么用户基于业内测试实例做出决定,要么基于他们自己的桌面PC机来验证性能、评估CPU需求量。
  用业内标准来评判,一个3.0GHz四核心双CPU的服务器通常可以负载的虚拟机数量是30到80个,数量不同的因素是办公桌面类型不同。
&&&&& 轻量级用户:对CPU资源使用的预期值是300MHz;这类用户可能是售报机操作员、接待员、管理员或者仅仅浏览网页的用户。这类用户的办公桌面可能是暂停状态或者根本没有使用,因此前面提到那种配置的服务器每核比率大概接近10:1。&&&&&&& 中等用户:对CPU资源使用的预期值是500MHz;这类用户可能包括数据录入人员、医生、学生、Microsoft Office用户、使用公司内部应用软件的电话销售员,或者服务台工作人员。这类用户仅仅在工作时间使用他们的办公桌面。因此,前面提到那种配置的服务器每核比率大概接近6:1。&&&&& 重量级用户:对CPU资源使用的预期值是800MHz;这类用户可能包括开发人员、系统管理员、IT工作人员、数据库管理员或者工程师。无论是正常工作时间还是下班之后,这类用户的办公桌面负载都很大。他们可能需要运行很大的图形处理工具或者Java应用程序,这些软件都会加重办公桌面负担。因此,前面提到那种配置的服务器每核比率大概接近3.75:1。&&&&& 超重量级用户:对CPU资源使用的预期值是1GHz;这类用户可能使用大型图形处理工具,如CAD用户或者图形界面处理的开发人员。还有另外一类开发人员,他们处理对CPU使用率比较大的Java或者Web设计。这类用户办公桌面的使用率通常保持在一个较高水平,因此前面提到那种配置的服务器每核比率可能接近2:1。  &&&&& 如果使用这个评估系统来设计一个VDI架构的话,需要知道所有这些用户在整个工作环境中是混杂在一起的。并且由于他们更倾向于需要更多的可收缩性而非CPU,所以也必须考虑内存和磁盘空间。
  规划虚拟桌面架构的另外一个方法就是从实际工作环境的办公桌面中收集数据,并且对这些数据做些基本分析、计算。
  如果一个标准办公桌面对一个2.5 GHz单核CPU使用率是10%,那么这个办公桌面平均就使用250 MHz。峰值时刻使用率是25%,即625MHz,但这种情况一天内仅出现20分钟。根据这个时间度量标准,我们考虑使用平均利用时间。
  提示:在虚拟化这些办公桌面时,需要少量系统开销来运行一些部件,如虚拟化图形界面、声音和其它需要连接的设备。在此我们假设针对每台办公桌面会增加25%的系统开销。
  因此,我们这样计算:250 MHz * 30% = 75MHz
  则有250 MHz + 75 MHz = 32 MHz
  如果我们使用3.0四核心双CPU的服务器,将得到如下计算等式:
  (3.0 GHz * 8) / 325 MHz = 73.85个办公桌面。
  要知道这些计算等式并不是非常科学,只用实际测试才能够提供精确数据。但是对于大多数用户来讲,这些计算结果和精确数字已经非常接近了,并且在规划虚拟桌面架构时可以提供必要的帮助。
阅读(...) 评论()帖子很冷清,卤煮很失落!求安慰
手机签到经验翻倍!快来扫一扫!
多开虚拟机 1个cpu感觉不够用 请大神支招
2183浏览 / 16回复
多开虚拟机 1个cpu感觉不够用 请大神支招目前是1230的U 能开15个vm &但是听朋友说他的3770K也只能开15个,所以果断不想换U了&从上考虑&换个双U的主板怎么样?&拿来多开是不是不适用? 新手请大家指点
E3也不能多路吧...............要换的话还是得整个换掉.............
E3只支持单路,E5才支持双路,要是不够用只能换掉了。
这种应用推荐3930K超频,8条槽适合开虚拟机。双路的话E5*2+SR-X或Z9这种配置的CPU和板子都是巨贵无比,上代1366系列组双路像SR-2+xeon 56XX的话基本只能去二手市场淘了。。
再组装一台也可以的,只是怕配来不适用,能多开VM开吗.求推荐个配置啊 亲.
双E5吧 两块 Xeon E5 2690(很贵) EVGA Classified SR-X(也很贵)+看着办吧钱多上GTX690 SLI 插满单条8G …………
这套下来我觉得都能买台车了
对 第4楼 wuchen160 说:=========================没必要....
对 楼主 a 说:=========================E3不够就整个E5双路撒,最多能有16核32线程。够了吧……
再配一台E3 1230v2。这样不是可以30开了吗?
按照2个才百分之10的占用,AMD随便开20个
指示该着而已,根本没在运行什么成程序、软件,只占10%很奇怪吗?
真是服你了 ,没有试过 擦铁钉的感觉吧,让你试试好了
跟我说这个,你还是自己用了再说吧。好失败喔
把暴风都关掉 又要少了个百分之2.真是对不起啊 ,没有感觉
好失败喔,VirtualBox我好几年前就玩过了,只是现在对旧系统没那么依赖后就没再用了,VirtualBox开出来的虚拟系统只要没运行什么吃重的软件CPU占用率本来就可以跟外部实体系统一样低了,只有在运行吃重的软件CPU使用来才会随之增高,再看看你那,别吹说20开了,估计10开就爆呢你内存了,除非你每个系统都分配最少量的内存,想玩20开哦,等你玩过32G或64G再说吧
分200的 ,windows 2000 没压力
对 第13楼 aa 说:=========================忘了告诉你我分的是1GB哈哈哈哈哈哈哈哈哈
人家问的是CPU能开多少,关我屁事,我分小一点
照样可以开N个
&等你真的开N个的时候再来说吧,一个系统只分1G,看来你一个虚拟系也开不了几个程序了,当然果开XP那种古董系统的话1G确实也确实是绰绰有余了
您需要登录后才可以回帖&&&|&&&&&
用户名/注册邮箱/注册手机号
其他第三方号登录查看: 13952|回复: 24
咨询一个VMWARE的CPU资源初始分配的问题
发表于 2-21-:08
咨询一个关于CPU使用的问题。(以下所说的,我们以“核”称之)。
& && &&&比如,我某台物理机2CPU4核共有8核,准备上8个虚拟机。在初始安装时,我分配给每个虚拟机1核(暂时认为1核是可以启动运行的)还是每个虚拟机初始按最大值分配8核,哪一种方式更合理。
& && &&&我个人认为,在机制中,其实实际使用是按照使用多少CPU赫兹来分配的。比方说,1个核是1GHZ,我每个虚拟机分配是1核标准,如果某虚拟机使用256MHZ,那么它可能使用的是8个核中的任意某几个核,这是由VMWARE机制来自动调配,也可能只用到了1个核,也可能256MHZ用到了所有8个核。同样,如果每个虚拟机我预分配是8个核,某虚拟机使用256MHZ,在实际使用中它可能使用的是8个核中的任意某几个核。因此,是不是在初始分配时,分配1个核或8个核,其实无多大意义,还是另有说法。另外,如果某虚拟机使用峰值经常超过1GHZ,那么这种情况下,如果起始分配为1核标准的话,就会经常争抢资源,而如果我初时分配8个核,是不是更合理点,还是使用按照CPU赫兹分配,分1个和8个性质一样,那这样的话,初时给每个虚拟机分配CPU的核数没有多大意义。据我所知,新版本的VMWARE已经不在意这个了,更关注的是份额的定义。
& && & 谢谢!
发表于 2-21-:03
如果要应用现有的FT功能就不一样了,根据应用评估再分配最理想了。
发表于 2-21-:57
在我的记忆中每个虚拟机最大分配是4核!
至于是那几个CPU 在工作你可以在配置中进行指定的。
发表于 2-21-:58
还有更详细点儿的解说没?
发表于 2-21-:38
本帖最后由 delxu 于 2-21- 编辑
如果没必要不建议用8核。建议用4个vCPU。因为这涉及到vCPU的调度。4个vCPU的话VMware会默认调度到一个4核的pCPU上,减少2颗CPU之间不必要的调度造成的内存性能的下降。
发表于 2-21-:45
Frank Denneman写了篇很好的文章解释这个问题:
发表于 2-21-:44
回3楼,从vSphere4开始,可以设置单VM 8个vCPU了。
发表于 2-22-:00
研究研究,稍后再和大家讨论讨论。
发表于 2-22-:24
正解,从4开始支持8个了
发表于 2-22-:08
其实你给每个VM分配2个vCPU就可以了。如果真的想搞,那就得把 资源池和VM资源 预留、限制功能配合起来,从而达到最大化的发挥系统性能。当然了,这也有利于多台HOST之间的资源调度。
发表于 2-22-:23
首先,如果应用本身不支持SMP,那么多CPU也没意义。当然现在这种不支持多CPU的服务端应用已经不多了。但是也不排除某些Legacy的程序被P2V到虚拟环境来了。这种情况下,1个vCPU足矣。
其次,分配1个或2个还是4个vCPU取决于你这个VM真正是否需要那么多的CPU资源。如果你只配置1个vCPU,那么你肯定不能同一时间使用到2个core的。因此,从性能上讲,4个vCPU的VM的运算能力肯定远远超过1个和2个的。
个人觉得,为CPU压力较小的某些web服务器设置为2个vCPU,为压力比较大的应用服务器、SQL服务器,Exchange服务器等设置为4个vCPU比较合适。在不明确将来需要多少cpu运算性能的时候,可以直接设4个vCPU。
发表于 2-22-:54
既然是虚拟机,最好是按需分配,先分配少一点cpu资源,如果使用下来发现确实不够,在增加一个,这样可以使系统效益最大化
发表于 2-22-:32
回复10楼:
给每个VM分配2个vCPU,你的依据是什么?
发表于 2-22-:13
回复11楼和12楼:
一个说分配多点,一个说分配少点,这也是我困扰的地方,11楼的比较具体,有更充分的理论依据或说法嘛?
谢谢大家支持~
发表于 2-22-:28
如果你只配置1个vCPU,那么你肯定不能同一时间使用到2个core的。
为什么?如果应用系统超出1个vCPU后,争用其他vCPU时,不能同时使用?那在争用其他vCPU后是如何分配使用的?
谢谢你的支持~
发表于 2-22-:56
看了你推荐的文章,文章所说的基本明白,但和我这里所提的问题的解答不是很搭界,但还是谢谢你。
发表于 2-22-:18
更正一下,在没有vCPU到pCPU绑定的情况下,并非一个vCPU钉死在一个core上,而是这个vCPU最高只能利用到一个core的处理能力。也就是说,如果这个core只有1GHz,你的VM的CPU最高能力就是每秒10亿次CPU cycle. 如果你的虚机对CPU的需求很多时候都需要超过1GHz的性能,那这时候就达不到了。
我觉得选1个还是2个还是4个vCPU不是定论。完全取决于你的应用需要多少CPU运算能力。
以下摘自《mastering VMware vSphere 4.0》p421页
When a new virtual machine is created with a single vCPU, the total maximum CPU cycles for that virtual machine equals the clock speed of the host system’s core. In other words, if you create a new virtual machine, it can see through the ‘‘hole in the system board,’’ and it sees whatever the core is in terms of clock cycles per second—an ESX/ESXi host with 3GHz CPUs in it will allow the virtual machine to see one 3GHz core.
从CPU调度的角度说,应该是vCPU越少越好。如果4个vCPU的话,VMware要等某一个pCPU的4个core都空闲下来,再一次性分配时间片给此VM。
10楼的说法其实是一个很好的折衷。如果每台VM都是2个vCPU,那么就不存在落单的core的情况。其实效率也挺高的。
So, how many CPUs should a virtual machine have? Creating a virtual machine to replace a
physical DHCP server that runs at less than 10 percent CPU utilization at its busiest point in the day surely does not need more than one virtual CPU. As a matter of fact, if you give this virtual machine two virtual CPUs (vCPUs), then you would effectively limit the scalability of the entire host. Here’s why . . .
The VMkernel simultaneously schedules CPU cycles for multi-vCPU virtual machines. This
means that when a dual-vCPU virtual machine places a request for CPU cycles, the request goes into a queue for the host to process, and the host has to wait until there are at least two cores or hyperthreads (if hyperthreading is enabled) with concurrent idle cycles to schedule that virtual machine. A relaxed coscheduling algorithm provides a bit of flexibility in allowing the cores to be scheduled on a slightly skewed basis, but even so, it can be more difficult for the hypervisor to find open time slots on at least two cores. This occurs even if the virtual machine needs only a few clock cycles to do some menial task that could be done with a single processor. Think about it this way: you need to cash a check at the bank, but because of the type of account you have, you need to wait in line until two bank tellers are available at the same time. Normally, one teller could handle your request, and you would be on your way—but now you have to wait. What about the folks behind you in the queue as you wait for two tellers? They are also waiting longer because of you.
On the other hand, if a virtual machine needs two vCPUs because of the load it will be pro-
cessing on a constant basis, then it makes sense to assign two vCPUs to that virtual machine—but only if the host has four or more CPU cores total. If your ESX host is an older-generation dual-processor single-core system, then assigning a virtual machine two vCPUs will mean that the virtual machine owns all of the CPU processing power on that host every time it gets CPU cycles. You will find that the overall performance of the host and any other virtual machines will be less than stellar.
发表于 2-22-:50
&比方说,1个核是1GHZ,我每个虚拟机分配是1核标准,如果某虚拟机使用256MHZ,那么它可能使用的是8个核中的任意某几个核,这是由VMWARE机制来自动调配,也可能只用到了1个核,也可能256MHZ用到了所有8个核。&
这不对,分配一核的话在某一时刻只会用到一个core
&另外,如果某虚拟机使用峰值经常超过1GHZ,那么这种情况下,如果起始分配为1核标准的话,就会经常争抢资源,而如果我初时分配8个核,是不是更合理点,还是使用按照CPU赫兹分配,分1个和8个性质一样,那这样的话,初时给每个虚拟机分配CPU的核数没有多大意义。&
也不对,只分配一个vcpu的话,此虚拟机不会超过1GHZ。
至于分多少vcpu,还是要具体应用具体分析。
发表于 2-23-:39
&另外,如果某虚拟机使用峰值经常超过1GHZ,那么这种情况下,如果起始分配为1核标准的话,就会经常争抢资源,而如果我初时分配8个核,是不是更合理点,还是使用按照CPU赫兹分配,分1个和8个性质一样,那这样的话,初时给每个虚拟机分配CPU的核数没有多大意义。&
也不对,只分配一个vcpu的话,此虚拟机不会超过1GHZ。
这下不是很明白了,不是说VMWARE可以使虚拟机运行时系统资源超出自身资源后可以征用整台机器空余的资源嘛?按照你所说的,只分配一个vcpu的话,此虚拟机不会超过1GHZ,那当系统超出1GHZ时,无法征用空余资源时,不就要宕机了嘛?
发表于 2-23-:46
本帖最后由 delxu 于 2-23- 编辑
这样理解:
一个银行(host)有8个柜面同时处理业务(相当于8个core)。
有很多公司(VM)在这家银行有业务。
银行人很多,因此这8个柜面前面都排了长长的队伍。
你只派了1个人去排队(你只有1个vCPU),当然一个时间点只能排在一个队伍里面。
因此就算这个银行没有其他人,只有你公司派去的那一个人,也一时间点只能处理1比业务。你的业务处理能力取决于那个柜面的速度。
发表于 2-23-:32
那是不是如果我指定了2个vCPU,就如同派了两个人,效率就提高了。
这也是我开头就想问的,那不管我要做几笔业务,我上手就派了8个人(指定8个vCPU),那么在我只有一笔业务时,就一个人上去排队做,如果有8笔业务时,我可以8个人一起上了,这样是不是上手我给某个虚拟机指定最大核数最好,但这和上面的几位所说的有点出入。
发表于 3-3-:36
頂一個,謝謝樓主分享!
发表于 3-3-:34
建议lz看看原来的帖子:“”
发表于 9-17-:09
老讨论帖,看看还是很有价值
发表于 9-22-:33
讨论的很不错,学习了

我要回帖

更多关于 vmware虚拟机cpu设置 的文章

 

随机推荐