Hi, Para-virtualization outperforms full-virtualization at the cost of compatibility. But as hardware grows more friendly to virtualization, the advantage of para-virtualization has become not so obvious. Instead, the disadvantage has been amplified. Personally I don''t see a future for para-virtualization. Maybe para-virtualization still has an attraction to small companies who want to build virtualized computing environment with low-price or outdated devices. But I want to know the future trend of para-virtualization. Will it come to an end in the near future? Best Regards, Xinli _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
Hello Xinli, I have limited knowledge on the subject, but I think para-virtualization will continue to exist for a while. I am a consumer, not an employee for a large company, so I find para-virtualization to be very important for my uses personally. Not because of the cost of equipment, but because I only want one machine, and I want it to be able to do everything I ask it to with the best performance it can achieve. To my knowledge not all hardware has a virtualization friendly architecture. As a result, full virtualization achieves compatibility by using abstraction layers (emulated devices) at the cost of performance for such devices. I could be wrong, but I believe this is true still for USB, Hard Drives and Network Components. My understanding of para-virtualized drivers in particular was that they bypass those layers. It may also be important to keep in mind that operating systems have also advanced alongside hardware, which has eliminated numerous compatibility related migration issues. I had a rather lengthy discussion a week ago with someone on the topic of virtualization which revolved around reasons we use it. We concluded that cost is the greatest factor, followed by performance and compatibility. If a company has enough money, they don''t need virtualization. The truth is most large companies do buy the latest equipment, and generally upgrade all their machines at the same time. This addresses compatibility issues (Same Machines) as well as performance (Newest Hardware). In the face of enough money any notion of what type of virtualization is better becomes a pointless debate. Additionally with enough money you can afford enough machines that you don''t need to use virtualization (not that it wouldn''t make more sense to use it). I already gave you my take on performance as a consumer. It adds more flexibility and greater performance on less "equipment". "VMware invented virtualization for the x86 platform in the 1990s to address underutilization and other issues, overcoming many challenges in the process." I have a Core i7 machine and running a single operating system is a clearly not fully utilizing the CPU. Compatibility in my opinion is entirely dependent on the situation. For me not that important, but I can see many reasons why this would be important in many settings. Again, this is my two cents from a limited viewpoint so I look forward to reading what others have to say on the topic. If I had to pick a specific trend, I think para-virtualization will become less important to large companies, but still be in demand by small businesses and private users. ~Casey PS - If you are perhaps thinking that because large businesses may not care about para-virtualization that it isn''t important enough to keep around, you may want to give this a read: http://web.sba.gov/faqs/faqIndexAll.cfm?areaid=24 On Fri, Jun 8, 2012 at 11:03 PM, Niu Xinli <niuxinli1989@gmail.com> wrote:> Hi, > Para-virtualization outperforms full-virtualization at the cost of > compatibility. But as hardware grows more friendly to virtualization, the > advantage of para-virtualization has become not so obvious. Instead, the > disadvantage has been amplified. Personally I don''t see a future for > para-virtualization. Maybe para-virtualization still has an attraction to > small companies who want to build virtualized computing environment with > low-price or outdated devices. But I want to know the future trend of > para-virtualization. Will it come to an end in the near future? > > Best Regards, > Xinli > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xen.org > http://lists.xen.org/xen-users >_______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
On Sat, 2012-06-09 at 11:03 +0800, Niu Xinli wrote:> Hi, >Hi,> Para-virtualization outperforms full-virtualization at the cost of > compatibility. >So, if I can ask, do you mind explaining a bit more what you mean with this sentence above? More specifically, when you say "at the cost of compatibility", what are the compatibility costs you are referring to? Just out of curiosity and for the benefit of the on-going discussion. :-) Thanks and Regards, Dario -- <<This happens because I choose it to happen!>> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://retis.sssup.it/people/faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
On Mon, 11 Jun 2012 16:18:04 +0200 Dario Faggioli wrote:> > Para-virtualization outperforms full-virtualization at the cost of > > compatibility. > > > So, if I can ask, do you mind explaining a bit more what you mean with > this sentence above? More specifically, when you say "at the cost of > compatibility", what are the compatibility costs you are referring to? >I think he's referring to the fact that paravirtualization requires extensive support from the guest OS. Linux and some flavors of BSD have such support, but it's trickier with Microsoft Windows. I think there's some work on that front too, but I don't know how far it got[1]. [1] http://en.wikipedia.org/wiki/Xen#Microsoft_Windows_systems_as_guests> Just out of curiosity and for the benefit of the on-going > discussion. :-) >-- Mihai Donțu _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
On Mon, Jun 11, 2012 at 3:42 PM, Mihai Donțu <mihai.dontu@gmail.com> wrote:> On Mon, 11 Jun 2012 16:18:04 +0200 Dario Faggioli wrote: >> > Para-virtualization outperforms full-virtualization at the cost of >> > compatibility. >> > >> So, if I can ask, do you mind explaining a bit more what you mean with >> this sentence above? More specifically, when you say "at the cost of >> compatibility", what are the compatibility costs you are referring to? >> > > I think he's referring to the fact that paravirtualization requires > extensive support from the guest OS. Linux and some flavors of BSD have > such support, but it's trickier with Microsoft Windows. I think there's > some work on that front too, but I don't know how far it got[1].But then the argument is, "Feature X is useful, but only used by some operating systems, so why don't we get rid of it." That doesn't make much sense to me, especially when "some operating systems" includes basically every open-source OS out there. :-) If the code to run PV guests was incredibly expensive to maintain, that might make sense. But it's not. Furthermore, there are other advantages to PV guests, including not having to have a QEMU instance running to emulate a bunch of platform devices, and so on. Now, it is true that a lot of things that were paravirtualized at Xen's inception can now be virtualized with hardware. It does make sense to take advantage of that where we can, and there are developers working on a "hybrid" PV mode, which does just that. -George _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
2012/6/9 Niu Xinli <niuxinli1989@gmail.com>:> Hi, > Para-virtualization outperforms full-virtualization at the cost of > compatibility. But as hardware grows more friendly to virtualization, the > advantage of para-virtualization has become not so obvious. Instead, the > disadvantage has been amplified. Personally I don''t see a future for > para-virtualization. Maybe para-virtualization still has an attraction to > small companies who want to build virtualized computing environment with > low-price or outdated devices. But I want to know the future trend of > para-virtualization. Will it come to an end in the near future? > > Best Regards, > Xinli >Hello The Paravirtualization not going to die, is a very optimal virtualization solution. If you think about hardware Virtalizacion trying to do what makes paravirtualization. (same concept realized by hardware). Besides the I/O driver paravirtualiacion this in hardware virtualization. (Why you think it is) That is, if you like performance of native hardware, reduce layers, that makes paravirtualization. There are many ways to use paravirtualization.
In response to Dario''s question, x86 Virtualization now exists on most modern hardware, and provides the infrastructure needed to map certain hardware components such as RAM and CPU''s to a virtual machine with near-native performance. However since some devices do not yet have such infrastructure in place they must operate through emulated layers. Since before this technology, para-virtualization has allowed us to avoid emulating these layers by telling the Guest it is sitting on a hypervisor and giving it more direct access to components, which bypasses the emulated layers and improves performance. This generally requires specific drivers and support from that guest OS. Moving a guest with paravirtualization from one set of hardware to another can create undesirable results ranging from mildly annoying driver installation to system breaking compatibility problems. Full Virtualization uses a combination of virtualized (mapped) components and emulated layers where such infrastructure does not exist, which means the guest is entirely unaware of the actual physical hardware on the system, and you can transplant that guest on any set of hardware running the same hypervisor without risk of the guest being unable to function due to missing drivers. Hence, para-virtualization provides greater performance (by bypassing layered operations) at the cost of compatibility (since it now uses drivers specific to the physical hardware on the server). Hope that helps, and please make corrections if I got anything wrong. ~Casey On Mon, Jun 11, 2012 at 10:18 AM, Dario Faggioli <raistlin@linux.it> wrote:> On Sat, 2012-06-09 at 11:03 +0800, Niu Xinli wrote: > > Hi, > > > Hi, > > > Para-virtualization outperforms full-virtualization at the cost of > > compatibility. > > > So, if I can ask, do you mind explaining a bit more what you mean with > this sentence above? More specifically, when you say "at the cost of > compatibility", what are the compatibility costs you are referring to? > > Just out of curiosity and for the benefit of the on-going > discussion. :-) > > Thanks and Regards, > Dario > > -- > <<This happens because I choose it to happen!>> (Raistlin Majere) > ----------------------------------------------------------------- > Dario Faggioli, Ph.D, http://retis.sssup.it/people/faggioli > Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) > > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xen.org > http://lists.xen.org/xen-users >_______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
Thanks for all the replies. By "compatibility" I mean the guest OS must be modified for para-virtualization. I see the following in wikipedia. "During the development of Xen 1.x, Microsoft Research<http://en.wikipedia.org/wiki/Microsoft_Research>, along with the University of Cambridge Operating System group, developed a port of Windows XP <http://en.wikipedia.org/wiki/Windows_XP> to Xen — made possible by Microsoft <http://en.wikipedia.org/wiki/Microsoft>''s Academic Licensing Program. The terms of this license do not allow the publication of this port, although documentation of the experience appears in the original Xen SOSP <http://en.wikipedia.org/wiki/SOSP> paper" Can I get a copy of this modified Windows XP? Best Regards, Xinli _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
On Tue, 2012-06-12 at 17:05 +0100, Niu Xinli wrote:> Thanks for all the replies. By "compatibility" I mean the guest OS > must be modified for para-virtualization. > > I see the following in wikipedia. > "During the development of Xen 1.x, Microsoft Research, along with the > University of Cambridge Operating System group, developed a port of > Windows XP to Xen — made possible by Microsoft's Academic Licensing > Program. The terms of this license do not allow the publication of > this port, although documentation of the experience appears in the > original Xen SOSP paper" > Can I get a copy of this modified Windows XP?It was never published, so no. Ian. _______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
> By "compatibility" I mean the guest OS must be modified forpara-virtualization. Of course that depends on your viewpoint. With PV drivers being part of the Linux kernel, the fact that the drivers need to be kept up-to-date is only really relevant for the developers looking after those drivers. For a user it makes no difference. Things just work. > "During the development of Xen 1.x, Microsoft Research <http://en.wikipedia.org/wiki/Microsoft_Research>, along with the University of Cambridge Operating System ... I have no idea whether this was ever made available. Well before my time. As an aside: I think we may need to review the Xen wikipedia page as part of one of the next Xen Docs days. It has been frequently updated, but I am not sure how much the Xen dev community actually contributed. It seems that a lot of the information in say "Host: Unix-like systems" is out-of-date. Regards Lars On 12/06/2012 17:05, Niu Xinli wrote:> Thanks for all the replies. By "compatibility" I mean the guest OS > must be modified for para-virtualization. > > I see the following in wikipedia. > "During the development of Xen 1.x, Microsoft Research > <http://en.wikipedia.org/wiki/Microsoft_Research>, along with the > University of Cambridge Operating System group, developed a port of > Windows XP <http://en.wikipedia.org/wiki/Windows_XP> to Xen --- made > possible by Microsoft <http://en.wikipedia.org/wiki/Microsoft>''s > Academic Licensing Program. The terms of this license do not allow the > publication of this port, although documentation of the experience > appears in the original Xen SOSP <http://en.wikipedia.org/wiki/SOSP> > paper" > Can I get a copy of this modified Windows XP? > > Best Regards, > Xinli > > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xen.org > http://lists.xen.org/xen-users_______________________________________________ Xen-users mailing list Xen-users@lists.xen.org http://lists.xen.org/xen-users
On Tue, Jun 12, 2012 at 5:05 PM, Niu Xinli <niuxinli1989@gmail.com> wrote:> Thanks for all the replies. By "compatibility" I mean the guest OS must be > modified for para-virtualization.Don''t think of paravirtualization as "on" or "off"; think about it as a spectrum. There are a wide range of interfaces the hypervisor provides which can either be identical to real hardware (fully virtualized) or designed specifically for virtualization (paravirtualized). Any guest OS can use as much or as little of the PV interfaces as they want. For instance, you can run your VM in fully virtualized mode, using disk and network cards emulated by qemu. Or, you can run in fully virtualized mode, but have paravirtualized disk and network interfaces. You can also run in HVM mode but use paravirtualized interrupts; there are patches in Linux to do just that, and it speeds things up significantly. At the moment if you choose HVM mode, you have to do the fully virtualized boot sequence (start in 16-bit mode with a BIOS, and boot up through 32-bit mode to 64-bit mode); but there''s no reason it has to be that way. As long as the cost of maintaining the paravirtualized interface is lower than the aggregate value provided to all guests that can use that interface, I think it makes sense to keep it. And since the cost of maintaining the interfaces is pretty low, and the number of guests that can use it is high, most PV interfaces will remain for some time to come. Does that make sense / answer your question? -George
Hi, 2012/6/9 Niu Xinli <niuxinli1989@gmail.com>:> Hi, > Para-virtualization outperforms full-virtualization at the cost of > compatibility. But as hardware grows more friendly to virtualization, the > advantage of para-virtualization has become not so obvious. Instead, the > disadvantage has been amplified. Personally I don''t see a future for > para-virtualization. Maybe para-virtualization still has an attraction to > small companies who want to build virtualized computing environment with > low-price or outdated devices. But I want to know the future trend of > para-virtualization. Will it come to an end in the near future?To me, hardware-assisted or "HVM" is utterly irrelevant. I need to run servers, and they need to scale well. I use HVM if I want to test some windows VM, but mostly that will be on virtualbox anyway. Out of many 100 Xen VMs I''ve spun up over time I don''t think there was more than 20 HVM ones. Probably less. If I use a less efficient technique, it costs my money and wastes energy for nothing. As of now, I don''t believe PV would go away, since this used mainly not in the small shops, but in the very very big ones for the same scalability reasons. i.e. imagine you''re running something on the amazon-level. Switching to all-hvm means you''ll end up buying in escess of 10k servers to retain the same total compute capacity. I think or hope, at one point we''ll probably see a thinner wall between hardware-assisted and "real" PV modes, i.e. switching to PV after PXEing or something. The complexity of PV is still there and problematic, but for Unix/Linux VMs it''s all not that a big deal. Or is it? Greetings -- the purpose of libvirt is to provide an abstraction layer hiding all xen features added since 2006 until they were finally understood and copied by the kvm devs.