Slashdot Mirror


Hardware Virtualization Slower Than Software?

Jim Buzbee writes "Those you keeping up with the latest virtualization techniques being offered by both Intel and AMD will be interested in a new white paper by VMWare that comes to the surprising conclusion that hardware-assisted x86 virtualization oftentimes fails to outperform software-assisted virtualization. My reading of the paper says that this counterintuitive result is often due to the fact that hardware-assisted virtualization relies on expensive traps to catch privileged instructions while software-assisted virtualization uses inexpensive software substitutions. One example given is compilation of a Linux kernel under a virtualized Linux OS. Native wall-clock time: 265 seconds. Software-assisted virtualization: 393 seconds. Hardware-assisted virtualization: 484 seconds. Ouch. It sounds to me like a hybrid approach may be the best answer to the virtualization problem. "

197 comments

  1. Sponsored by VMWare.. what do you expect? by thegrassyknowl · · Score: 5, Insightful

    See title... VMWare make software virtualisation products. Of course they're going to try and find that software methods are better.

    --
    I drink to make other people interesting!
    1. Re:Sponsored by VMWare.. what do you expect? by cp.tar · · Score: 3, Insightful

      Even so, they may be at least partially right.

      Besides, if a hybrid approach is necessary, VMWare will need to adjust as well. Or am I missing something?

      --
      Ignore this signature. By order.
    2. Re:Sponsored by VMWare.. what do you expect? by zerogeewhiz · · Score: 3, Insightful

      Haven't read it, but I wonder if they were using VT/Pacifica chipsets or no...

      It's like Apple's claim that their Intel jobbies are 5x faster - a bit silly and very, very specific...

      And yes, VMWare are hardly likely to mention that Xen-style virtualisation is going to be better now, are they?

    3. Re:Sponsored by VMWare.. what do you expect? by mnmn · · Score: 4, Informative

      If you search back on Vmware vs Xensource, you'll see Vmware is doing everything to discredit Xen and hardware hypervisors. Instead of saying 'it doesnt work' its more effective to say it works, we have it too, it fails on its own so it needs our software too. From everything I've read about hypervisors including the Power CPU hypervisors from IBM (which have been functional for years) and the original Cambridge paper that created Xen, Hypervisors really outperform software solutions. You do need a software mini-OS as the root on top of which you'd install the OSes which is better than using Windows as the root OS.

      But Vmware's agitation is understandable. They're about to lose it all to an open source project. Where have I seen this before?

      --
      "Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
    4. Re:Sponsored by VMWare.. what do you expect? by XMLsucks · · Score: 5, Insightful

      VMware sells both hardware-accelerated and software virtualization products. They implemented full support for VT (how else would they benchmark it? Plus they were the first to support VT). If you run VMware on 64-bit Windows, then you use VMware's VT product. But because VMware's original software method is faster than the VT method on 32-bit, they continue to use the software approach.

      VMware's paper is a typical research paper, published at a peer-reviewed conference. This means that they have used the scientific method. The chances are 99.9999% that you will easily reproduce their results, even if changing the benchmarks.

      I, on the other hand, am smart enough to see that they are stating the obvious. If you read the Intel VT spec, you'll see that Intel does nothing for page table virtualization, nor anything for device virtualization. Both are extremely expensive, and besides sti/cli, are the prime candidates for hardware assists. Intel will likely solve this performance issue in future revs, but right now, VT isn't fast enough.

      Hmmm, virtualisation? Do you happen to work on Xen?

    5. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      They're in the x86 space. At the moment, there is basically no option for hardware virtualisation.

      Also, you forget where VMWare is actually targeted. They're giving the basic virtualisation away for free for goodness sake! Where they're making the money is the managment of virtualisation - things like VMotion that can move a VM from one physical machine to another, live, without missing a beat. This sort of thing doesn't matter if it's hardware or software virtualisation underneath.

    6. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 5, Informative
      See title... VMWare make software virtualisation products. Of course they're going to try and find that software methods are better.

      Disclaimer: I work for VMware.

      1. VMware already supports VT, but it's not enabled by default because for normal workloads it's slower. If VT really were faster, do you really think we'd be choosing to use a slower approach and making customers unhappy?
      2. Even Intel admits the first generation of VT hardware wasn't so great and now claims that they were aiming for correctness instead of performance:
    7. Re:Sponsored by VMWare.. what do you expect? by arivanov · · Score: 4, Informative

      While they offer software virtualisation products, they are also interested in these products having hardware assistance. The AMD and Intel specs were designed with input from them (amidst other vendors).

      As far as the results there is nothing surprising here. This has happened before. Fault driven emulation of 80287 was nearly 50%+ slower than compiled in emulation. There were quite a few other examples x86 which all revolve around the fact that the x86 fault handling in protected mode is hideously slow. Last time I have had a look at it in asm was in the 386 days and the numbers were in the 300 clock cycle range for most faults (assuming no wait on memory accesses). While 486 and Pentium improved the things a bit in a few places, the overall order remains the same (or even worse, due to memory waits). Anything that relies on faults in x86 is bound to be hideously slow.

      Not that this matters, as none of the VM technologies is particularly caring about resources. They are deployed because there is an excess resource in the first place.

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    8. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      Where have I seen this before?

      Hmmmmmmmmmmmmmmmmmmmmmm.... Unix vs. Linux?

    9. Re:Sponsored by VMWare.. what do you expect? by Alcoholic+Synonymous · · Score: 1

      Additionally (addressing the TFA hybrid comment), since most of these systems using virtualization are x86 based or compatiable, a significant portion of the pocesses for both hard and soft emulation are running straight through the CPU. The only difference being these "traps" for protected operations. Once the kinks are worked out of the hardware version, the software will be history. VMWare is doing a bit of preemptive FUDing before they are forced under. "Inexpensive software cycles" in this case costs actual CPU cycles thus degreding performance overall. In the case of hardware, it's a matter of brining the chip's trap+process mechanism to par with the current CPU speeds, at wich point it will be relatively lossless and potentially faster.

    10. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      TFA does admit that it is not making an apples-to-apples comparison, but all their graphs show performance comparisons between physical, softwarevm and hardwarevm, they avoid mention of the name xen (apart from in one reference) but it would have provided further insights if they'd added paravirtual performance numbers too ...

    11. Re:Sponsored by VMWare.. what do you expect? by geniusj · · Score: 1

      I see you mentioned most of what I was 'clarifying' in my post. Sorry, I didn't read the whole thing ;-). So about the only new info is that VMware runs both 32 and 64-bit AMD VMs in software mode.

    12. Re:Sponsored by VMWare.. what do you expect? by julesh · · Score: 4, Informative

      From everything I've read about hypervisors including the Power CPU hypervisors from IBM (which have been functional for years) and the original Cambridge paper that created Xen, Hypervisors really outperform software solutions.

      Note that Xen's original hypervisor implementation *is* a software solution -- it relies on rewriting the guest operating system kernel so that the kind of hardware traps that VMware are talking about here are unnecessary. Note that it worked flawlessly before the virtualisation technology (eg. Intel VT) that VMware is testing was avialable.

    13. Re:Sponsored by VMWare.. what do you expect? by pe1chl · · Score: 1

      Where have I seen this before?

      Citrix?
      Not an open source product and not lost it to an open source product, but they made a product that has been largely made superflouos because MS built it right into the OS.

    14. Re:Sponsored by VMWare.. what do you expect? by XMLsucks · · Score: 2, Interesting
      Where have you seen VMware discrediting XenSource? I haven't seen that. Can you back this up with some links? Searching for "VMware vs Xensource" was fruitless for me. And searching for "VMware discredits XenSource" was also fruitless.
      But Vmware's agitation is understandable. They're about to lose it all to an open source project. Where have I seen this before?
      I'll let you in on a secret: if you consider all costs, and return on investment, using VMware is a competitive advantage over using Xen. But I don't care whether you believe me, because if you don't, you'll be at a competitive disadvantage, which is to my benefit.
    15. Re:Sponsored by VMWare.. what do you expect? by tgd · · Score: 1

      More importantly they sell virtualization products that do not support VT, and their primary competitor does.

    16. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 1, Informative

      VMware fully support VT, but they don't enable it by default.

    17. Re:Sponsored by VMWare.. what do you expect? by andreyw · · Score: 2, Insightful

      If VMWare's solution still needs a host OS (I remember them using stripped-down Linux for their server offering), then no... they might use use a subset of VT, but its not a true hypervisor.

      And by the way... yes... device virtualization is still not there, but your page tables claim is bullshit. If you read the VT (and the SVM) docs, you would realize that you can implement shadow page tables RIGHT NOW. The hardware assists are there.

    18. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0
      I'll let you in on a secret: if you consider all costs, and return on investment, using VMware is a competitive advantage over using Xen. But I don't care whether you believe me, because if you don't, you'll be at a competitive disadvantage, which is to my benefit.

      Okay, maybe you two have a history I don't know about, but you'd need to know a hell of a lot about his business and the systems he's using in order to be able to make even a guess at the relevant costs and potential return. It seems likely that you're spewing crap.
    19. Re:Sponsored by VMWare.. what do you expect? by XMLsucks · · Score: 1, Redundant

      What are you talking about in regards to a true hypervisor? You don't need a true hypervisor to use VT. The Linux kernel could use VT to run VMs (Xen is then completely unnecessary for open source virtualization).

      And by the way... yes... device virtualization is still not there, but your page tables claim is bullshit. If you read the VT (and the SVM) docs, you would realize that you can implement shadow page tables RIGHT NOW. The hardware assists are there.

      Of course VT supports shadow page tables; how else could it virtualize? The problem is that it isn't accelerated. The guest OS needs to translate its virtual addresses to physical, like so: v --> p. The hypervisor needs to translate the guest's physical pages to machine pages, like so: p --> h. The TLB needs the final translation of: v --> h. VT offers no acceleration to promote v --> p --> h into the TLB. Currently, the hypervisor must maintain a shadow page table with v --> h, which the hardware automatically adds to the TLB. But the hypervisor must manually perform the translation of v --> p --> h, to add to the shadow page table. That is slow. Future revs of VT will automatically do the v --> p --> h. If you believe that happens now, then show me what I misunderstand, or implement support for it and disprove VMware's performance paper.

    20. Re:Sponsored by VMWare.. what do you expect? by dmiller · · Score: 1

      Is AMD's Pacifica virtualisation system any better?

    21. Re:Sponsored by VMWare.. what do you expect? by TrisexualPuppy · · Score: 0, Interesting

      It's not that people don't look to old mainframe solutions for things, they do, it's that often what was feasable on those wasn't on normal hardware, until receantly. There was no reason for chip makers to waste silicon on virtualization hardware on desktops until fairly receantly, there just wasn't a big desktop virtualization market. Computers are finally powerful to the point that it's worth doing.

      It's no supprise that large, extremely expensive computers get technology before home computers do. You give me $20 million to build something with, I can make it do a lot. You give me $2000, it's going to have to be scaled way back, even with economies of scale.

      You see the same thing with 3D graphics. Most, perhaps even all, the features that come to 3D cards were done on high end visualizaiton systems first. It's not that the 3D companies didn't think of them, it's that they couldn't do it. The orignal Voodoo card wasn't amazing in that it did 3D, it was much more limited than other thigns on the market. It was amazing in that it did it at a price you could afford for a home system. 3dfx would have loved to have a hardware T&L engine, AA features, procedural textures, etc, there just wasn't the silicon budget for it. It's only with more developments that this kind of thing has become feasable.

      So I really doubt Intel didn't do something like VT because they thought IBM was wrong on the 360, I think rather they didn't do it because it wasn't feasable or marketable on desktop chips.

    22. Re:Sponsored by VMWare.. what do you expect? by sco08y · · Score: 1

      now claims that they were aiming for correctness instead of performance

      But hey, let's hear it for correctness!

    23. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      The original cambridge paper was a crock.

      They compared Xen "Domain-O" vs. vmware workstation. that's effectively comparing vmware's host against vmware's workstation.

      i.e. Dom-O has relatively (i.e. replace hardware interrupts w/ Xen's event mechanism) access to the hardware. On the other hand, Dom-U's and vmware virtual machines don't have direct access and are much much slower because of it.

      But that's not why the paper was a crock. The paper was a crock because they described all the things they did to make the Dom-U's "Fast", but never tested them, showed us other numbers.

      To most people in the systems research community, Xen isn't special at all from a research perspective. The only thing that's special about is that its OSS which a) gives it mindshare and b) lets people do other interesting hypervisor research. (and I'm not discounting the value of "b", that's a pretty good contribution in and of itself)

    24. Re:Sponsored by VMWare.. what do you expect? by Jahz · · Score: 1
      But Vmware's agitation is understandable. They're about to lose it all to an open source project. Where have I seen this before?


      Reports of VMWares demise have been greatly exaggerated. They're just reacting to a new threat. VMWare is an EMC company, and I doubt EMC is going to let virtualization die. The future of EMC's 23.9 billion dollar empire depends on their ability to virtualize and cluster their machines. This is the quiet before the storm in the storage market...
      --
      There are 10 types of people in the world. Those who understand binary and those who do not.
    25. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      Some points worth considering...

      1. The papers findings were that VT lags because it fails to offer
      adequate MMU virtualization support -- THIS IS NOT A SUPRISE. A key component of the original IBM VM/370 architecture support for virtualization (called VMA or VM assist, you can google for it), was MMU
      virtualization. The reason for this is that PAGE FAULTS HAPPEN FREQUENTLY and DEALING WITH THESE WITHOUT ADDITIONAL HARDWARE SUPPORT IS A NON-TRIVIAL OVERHEAD. The explanation for what happened with VT is pretty simple INTEL FUCKED UP. Guess what this happens sometimes in industry, people aren't familiar with previous
      work and because of the fear of intellectual property and other competitive issues, they don't talk to the people who would know -- e.g. the people at VMware and IBM who have
      been building virtual machine platforms. To be fair, there are lots of things about VT that are nice, and I'm sure Intel will address these issues in the next major version of the hardware.

      2. ASPLOS is a peer reviewed publication of the highest caliber in Computer architecture/Operating systems and one of the two authors (Ole Agesen) is a Stanford PhD and well known and highly respected member of
      the research community -- while this may not usuage the fears of the tin foil hat proprietary software
      conspiracy theorists, it should make any rational person take pause, people don't piss away their
      credibilty to make easily falsifiable marketing claims.

      3. This whole Hypervisors vs. Virtual machine monitors (VMM) distinction people are drawing is meaningless. A VMM is a Hypervisor and vice-versa. VMware makes two lines of products, a hosted product (Workstation/Server) where the VMM coexists with an existing Host OS (windows/Linux) and leverages its drivers and other facilities, and an unhosted / hypervisor/ bare metal VMM / pure-VMM/whatever-the-hell-you-want-to-call it product called VMware ESX, that runs on the
      bare metal. Just like Xen, except, its not just like Xen in that it has been around for years before Xen was even a glimmer in Ian Pratt's eye.

      4. As others have pointed out VMware products have support for VT and Pacifica and Para-virtualization -- again, please step away from your conspiracy theory.

      Summary: Intel made a bad design choice, their first generation of virtualization support in hardware is consequently slower than well optimized BT without hardware support as found in VMware products.

      The End.

    26. Re:Sponsored by VMWare.. what do you expect? by clontzman · · Score: 1

      Citrix and Microsoft have licensing arrangements, so it's very likely that MS is just using Citrix's technology for Remote Desktop.

      http://en.wikipedia.org/wiki/Terminal_Services#Cit rix

    27. Re:Sponsored by VMWare.. what do you expect? by mycall · · Score: 0

      Doesn't AMD SVM do the accelerated shadow page table translation now? I think VMware will be beta testing that real soon.

    28. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      VMware has shipped products that support hardware-assisted virtualization for more than a year now.
      VMware has worked with Intel and AMD to make hardware-assisted virtualization possible.
      VMware is working with Intel and AMD to make hardware-assisted virtualization better.

      Until then, VMware does not advertise that capability with big words (like "hypervisor"): this is just an implementation detail and customers could not care less. Instead they focus on delivering the best performance to users because customers do care about that. If that means they have to use software-based virtualization for another year, so be it...

    29. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      "And yes, VMWare are hardly likely to mention that Xen-style virtualisation is going to be better now, are they?"

      You are missing the point.

      Xen running Linux is a software solution (called paravirtualization). Yes, it is faster than VMware's current offering (software-based virtualization). But VMware is working on addressing that (see their efforts on VMI and now paravirt_ops).

      Xen running Windows is a hardware-assisted solution. Did you actually run it? I did. Windows is about 2X slower than native. That is exactly what VMware is saying in TFA.

      In summary:
      paravirtualization is better than software-based virtualization, which is better than hardware-assisted virtualization.

      Conclusion:
      To virtualize Linux, use paravirtualization (because you have access to the source code)
      To virtualize Windows, use software-based virtualization (because you don't have access to the source code).

      That leaves hardware-assisted virtualization in the blue. But don't worry, Intel and AMD are working on addressing that. With the help of VMware. Why? What does VMware has to gain? Simple: if the virtualization market becomes 4 times bigger, but is divided equally amongst 3 players (Microsoft, VMware, Xen), then VMware will still make more money than it does today...

      If you don't believe any of this, I recommend you read
      "VMware and CPU virtualization technology"
      http://download3.vmware.com/vmworld/2005/pac346.pd f
      which explains it in more details.

    30. Re:Sponsored by VMWare.. what do you expect? by angryargus · · Score: 1

      Your premise is completely wrong -- it`s not like the other vendors are using hardware virtualization because they`re using software too. The difference is about a hypervisor written entirely in software versus one that is written in software but hardware-assisted. Most of the other vendors are using the hardware-assisted approach because it makes it easier for them to write their own hypervisor, and this paper is pointing out that those who take that shortcut (or took that route because they thought it would give a performance advantage) will end up with a slower hypervisor.

      If the hardware-assisted approach was faster then VMware wouldn`t have issue issue with going that route -- this is not a situation where VMware did a software implementation and would have to play catchup to implement a hardware-assisted version. In fact, the paper point points out that using a mix of the different approaches, based on the workload of the VM, is the best way to go. While VMware is in the best position to go this route because they have already implemented the different types of hypervisors, this by itself isn`t a good reason to slander the authors as being biased.

    31. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0
      VMware's paper is a typical research paper, published at a peer-reviewed conference. This means that they have used the scientific method. The chances are 99.9999% that you will easily reproduce their results, even if changing the benchmarks.

      You don't read many scientific papers do you?
    32. Re:Sponsored by VMWare.. what do you expect? by kscguru · · Score: 1

      Incorrect. Read the specs, and you'll see that VT's original spec makes no mention of shadow page tables and SVM lists it as an implementation-dependent feature. BTW, implementation of nested page tables (AMD's version) was slated for RevF, but slipped and last I saw (from The Register) was slated for RevH. It's on Intel's road map, I don't know how far out.

      --

      A witty [sig] proves nothing. --Voltaire

    33. Re:Sponsored by VMWare.. what do you expect? by dbullock · · Score: 1

      VMWare is more than just the basic virtualization function.

      It's an ecosystem of management tools and fault tolerance solutions. I was happy to pay for a full, supported, mature set of tools that runs on a wide range of hardware to do this with without having to be all-one-OS (ala Virtuozzo) or a "not quite there yet" Linux only solution like Xen. We dev and test and QA on a range of OS's and environments and so far VMWare has been the only solution to meet all of our needs.

      If you think VMware's lifeline and product strategy is dangling from a speed comparison using hardware virtualization and may be in danger of being eclipsed by Xen, you're missing the point of why VMWare is and continues to be so successful.

      --
      http://www.bullnet.com
    34. Re:Sponsored by VMWare.. what do you expect? by maitas · · Score: 1


        Actually the reason why VMware will use a slower approach is becouse of Xen.

        If there's any condition were HW virtualization is slower than SW virtualization, you need to use it or lose to Xen Source.

        Don't get me wrong, I work with VMware in Argentina and the guys that sells VMware here are really great to work with. I love the technology and the easy it is to manage it. But certeanly Xen+HW virtualization changes everything....

        The worst thing that VMware has is the the EULA prohibits publishing benchmarks... so is really easy to assume that you will go with the slower approach only to take Xen out...

        The simplest way to solve this is to get any valid SAP SD 2-tier benchmark ( www.sap.com/benchmark ) on a non-HW virtualization capable system (ie. Opteron 880) and run the same benchmark on two different VM using VMware, showing that the SAPs combined of the two partitions equals the number achieved without partitioning. Obviously you will need to use exactly the same HW, guest OS, database and ERP release, achieveng the same dialog-steps response time...

        If you can do it with this benchmark, you will be much better on Corporate Credibility.

    35. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      The first intel 8086 chips ran at 4Mhz. Except that every memory fetch took 4 cycles, while most other CPUs from that era only took 1 cycle. If intel wants to speed up fault/trap speed, they will.

    36. Re:Sponsored by VMWare.. what do you expect? by Crisavec · · Score: 1

      The worst thing that VMware has is the the EULA prohibits publishing benchmarks... so is really easy to assume that you will go with the slower approach only to take Xen out...
      Actually, they just dropped that from the EULA a few weeks ago.

    37. Re:Sponsored by VMWare.. what do you expect? by lpq · · Score: 1

      If you search back on Vmware vs Xensource, you'll see Vmware is doing everything to discredit Xen and hardware hypervisors. But Vmware's agitation is understandable. They're about to lose it all to an open source project. Where have I seen this before?

      --- Um, I dunno, where? Oh, you mean how open source Linux and BSD have killed off proprietary OS's like Windows. Yeah ... I've seen it before...or are you referring to something else? :-)

      Excuse my ignorance, but last I heard [dated info], was that Xen required modifications to client and/or Host OS's What's the scoop on that now?

      Can I install Xen off the open-source "shelf", install on Linux, then load up VM's with winXP and maybe a BSD server thrown in for good measure? How about loading Xen's onto a host WinXP and running virtual Linux and BSD images?

      Smaller scenario...I had dual boot laptop oh...6 years or so ago - at the time it was still Win98SE (needed for some finance software). With no magic tools (other than a network setup switching tool - set IP, forwarding, DNS, proxy) I could boot native into Win98SE or Linux, or with VMWare, run the same Win98 image and never have to reboot to windows. Accessing a real partition in the VM helped disk performance substantially.

      Eventually had to stop using VMWare, because I ran into a floating point bug in their SW emulation that would hang the VM hard. They weren't capable of fixing it in any specified timeframe, and the main reason I needed a VM was to run the finance SW which used floating point.

      Is Xen developed enough , to just install it on my linux box and use it to dual boot XP, Vista or BSD? With dual core cpu's being more plentiful there should be much better performance (or did Intel develop the 2nd CPU to free up one cpu for apps while the other ran the spyware? :-). But even if Xen is capable, how easy is it to setup? Could I give it to a "manager" to install on their own? :-) How 'bout parents (i.e. non-computer types).

      This is an important issue why Xen (like so many other open source projects) might not replace VMWare anymore than Linux has replaced Windows on the desktop: Packaging. Does it have the hand-holding "wizards" (gag) that can help the masses? Is it anywhere near the point-and-click stage?

      From what I've heard with VMWare, they can "sell"/"give away" pre-installed virtual machines that a user can just click-install and run, and up comes a virtual Linux browswer & email session nice and safe to handle virus & doodoo-laden email. Is Xen there? Can it run on Windows? Unfortunately, I think there's still a need to give Windows the direct HW access and VM Linux (very unfortunate for stability). But the biggie: Graphics (and in same vein, but not as hard, cpuwise, HighDef, multi-channel sound. Until 3D graphics can run "at speed" in a VM, people will still need to boot Windows for for all the Graphics intensive apps.

      Another area that was lacking in VMWare (not sure about current products, is one VM seeing multiple CPU's and/or cores. Say you have what would have been a dual-cpu workstation. With Dual Core chips in the two cpu sockets, workstations easily have 4 processors (a bit mind boggling to think of eventual 4-core/chip processors with two of those!).

      While one could run multiple VM's, one to a cpu, that's alot of unnecessary memory 'burned' for no great reason. Unless reliability is an issue, it would be real useful to run 1 OS that can access multiple processors with each processor talking, perhaps, to different disk controllers all talking to SAS drives with each drive having the smarts to queue commands from multiple processes while optimizing transfers. Of course it's not just the OS image wasted, but block caches as well. Assume a 4-cpu 2xdualcore 4GB. Let WinXP Home have Desktop. Say it gets 1 CPU, 750MB and the GPU. Now let the other 3 CPU's run Samba for file serving to a "domain". A

    38. Re:Sponsored by VMWare.. what do you expect? by Anonymous Coward · · Score: 0

      let me know when you see the commercial product (windows) lose to the open source one (linux).... I somehow have the feeling that I will be a very, very , very old man before ou get back to me.

    39. Re:Sponsored by VMWare.. what do you expect? by afidel · · Score: 1

      If you think Citrix is superfelous then you haven't used it in an environment of more than 2 servers. The management tools make it a must for managing large groups of remote access servers.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    40. Re:Sponsored by VMWare.. what do you expect? by hawg2k · · Score: 1
      As I work for a company that uses a lot of VMWare ESX server, I've had discussions with VMWare about this. It's not VMWare trying to discredit hardware virtualization (Prior to x86 CPUs with the correct instructions, VMWare and thir competitors alike are forced to do it in software). They want to use these CPU instructions too.


      It's a simple matter of VMWare's been doing this in software for a long time and has very efficent code to emulate these instructions, versus this is Intel/AMD's first attempt at adding these CPU instructions. VMWare's assumption/home is that future generations of the CPU's will allow this to be done (more) efficiently in hardware so everyone can leverage that capability.

  2. Bias? by ikejam · · Score: 0, Redundant

    I'd like to think of VMware in a different mould than MS, but i'd still hate to take this info in w/o some third party verification.

    1. Re:Bias? by RegularFry · · Score: 4, Insightful

      Insisting on third-party verification of results is hardly damning either of them... It's just scientific. You (and everyone else) are absolutely right to be sceptical, and not just because VMware have a vested interest in this case. They might just be wrong. Or not.

      --
      Reality is the ultimate Rorschach.
    2. Re:Bias? by DanMc · · Score: 1
      Compiling a linux kernel is a bad choice of benchmark. It happens to be heavily slanted towards VMware... It doesn't use any of the high-cost software emulated parts of vmware except the virtual disk drive. And they've invested a ton of effort into optimizing their virtual disk driver. A tiny improvement in the virtual disk is actually a visible speedup to an end user, especially across a bunch of VMs.

      Can we see some benchmarks that mirror what people are really using virtualization for? The most popular thing to virtualize is web servers, client-server app servers that hit a database, file servers. This means a LOT of traffic through VMware's software virtual network switch, the software virtual NICs, and likely lots of interrupts being generated by the app software! Compiling a kernel doesn't touch the nic, the switch, and makes almost no interrupts.

  3. Nevermind who sponsored the study... by Cherita+Chen · · Score: 1

    The real question is what type of test was performed... It would make sense that different applications would function differently in a variety contexts. How about some variance? I dig VMWare, but come on...

    --
    I'm not fat, just big boned...
    1. Re:Nevermind who sponsored the study... by julesh · · Score: 1

      So why don't you actually read the paper? It has quite a good explanation of what they did. FWIW, it wasn't a clear win for software; there were things the hardware implementation did better, but they're things that don't seem to be quite so important for real-world applications.

  4. Hybrid? Good + Bad = Better? by MrFlannel · · Score: 2, Insightful
    Software-assisted virtualization: 393 seconds. Hardware-assisted virtualization: 484 seconds. Ouch. It sounds to me like a hybrid approach may be the best answer to the virtualization problem.
    So, um, a hybrid approach is better because it will take 439* seconds? Why?

    * - I imagine in real life it's not a 1:1 ratio, but for the sake of argument, work with me.
    --
    Clones are people two.
  5. The correct conclusion is more limited by njdj · · Score: 5, Insightful

    The correct conclusion is not that virtualization is better done entirely in software, but that current hardware assists to virtualization are badly designed. As the complete article points out, the hardware features need to be designed to support the software - not in isolation.

    It reminds me of an influential paper in the RISC/CISC debate, about 20 years ago. Somebody wrote a C compiler for the VAX that output only a RISC-like subset of the VAX instruction set. The generated code ran faster than the output of the standard VAX compiler, which used the whole (CISC) VAX instruction set. The naive conclusion was that complex instructions are useless. The correct conclusion was that the original VAX compiler was a pile of manure.

    The similarity of the two situations is that it's a mistake to draw a general conclusion about the relative merits of two technologies, based on just one example of each. You have to consider the quality of the implementations - how the technology has been used.

    1. Re:The correct conclusion is more limited by badfish99 · · Score: 1

      The Intel processor design has been a pile of manure ever since the first 8086. On the other hand, the IBM zSeries range of computers has been doing virtualization since the 1960s, and presumably the hardware has been designed to get it right. Can anyone give comparable performance figures for programs running in a virtual machine or the bare metal for a zSeries machine?

    2. Re:The correct conclusion is more limited by keesh · · Score: 1

      You can't run on bare metal on zSeries. The whole architecture just isn't designed to work that way. It has to have the virtualisation layer, or at least something that provides nearly all of the functionality of what would traditionally be considered a virtualisation layer.

    3. Re:The correct conclusion is more limited by TheRaven64 · · Score: 4, Interesting
      The easiest architecture to virtualise is the Alpha. It had a single privileged instruction, and all that did was shift to a higher privilege mode (which had a few shadow registers available) and then jump to an address in firmware. The firmware could be replaced by using one of these calls. If you wanted to virtualise it then you could do so trivially be replacing the firmware with something that would check or permute the arguments and then vector off into the original firmware.

      It also had a few other advantages. Since you were adding virtual instructions, they all completed atomically (you can't pre-empt a process in the middle of an instruction). This meant you could put things like thread locking instructions in the PALCode and not require any intervention from the OS to run them. The VMS PALCode, for example, had a series of instructions for appending numbers to queues. These could be used to implement very fast message passing between threads (process some data, store it somewhere, then atomically write the address to the end of a queue) with no need to perform a system call (which meant no saving and loading of the CPU state, just jumping cheaply into a mode that could access a few more registers).

      --
      I am TheRaven on Soylent News
    4. Re:The correct conclusion is more limited by lukas84 · · Score: 2, Funny

      The IBM iSeries (identical to the pSeries hardware) also have a hardware HyperVisor.

      Their entry models (10k US$) are slow as shit though. Can't say anything about the more expensive machine, but anything that requires around 12 hours to upgrade it's operating system can't be trusted.

    5. Re:The correct conclusion is more limited by renoX · · Score: 2, Interesting

      >The naive conclusion was that complex instructions are useless. The correct conclusion was that the original VAX compiler was a pile of manure.

      Note that the 'naive conclusion' and the 'correct conclusion' are not contradictory: I remember an article recently where it was shown that the Alpha had three times the power of a correspondig VAX, which made nicely the point that CISC is shit.

      Now as Intel has shown, given enough efforts and money even x86 the poorest CISC ISA ever (VAX ISA was much nicer than x86 ISA: more registers, orthogonal design) can be competitive and sofware compatibility makes the rest..

    6. Re:The correct conclusion is more limited by gnasher719 · · Score: 1

      '' Now as Intel has shown, given enough efforts and money even x86 the poorest CISC ISA ever (VAX ISA was much nicer than x86 ISA: more registers, orthogonal design) can be competitive and sofware compatibility makes the rest.. ''

      This was heavily discussed a while ago on comp.arch. Conclusion: VAX instruction set was an absolute nightmare for hardware designers; while today the problem of making x86 fast in spite of the instruction set is basically solved, making a VAX fast would have taken superhuman efforts.

    7. Re:The correct conclusion is more limited by Covener · · Score: 1
      You can't run on bare metal on zSeries. The whole architecture just isn't designed to work that way. It has to have the virtualisation layer, or at least something that provides nearly all of the functionality of what would traditionally be considered a virtualisation layer.


      Linux can run on the bare metal (the only OS on the entire system), as a first-level image in an LPAR (the LPAR is actually managed by a lightweight hypervisor), and on top of of z/VM (itself on top of the bare metal or an LPAR) which is the more heavyweight hypervisor that has the sexier resource mgmt / guest OS mgmt.

    8. Re:The correct conclusion is more limited by Anonymous Coward · · Score: 1, Interesting
      Disclaimer: I work for IBM (and am hence posting AC since I don't dare be seen as speaking for the company, which I do not).

      Grandparent post is correct. As of the z990 series/model (I think), LPAR (lowest level of virtualization) is required. There is no further option for 'bare metal' operation. IOW, what used to be 'bare metal' is now a single LPAR; the difference being that the hypervisor is always engaged. But this is a fairly recent development, and I can't dis the parent post for not knowing.

      As pertains to TFA and this subject overall, it took IBM many years to get hardware virtualization 'right', and it's under constant refinement, even now. There were incremental hardware (and OS, if we want to talk z/VM) improvements all the way across the zSeries (and predecessors) line to support it, dating all the way back to the 1970s.

      I don't expect that Intel or AMD would have gotten it right on the first shot -- efficient h/w virtualization is not as easy as it sounds it might be. If the benchmarks are correct, I'm not too surprised. Getting there may take Intel/AMD many more years, depending on commercial (read: paying customers with $$$ on the table) demand for efficiency.

      If I were on the VMWare or Xen staff, I wouldn't be losing any sleep -- at least for a while, yet.

    9. Re:The correct conclusion is more limited by renoX · · Score: 1

      I'm curious why making a VAX fast is such a problem?

      Sure some VAX instruction such as 'list management' cannot really be made fast, but the x86 has also such kind of instructions, but those instructions are irrelevant, they can be trapped and handled by microcode, and the compiler writers avoid those instruction as they know that they are slower than doing it 'by hand'.

      I would have thought the 16(if memory serves) orthogonal registers would have made a nice target for compilers, contrary to the ridiculous number of (non-orthogonal) registers on x86..

    10. Re:The correct conclusion is more limited by Hal_Porter · · Score: 2, Insightful

      > I'm curious why making a VAX fast is such a problem?

      I read that the calling convention specified a general call instruction which was architected to do a lot of stuff - build a stack frame, push registers and so on, so even an efficient implementation will be slow. Much of the time, you could get away with something much simpler.

      >I would have thought the 16(if memory serves) orthogonal registers would have made a nice
      >target for compilers, contrary to the ridiculous number of (non-orthogonal) registers on x86..

      x86 is orthogonal in protected mode, and register renaming helps with the low number of architectural registers. And if you're doing something intensive, you have SSE registers to use too. And x86-64 has more architectural registers anyway. So most of the architectural problems with the 8086 have been solved or mitigated.

      I guess if the VAX had been as popular, something similar would have happened of course.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    11. Re:The correct conclusion is more limited by maraist · · Score: 1

      These could be used to implement very fast message passing between threads (process some data, store it somewhere, then atomically write the address to the end of a queue) with no need to perform a system call (which meant no saving and loading of the CPU state, just jumping cheaply into a mode that could access a few more registers).

      I'm confused, why would you need a system command to pass messages between threads? Isn't that what atomic read-and-write ASM commands are for? That plus thread-shared memory? I have a foggy memory of the alpha instruction set, but other than perhaps a more sophisticated cache-locking, I don't see what they could have that was more innovative for message passing.

      I would say that most threaded message passing these days have significantly more overhead. So aside from certain single-function high performance applications, I don't see much advantage to these techniques anymore. You've got apache and mem-mapped shared-memory segments for worker allocation management.. You've got similar environments under postgres (using ID oriented shared-memory segments and semephores).. You've got mysql with multi-threaded shared memory (and likely with atomic read-write mutex's). All of these are using well defined C multi-threading models that - other than setup - don't require OS commands.. Granted a c-library mutex might call a yield system command if the local spin-lock-loop runs too long. But you can't get around that without a change in the core application's algorithm.

      Or am I missing something related to VM implementation?

      --
      -Michael
    12. Re:The correct conclusion is more limited by dfghjk · · Score: 1

      The "naive conclusion" was unsupported by the facts due to the "correct conclusion". Your additional argument, that Alpha was 3x more "powerful" than a corresponding VAX, is also meaningless. What constituted a "corresponding VAX"? Alphas where to be used in future VAX'es so there were inherent generational differences in play. Finally, there is no reason to believe that VAX'es were representative of the best of breed in CISC design.

      All that limiting instructions to gain performance means is that the instructions you avoid are poorly implemented. You may benefit from an alternate design that excludes the avoid instructions or you may benefit more by fixing the slow instructions. You ust also consider why the compiler produced slow code to begin with (as the original poster said).

      Alpha's were great performers in their day but they were also incredibly power-hungry and their performance was not sufficiently compelling for them to succeed.

  6. Re:Hybrid? Good + Bad = Better? by cp.tar · · Score: 2, Insightful

    I suppose there are certain things hardware virtualisation does better.

    The trick is, I'd guess, to find out which works better in which circumstances.

    You see that people suspect this white paper because of its origin; they are right in doing so at least because only one type of test has been performed; surely not all computing tasks perform the same way as a kernel compile.
    This suggests that VMWare have found the example which supports their claims the best; the question is, of course, whether this is the only such example.

    So if we suppose that there are certain types of problems where hardware virtualisation outperforms software virtualisation, hybrid solutions seem to be the right way to go.

    P.S. I don't really know what I'm talking about...

    --
    Ignore this signature. By order.
  7. hardware v/s software by toolz · · Score: 2, Insightful

    When are people going to figure out that "hardware solutions" are really software running on hardware, just like any other solution?

    Sure, the instructions may be hardcoded, coming out of ROM, or whatever, but in the end its instrructions that tell the hardware what to do. And those instructions are called "software", no matter how the vendor tries to spin it. And if the solutions performs badly, it is because the software is designed badly. Period.

    --
    You aren't remembered for doing what is expected of you
    1. Re:hardware v/s software by Eideewt · · Score: 1

      I don't see how this is a significant distinction. The question, in terms you might prefer, is how virtualization using specialized hardware compares to doing the same thing in general purpose hardware. There doesn't seem to be any semantic difference. Are you just pointing out that a hardware implementation's performance is predicated on its design?

    2. Re:hardware v/s software by Anonymous Coward · · Score: 0
      When are people going to figure out that "hardware solutions" are really software running on hardware, just like any other solution?
      That is akin to saying it's all electrons bouncing around. Hardware solution, i.e., hard-wired solution, is or can and should be faster since it can bypass programmability (therefore complexity) overhead not related to its specific purpose. For example, compare FPU unit vs. its software emuation.

      Sure, the instructions may be hardcoded, coming out of ROM, or whatever, but in the end its instrructions that tell the hardware what to do. And those instructions are called "software", no matter how the vendor tries to spin it. And if the solutions performs badly, it is because the software is designed badly. Period.
      If the so-called hardware soution is using the same instruction set as the software solution, it's a firmware solution, not a hardware solution.
    3. Re:hardware v/s software by Anonymous Coward · · Score: 0

      You are wrong on so many levels. Firstly hardware based generally means that specific-purpose-built hardware, as opposed to generic processors, are being used. This hardware is complex enough to still have software running on hardware, but you'd be wrong in any case because the hardware does only what it is meant to do - take the very good example of switching packets in a network switch, as opposed to pushing them over a single bus and running a program on a generic processor to route them. If you are uncertain about this having a performance advantage, look at the total aggregate throughput of a 128-port fibre-channel director (and you do get even bigger systems).

      Secondly, you get firmware based solutions, in which case, yes, you actually have a program stored in a rom, loaded and executed on the dedicated hardware. Many IO adapters, even graphics cards, network cards, etc does this, _BUT_ still you have a processor which is purpose built for a specific function, and therefore outperforms generic processors performing the same function in software. For one thing, you don't have the overhead of an operating system or task switching, and for another, the "processor" does have gates wired in a purpose built and optimized way to do just what is needed, giving you a real performance benefit.

      Lastly, Micro-ops, firmware, standalone programs, and traditional software all operate in such vastly different ways that comparing them in the way you did above should gain you a troll award, and me a sucker award for replying!

          _J

  8. "It sounds to me like a hybrid approach may be th" by l3v1 · · Score: 1

    It sounds to me like a hybrid approach may be the best answer

    As so many times and so many cases before has it proven to be the optimal solution. What gives ? Good is that we have all these alternatives, and every vm company will try to evaluate, then optimize, which will lead to better performing software VMs, and because hw is slower to catch up, probably software VMs will be better for a while.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
  9. Re:Hybrid? Good + Bad = Better? by Solder+Fumes · · Score: 1

    It probably won't work that way at all. This could be more of an additive thing.

    For example, say you have a boat powered by 393 horsepower engine and a 484 horsepower engine. If you run them both at the same time, the net power is not going to be 439hp.

    Software+hardware won't add in nearly the same way, but I wouldn't be surprised if a hybrid approach was %50 faster than either method alone.

  10. wrong by m874t232 · · Score: 3, Insightful

    Hardware virtualization may be slower right now, but both the hardware and the software supporting it are new. Give it a few iterations and it will be equal to software virtualization.

    It may or may not be faster eventually, but that doesn't matter. What matters is that small changes in the hardware make it possible to stop having to depend on costly, proprietary, and complex software--like that sold by VMware.

    1. Re:wrong by Eideewt · · Score: 1

      Yes, let's move it to our costly, proprietary, and complex hardware instead!

      Not to say that you're wrong or that hardware should be free-as-in-freedom, but the irony was to great to resist.

    2. Re:wrong by ocbwilg · · Score: 1

      Hardware virtualization may be slower right now, but both the hardware and the software supporting it are new. Give it a few iterations and it will be equal to software virtualization.

      It may or may not be faster eventually, but that doesn't matter. What matters is that small changes in the hardware make it possible to stop having to depend on costly, proprietary, and complex software--like that sold by VMware.


      Maybe I'm crazy, but I just don't see that happening anytime soon in the mainstream. When they talk about "hardware-based" virtualization, they are really talking about "hardware assisted" virtualization, in that the CPU has some features built in to assist with accelerating virtualization. There still needs to be some sort of host OS or software (call it a hypervisor, mini-kernel, whatever) that provides access to the rest of the hardware (storage, memory, etc) and manages accesses by the guest OSes. What would it take to do all of that in hardware? My guess is new kinds of memory, storage, etc that also support virtualization, or a BIOS that actually manages it for you, but a BIOS is just software anyway.

      I seriously doubt that we'll get to a purely hardware virtualization ever (for hetergenous operating systems), if for nothing other than the fact that there are so many potential issues with guest operating systems that the hypervisor/host OS needs to handle.

    3. Re:wrong by John+Bokma · · Score: 1

      "What matters is that small changes in the hardware make it possible to stop having to depend on costly, proprietary, and complex software--like that sold by VMware." What matters in the real world, contrary to your fanboy bedroom, is: what's available now, and how can it help me. I rather pay for a solution that works now, and fast, instead of waiting 5+ years for a better OS version that's free as in speech and beer.

  11. This is why hypervisors rule by swbrown · · Score: 1

    Compare the around 2% impact of running an OS built to be virtualization-friendly, like with Linux + Xen, to that of software/hardware solutions to virtualize unfriendly OSes. Massive difference. So, it makes sense to migrate whatever services you're running on Windows to Linux before moving to a virtualized deployment, as you'll save a bundle.

    1. Re:This is why hypervisors rule by rwhiffen · · Score: 2, Insightful

      I don't see how that tracks. How is the %2 impact going to save me a bundle? Moving to linux suposedly will save me money if I virtualize or not, don't see how it being virtualization friendly improves things. Are you saying I'll spend less in hardware by switching to linux? Migrating to linux isn't free (man-hours wise), so the hardware savings better be pretty damn substantial to offset it.

      I should be sleeping.

      Rich

    2. Re:This is why hypervisors rule by Anonymous Coward · · Score: 0

      The point is that if you want to host virtual servers, a virtualization-aware system like a patched copy of Linux will have 2% overhead, but an unpatched Linux or Windows will have 20% overhead. You're better off running Linux in this case.

    3. Re:This is why hypervisors rule by ArbitraryConstant · · Score: 1

      VMWare's style of virtualization, whether it works with hardware support or not, involves trapping privileged operations performed by the guest OS. Xen's style of virtualization tweaks the guest OS to pass on requests for privileged operations by more conventional means, and that is significantly faster.

      --
      I rarely criticize things I don't care about.
    4. Re:This is why hypervisors rule by rwhiffen · · Score: 1

      Great, but per the parent, how does that save me bundles? I can see savings, being able to pile more VM's on the hardware, but just don't see how we get from a few extra VM's to bundles. Perhaps the OP was talking about the costs of VMWare ESX vs Xen.

      VMWare's OS awareness of Windows has advantages. Being able to load one copy of a static DLL shared across VM's can save you bundles of physical ram...

  12. Re:Hybrid? Good + Bad = Better? by The+Mysterious+X · · Score: 1
    Thats true, but if you had a boat that was powered by 2 engines with specialised propellors, one for choppy water, one for smooth water then the maths changes completely.

    If they can pick the *best* features of hardware, and the *best* features of hardware VT, then it is possible to create something that is faster than both solution on their own.

  13. Speed is only one factor by Anonymous Coward · · Score: 0

    There's more to it than just the speed. What the virtualization requires from the OS being virtualized, security features reached, simpleness of virtualization engine (simple code == statistically less bugs) and so on. You also have to keep in mind that this is just the FIRST generation of hardware virtualization (on present x86 platforms). It will develop, and a lot. VmWare's virtualization software has been developed and polished for years so the results are not surprising at all.

  14. Use Paravirtualization by graf0z · · Score: 3, Insightful
    Paravirtualization (running hypervisor-aware guest kernels, eg patched linux on xen) is faster than both, binary translation and "full" virtualization. And you don't need CPUs with VT extension.

    g

    1. Re:Use Paravirtualization by interiot · · Score: 1

      The whole point of virtualization is so you can run your favoriate OS most of the time, and only switch over to Windows when you want to run games, isn't it?

      Well, I suppose if choose to stay in the Windows world most of the time, the whole point of VM is to try to keep malware off your computer... But either way, you're not getting a FLOSS paravirtualized Windows kernel any time soon.

    2. Re: Use Paravirtualization by graf0z · · Score: 1
      Eerrr ... tautologically true, yes: if there is no paravirtualized version of the OS you want to use, paravirtualization is not an option. But there are many scenarios where you are only interested in running lots of paravirtualizable unixish OSes, eg server farming.

      Your windows desktop is not the whole point.

      g

    3. Re: Use Paravirtualization by interiot · · Score: 2, Insightful

      It just seems like many people who try to move away from Windows seem to want to at least have the option to use Windows once in a while.... The Mac-moving-to-Intel thing was met with a lot of excitement because of this, a lot of linux people seem to say this, and it seems like in a lot of companies employees must be productive with specific document formats. Certainly Windows isn't the only point of virtualization, but it seems like it's a really big one, especially for desktop users.

    4. Re: Use Paravirtualization by NormalVisual · · Score: 1

      Your windows desktop is not the whole point.

      Very true, but a lot of the folks that have been deriding VMware as being inferior to Xen are failing to notice that Linux server farming is not the whole point either. At work, I'm limited to using Windows on my desktop, but I still have quite a bit of Linuxy stuff to do and don't have the space or budget to set up additional machines. I also need to have a flexible networking environment in which to test, so I run VMware Workstation. VMware has proven to be a near ideal solution for those needs, where Xen simply is not an option for me. Even if Xen ran on Windows, it still doesn't offer the feature set that I need at work.

      I run Xen at home to maintain my web/mail/etc. servers under a Debian dom0 with four domUs, and it works very well in that environment. I've been totally happy with its performance there, and have no complaints. However, Xen just doesn't cut it for what I need at work. That doesn't make Xen a bad product, just that one needs to use the right tool for the right job.

      Now, if VMware would just allow VMs access to PCI devices like Xen can...

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
  15. Chicken and the egg by Anonymous Coward · · Score: 0

    Ultimately it's software's fault. Hardware is the bedrock without which the software is irrelavant. The biggest potential gains will always come from hardware since the software obtains it's potential from hardware. The software gains may seem the most impressive but they will always be based on hardware. For the end user the biggest gains in the end will come from improving hardware since this will determine what is even possible in software.

  16. Not just the CPU by kripkenstein · · Score: 4, Interesting

    What matters is that small changes in the hardware make it possible to stop having to depend on costly, proprietary, and complex software--like that sold by VMware.

    I am 100% in favor of cheap and open solutions. But I don't agree that this will soon be the case for virtualization. VMWare and the few other major vendors do a lot more than software virtualization of a CPU (which is all TFA was talking about). To have a complete virtualization solution, you need to also virtualize the rest of the hardware: storage, graphics, input/output, etc. In particular graphics is a serious issue (attaining hardware acceleration in a virtual environment safely), which from last I heard VMWare were working hard on.

    Furthermore, Virtualization complements well with software that can migrate VMs (based on load or failure), and so forth. So, even if hardware CPU virtualization is to be desired - I agree with you on that - that won't suddenly make virtualization as a whole a simple task.

    1. Re:Not just the CPU by TheRaven64 · · Score: 1
      In particular graphics is a serious issue (attaining hardware acceleration in a virtual environment safely), which from last I heard VMWare were working hard on.

      Actually, the people who have made the most headway are Microsoft. The Vista driver model is designed for support for virtualisation in mind. This means that the OS has access to video driver commands for things like saving and restoring GPU state. As far as I know, other operating systems currently lack this; Linux has a problem even switching between virtual consoles; if you switch to one running X then it typically switches to a simple visa mode then reinitialises the driver and redraws the screen. This kind of 'solution' (read: hack) would not work for transparent visualisation. The problem is that many existing GPUs (and most older graphics cards) were not designed with virtualisation in mind, and so don't even have functionality around for saving and restoring the state; you need to do it at a higher level, such as by storing an OpenGL state. At the moment, the best solution for 3D support in Xen is to give the GPU exclusively to the domain 0 machine and use GLX with XDMP; since X11 and OpenGL were designed with network transparency in mind, you can make use of this by having the VMs issue high-level OpenGL commands and have the host machine execute them on the hardware.

      Of course, this only works for platforms that use OpenGL and X11 (i.e. not Windows or OS X). It also requires your domain 0 host to provide accelerated indirect OpenGL rendering. This is present in the nVidia blob drivers, and support for a few other cards is in the CVS -HEAD branch of x.org, but it's not stable yet.

      --
      I am TheRaven on Soylent News
    2. Re:Not just the CPU by m874t232 · · Score: 1

      Actually, the people who have made the most headway are Microsoft.

      Actually, Microsoft is just trying to catch up. Linux already has a very flexible driver model in place, and its GUI uses an architecture that is ideally suited to virtualization.

      Linux has a problem even switching between virtual consoles

      Linux has no problem switching between virtual consoles if you use the correct drivers for your hardware.

    3. Re:Not just the CPU by BrookHarty · · Score: 1

      To have a complete virtualization solution, you need to also virtualize the rest of the hardware: storage, graphics, input/output, etc.

      Kripkenstein mentions the dirty little secret that Intel doesnt tell you. Virtualization of the CPU is just that, CPU Virtualization, the memory management, peripherals, and IO hardware is still managed mostly by a host OS.

      So, Software is faster until the CPU vendor includes a bios and chipset thats more virtualized oriented.

      Vmware's main advantage is they provide the host OS for enterprise users without modifying the guest OS, which Xen requires the guest to be modified.

      I dont see Vmware going anywhere, they still give bang for the buck for server consolidation and server control for a large datacenter. I use a bunch of Solaris servers for distributing load, and would love to have the easy replication and managment that vmware offers. And now with Sun using x86 cpis, I might just get that.

    4. Re:Not just the CPU by idlake · · Score: 1
      Vmware's main advantage is they provide the host OS for enterprise users without modifying the guest OS, which Xen requires the guest to be modified.


      Yes, and the reason it does is because the old x86 had a few non-virtualizable instructions; an efficient workaround was a lot of effort, and Xen chose the simpler route of simply disallowing those instructions in the guest OS.

      Kripkenstein mentions the dirty little secret that Intel doesnt tell you. Virtualization of the CPU is just that, CPU Virtualization, the memory management, peripherals, and IO hardware is still managed mostly by a host OS.


      That's no secret at all. In fact, all the other necessary software already exists in open source form.
    5. Re:Not just the CPU by Anonymous Coward · · Score: 0

      you can't securly access the graphics-subsystem securely,
      even without virtualisation in the equation atm.

  17. dual boot by Bizzeh · · Score: 1

    if vmware/qemu/Bochs/virtual pc, isnt good enough for the speed you need, just dual boot the OS's or if you want many servers on one machine, both IIS and Apache offer virtual hosts...

    1. Re:dual boot by buraianto · · Score: 1

      Dual booting is not the same as virtualization. Virtualization allows multiple operating systems, with their own sets of programs, to run concurrently, allowing for a better utilization of the hardware. These may be the same operating systems or different. Dual booting only allows one operating system to run at any one time. You don't get the benefits of physical resource sharing.

    2. Re:dual boot by Bizzeh · · Score: 1

      i know what dual booting and virtualisation is, what im saying is, in most cases, if vmware isnt good enough, just run the two or more operating systems seperatly

    3. Re:dual boot by Anonymous Coward · · Score: 0

      You don't appear to understand the fact that if you need to run two operating systems concurrently, there is no way that dual booting could possibly be an effective solution.

    4. Re:dual boot by T-Ranger · · Score: 1

      Which is only helpful for an extreemly small subset of the uses for virtualisation. You look to VMWare when you need to run N (for N>1) or 1+N (for N >=1) OSs concurently. If VMWare isnt good enough, then what you do is buy multiple pieces of hardware, not change the input requirement.

  18. No not really by Sycraft-fu · · Score: 2, Informative

    In the end, the software instructions are actually executed on hardware, and that hardware imposes limits on what they do. In the case of virtualization the problem comes with privlidge levels. Intel processors see 4 levels of privlidge called Ring 0-3, of which two are used by nearly all OSes, 0 and 3. The kernel and associated code runs in Ring 0, everything else in Ring 3. Now the effect of what ring you are in controls what instructions the processor will allow you to execute, and what memory you can access. So if software in Ring 3 tries to execute a certian instruction, the processor will just not do it, it'll generate a fault.

    Virtulization software has to deal with this, when the computer it's virtualizing wants to execute such an instruction, it can't just hand it off to the processor, it has to deal with it itself, it has to translate it to instrucitons that can be executed and virtualize what happens, hence the name vitrualization.

    The idea with hardware support like VT is that the processor itself will take a more active hand. Virtual machines will actually be able to execute Ring 0 instructions on the processor, because they won't really be running in the main Ring 0, it'll create a seperate isolated privlidge space for it.

    A more simple analogy would be to think of basic math. Suppose you want to multiple two numbers and now suppose again that you have a processor that only has an add instruction. Well, you'd have to do the multiplication in software, as in you'd have to do an add loop. Now suppose that a new version of that processor adds a multiplication instruction, that actually commands a multiplication unit. Now you are doing it in hardware. It is not only less code, but faster because there's a dedicated unit for it.

    It's not like companies just whack instruction on their CPUs for the fun of it, they command different parts of the hardware to do different things. SSE, 3DNow, etc don't just have the processor run little add or multiply loops, they actually kick on seperate sections of hardware, designed for SIMD. Hence why they get the results they do.

    1. Re:No not really by Ibag · · Score: 1

      Yes, it is all well and good that hardware virtualization gives you tools that allow you to do virtualization more efficiently. The problem is, why in these tests did software virtualization come out ahead of hardware virtualization? You can dispute the methodology as giving misleading or inappropriate results, but unless they are lying (which is not impossible), you still have the issue that software virtualization performed better.

      Imagine a man with a computer and a man with a pen and paper both tasked with performing a complex calculation. The man with the computer can do everything that the man with just pen and paper can, and more. The man with the computer should be able to perform the calculation faster. If he does, you are happy. However, if he is slower, saying, "No, note really, because he has better tools, he wasn't actually slower" isn't going to change the results.

      So, argue about the way the test was performed, or argue about why the results are the way they are, but don't try to explain why hardware virtualization is unequivocally better when experiment disagrees.

    2. Re:No not really by Sycraft-fu · · Score: 3, Interesting

      I haven't read the results, and I doubt I have the technical knowledge to properly analyze them properly. However if I were to guess as to why this might be the case I'd say it's because they didn't do it right. This is a new and fairly complex technology, I somehow doubt it's easy to get right on the first try.

      I am not willing, based on a single datapoint, to make any conclusions. That's tanget to my point anyhow, my point was that doing something in hardware and software are quite different.

    3. Re:No not really by Jeremi · · Score: 1
      The problem is, why in these tests did software virtualization come out ahead of hardware virtualization?


      Presumably because Intel did a lousy job on the implementation. It's not like it hasn't happened before (see: x86 ISA, SSE, memory buses for multiprocessors, etc). Hopefully they will do better for the next version; if not there is always AMD's implementation.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    4. Re:No not really by Anonymous Coward · · Score: 0
      I haven't read the results, and I doubt I have the technical knowledge to properly analyze them properly. However if I were to guess as to why this might be the case I'd say it's because they didn't do it right.

      Yes, because a company that's been doing x86 virtualization for eight years and that routinely consults with the CPU vendors clearly must not know what it's doing when faced with new hardware.

      I somehow doubt it's easy to get right on the first try.

      You could say the same thing about VT: it's a first-generation hardware implementation that falls a little short.

    5. Re:No not really by chris_eineke · · Score: 2, Funny
      However if I were to guess as to why this might be the case I'd say it's because they didn't do it right.
      Holy crap, you just bloated "They're wrong." into 26 words. Do you work as a government advisor in your free time?
      --
      "All you have to do is be fragile and grateful. So stay the underdog." Chuck Palahniuk, Choke
  19. Look to IBM by dpilot · · Score: 2, Informative

    IBM has been shipping virtualization since before many of these newcomers were even born. What do you think the 'V' in MVS or VM stands for? I wonder how well IBM's expired patents compare to modern virtualization. Of course in this case it helps to own the hardware, instruction set, and operating system.

    --
    The living have better things to do than to continue hating the dead.
    1. Re:Look to IBM by pe1chl · · Score: 3, Interesting

      IBM's VM also started as a software product that had to cope with virtualisation problems in the hardware.
      Just like what is happening now, they added specific support to the hardware to make VM perform better.
      This all happened before the development of today's architectures, but in the early days of microcomputing, IBM had the position that Microsoft has today: they were the big company that had 90% of the market, and in the eyes of the newcomers all they did was by definition the wrong thing. So nobody would bother to look at 360 mainframes, VM and how it was done before designing their own processor.
      (this would be similar to telling a Linux geek to look at how certain problems are solved in Windows... it is Windows, it is Microsoft, so it has to be the wrong solution)

    2. Re:Look to IBM by TheRaven64 · · Score: 2, Interesting

      IBM contribute to Xen. I was at a talk last year by one of the IBM Xen guys. He made the point that IBM has a real advantage in virtualisation because, when they get stuck, they can pop along the hall to the grey-bearded mainframe guys and say 'hey, you remember this problem you had twenty years ago? How did you solve it?'

      --
      I am TheRaven on Soylent News
    3. Re:Look to IBM by Bozdune · · Score: 1

      True. But actually IBM's experience is a pretty accurate analog to this thread.

      VM370 was a dog. Why? Because they relied on hardware traps and software simulation of CCW's (channel command words), to run the host operating system "perfectly."

      A hack to this, used by National CSS and other timesharing vendors (because, remember that CP/CMS was open source software and VM370 was just one implementation of it), was to replace CCW's inside CMS with specific traps for OS services. The result was that National CSS could run 250+ users on VP/CSS (its version of CP/CMS) whereas IBM could manage only 70 on the same hardware.

      Smart software beats smart hardware every time.

    4. Re:Look to IBM by Sloppy · · Score: 1

      What's ironic is that if it weren't for IBM choosing such a bizarre CPU for their cheap personal computer, most of us would probably be using CPUs today that virtualize better (and the name "Intel" might just be a historical footnote, known for their work in the early 1970s). If IBM hadn't put an 8088 in that box, I might be typing this on on a 68090. ;-)

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  20. Missing the point by Anonymous Coward · · Score: 1, Interesting

    Software virtualization is modifying the guest OS so it can run in a virtual machine, either before the fact with OS and version specific patches, or with run time translation. Both of these techniques can be problematic. Also it requires companies by VMWARE to hire experts in the kernels of all the OSes they plan to support. Contrast that with IBM's mainframe VM which didn't require much knowlege of its guest OS internals, just the hardware architecture.

  21. Re:Hybrid? Good + Bad = Better? by julesh · · Score: 2, Insightful

    Because if you actually RTFA it shows that the hardware virtualization is faster for some benchmarks (e.g. processing system calls) and slower for others (e.g. performing I/O requests or page-table modifications); if you combine the best features of each you should be able to get a virtual machine that is faster than both.

  22. seems like such a waste by FudRucker · · Score: 0, Troll

    seems like such as waste of resources, why not just port the software over to the other OS/platform so it can run natively...

    --
    Politics is Treachery, Religion is Brainwashing
  23. I smell a straw man... by itsdapead · · Score: 2, Interesting
    The naive conclusion was that complex instructions are useless. The correct conclusion was that the original VAX compiler was a pile of manure.

    Perhaps the intended conclusion was that it was feasible to write an efficient compiler using only a small, intelligently chosen with compiler optimization in mind, subset of the instruction set. Perhaps the fact that the original compiler was (as you assert) "a pile of manure" was not unconnected to the fact that it tried to achieve speed by exploiting the entire, eclectic, VAX instruction set (wonder how they worked the famous polynomial instruction in?) instead of sticking to a subset and applying generalised optimization techniques.

    PS: If you think RISC lost the war, then remember that modern x86 processors consist of a RISC core with a translator stage to handle all those pesky, legacy CISC instructions.

    --
    In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    1. Re:I smell a straw man... by dfghjk · · Score: 1

      "PS: If you think RISC lost the war, then remember that modern x86 processors consist of a RISC core with a translator stage to handle all those pesky, legacy CISC instructions."

      The "core" of modern x86 processor is nothing like RISC processors from back when the arguments raged. All modern processors implement designs similar to x86 rather than execute their instruction sets directly. Claiming that these internal engines are "RISC" is preposterous.

      The "IS" in RISC and CISC stands for "Instruction Set" and it's been shown through the current performance of the x86 that the choice of instruction set is not the largest determiner of performance. Obviously, the x86 IS isn't sufficiently bad for it to be unable to compete. Back when transistor budgets were small these things mattered more. Too bad RISC processors didn't run Lotus 123 then.

      The RISC vs. CISC war is over and it turned out to be unimportant.

      Back in the day, my company hired an IBM fellow to run R&D. He was a brilliant mind and an expert at processor design having been instrumental on early RISC development in his previous job. One of the first things he explained to us was the wall that x86 was about to hit due to its CISC design. It was clear to him that the 386 had one more generation of meaningful performance left and that we would need to prepare for a shift to RISC processors and workstation capabilities. He couldn't have been more wrong.

      Arguing RISC vs CISC is like arguing between a horse and a mule. The horse lovers simply didn't understand the possibility of future invention. The x86 today doesn't have a horse under the hood, it has a jet engine.

    2. Re:I smell a straw man... by itsdapead · · Score: 1
      The "core" of modern x86 processor is nothing like RISC processors from back when the arguments raged.
      Urm... I do try not to post statements without checking them first.

      From http://www.cs.swan.ac.uk/~csneal/HPM/p6.html :

      Intel's view was that unlike in the MicroVAX case, the long/complex instructions were commonly-used by compilers, and putting them in software would unacceptably impact performance. Therefore, they implemented a hardware decoder front-end, which breaks down the more complex instructions into simpler micro-ops, or uops. These, together with the simpler instructions, are then sent to a high-performance RISC processor for execution.
      And from: http://en.wikipedia.org/wiki/Pentium_Pro
      The Pentium Pro (P6) core featured an array of advanced RISC technologies, here used for the first time in an x86 CPU. Perhaps the most obvious sign that things had changed was that the CPU's "front end" decoded the old IA32 instructions into micro-instructions which the Pro's RISC core then processed.

      ...and more if you google "pentium risc core". OK they're talking about the Pentium Pro - but my understanding was that the Pentium M/Yonah/Conroe line evolved from the Pro design.

      --
      In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    3. Re:I smell a straw man... by dfghjk · · Score: 1

      Who can argue with Wikipedia?

      Both of your quoted sources use "RISC" rather loosely. Internal ops of modern processors have nothing to do with RISC instruction sets and it's absurd to suggest that they do. Modern RISC processors, the G5 for example, have instruction set decoders that feed "RISC engines", too. If they were RISC in the traditional sense, why would the G5 bother?

      It is a fact that you can't execute instructions in microcode if you want them to go fast. RISC concepts, when they mattered, were all about making that job easier to do. They accomplished this by reducing or eliminating instructions that required microcode, by making instructions easy to decode, and by pushing off work onto the compilers. RISC processors, when the term was all the rage, were very primitive in their capabilities. These days RISC tends to be defined differently but that's revisionist history. RISC stripped out everything hard and added it back as their capabilities grew. It wasn't about load-store, it was about eliminating addressing modes to make decoding easier. It was the 80/20 rule and RISC optimized the big piece and discarded the rest.

      These days, there's not a single threadbare RISC processor left in the desktop space. The last of the great RISC champions, the PowerPC, has an instruction set so powerful it's hard to argue there's anything simplified or reduced to it. The RISC vs CISC argument raged and the fact was that it ultimately didn't matter. If a winner must be declared then it has to be the only one left. All modern processors are designed the same way save Itanium.

      Pentium Pro became PII, then PIII. Pentium M bears much resemblance to the PIII and Core/Core 2 are decendents of the Pentium M. The so called "RISC cores" of these processors are not all the same though.

  24. Read the pdf again. by sharper56 · · Score: 1

    The biggest WIN performance-wise VMWARE is getting is by stripping expensive TRAPS/FAULT and replacing them with appropriate non-faulting instructions, due the the software VMM's JIT compiling nature. It's the same feature that allows some Java code to whip pure C, because the VM is by it's nature dynamic and optimizes live for certain cases better that static analysis can do.

    This type of win will not go away with better HW virtualization and offers VMWare at better claim at building a more secure virtual environment as they can logically peer into the code a strip dubious stuff right out.

    1. Re:Read the pdf again. by Alcoholic+Synonymous · · Score: 1

      What VMWare is doing is still trapping/faulting, only at the expense of CPU cycles before processing the instruction. Technically, this is called overhead, and hardware can (and will) make this negligable in time. The software will always have to check/replace the instruction before it can process it, and this will always add overhead to the process. Hardware will catch up to this by making the replacement more or less "in line" and thus negligable. No pre-processing overhead before sending the modified instruction to the hardware. It will either process the dangerous instruction in itself (sandboxing) or rewrite the process on the fly.

      As far as more secure goes, you can't get any more secure than hardware simply refusing to process the instruction. Sorry. House of Cards vs House of Brick. However, *both* have the potential to be exploitable and insecure, so VMWare is simply FUDing there as well.

      Your comparrison of C to Java is off base by miles as well. We're not talking about the optimization of compiled code, we are talking about processes running the same code through dedicated hardware or software emulation. In which case, whichever has the faster processor behind it will probably win depending on the overheads of each method.

      Let me state this in much simpler terms. Software wins today, hardware will win tomorrow.

      This is the cycle of new tech threatening old tech. Nothing more. And VMWare is in a dangerouse position of facing its products functionality being packaged with every major OS's default install. It's time for them to make thier money while they can, and attacking the newcomers while they are still in thier infancy and playing catchup is thier only recourse.

    2. Re:Read the pdf again. by sharper56 · · Score: 1

      As stated/shown in the PDF, VMWARE implements a binary translation (BT) that reads sections of binary code, creates "translated" code removing problematic op-codes/accesses and alters reads/writes to VMM emulated structures instead of directly accessing HW. While this step absolutely slows does the execution of code the first time through a path, subsequent runs funnel through previously BT'd code. Since the translated code lacks faulting instruction and other items that need emulation, those runs are much faster in the software VMM. The PDF states faulting code inside the trap-and-emulate mechanism takes 2300+ cycles while paths through the BT take 200 cycles. The x86s speed through faults is the prime culprit here and has been a known problem for many years, I doubt that it will be magically fixed because VMM necessities. So, while not a one-to-one match up with JAVA JIT, it well follows the idea that a more dynamic analysis of the code (in this case the need to take faults vs emulating those faults while running in a VMM) can allow great speed improvements.

      Similarly, the software VMM can add code to enhance the security of the emulated systems by analyising access patterns, verifying function returns and memory and code, and replicating all that information to services off the current machine and outside of the normal perview of OS.

      Don't fall for the "hardware wins tommorrow" crap of the hardware engineers. Moore's law is a set of guidelines developed at the early phase of the computing revolution, not an absolute law of nature. I've often seen hardware running simple O^n alogorhythims replaced with CPU based processes running O(n) ones faster. It's fun to watch HW engineers walk away angry and muttering.

    3. Re:Read the pdf again. by Anonymous Coward · · Score: 0

      "Software wins today, hardware will win tomorrow."

      If you RTFA, you will notice that it is exactly the conclusion of TFA... I'm glad you agree with VMware's conclusions.

    4. Re:Read the pdf again. by Alcoholic+Synonymous · · Score: 1

      I'm just happy you make more sense.

    5. Re:Read the pdf again. by Alcoholic+Synonymous · · Score: 1

      I guess you are right. Your totally unsupported anecdotes have caused me to see the light. I will now go yank my 3D graphics card because software rendering is so much more efficient. Dedicated hardware will never outperform it.

    6. Re:Read the pdf again. by CableModemSniper · · Score: 1
      Graphics cards and hardware virtualization are not analogous. A software based VT can scan the binary for trapping instructions before it is run and change them to non-trapping instructions. This means that the slowdown from trapping instructions is proportional to the total number of actual trapping instructions in the image. (Pure) Hardware virtualization traps everytime it executes a trapping instruction.
      label:
      TRAP ; TRAP is transformed once at load time by software virtualization. It's transformed and trapped _every_ time it's called with pure hardware virt.
      ...
      GOTO label
      Remember this is virtualization, most of the instructions will run unchanged directly on the processor anyway.
      --
      Why not fork?
  25. Complain to Microsoft Loud and Clear. by Anonymous Coward · · Score: 0

    They have the drivers for Xen for Windows XP and 2003. They just don't release them.

  26. And then there's paravirtualization by Anonymous Coward · · Score: 2, Interesting

    I don't doubt their numbers, they've been creating virtualized systems very effectively for years.
    I think that any kind of "full virtualization" is going to be subject to these issues. If you want to see performance improvements then you should modify the guest os.

    VMware's BT approach is very effective and their emulated hardware and bios are efficient, but that won't match the performance of a modified OS that KNOWS it's virtualized and cooperates with the hypervisor rather than getting 'faked out' by some emulation.

  27. CMS/370 by Anonymous Coward · · Score: 1, Interesting
    IIRC, CMS used diagnose (VM's version of a system call) to perform synchronous i/o. The whole point of CMS was to leverage off of the hypervisor as much as possible and avoid having to do a full blown OS. That's why CMS didn't use virtual memory to avoid shadow table maintainance by the hypervisor, since CMS knew its real memory was actually virtual memory being managed by the hypervisor.

    You really want to look at the other guest OSes, like MVS, and what VM did to manage performance on them. Things like various microcode vm assists and dedicating hardware to guests so no virtual to real hardware translation had to be performed.

  28. AMD Engineer told me the same thing by DrDitto · · Score: 1

    A friend of mine works at Intel, and he flat out told me (several months ago) that Vanderpool/Pacifica will be slower than VMWare-only for the 1st generation. However this will change in a few years.

    1. Re:AMD Engineer told me the same thing by DrDitto · · Score: 1

      Yes, my subject contradicts (oops!). I know both AMD and Intel guys. I believe it was the Intel guy who mentioned this.

    2. Re:AMD Engineer told me the same thing by Anonymous Coward · · Score: 0

      Lies

    3. Re:AMD Engineer told me the same thing by Anonymous Coward · · Score: 0

      Hell, I work for VMware and I'll tell you the same thing. Look for AMD's nested page tables or Intel's extended page tables.

    4. Re:AMD Engineer told me the same thing by ergo98 · · Score: 1
      Yes, my subject contradicts (oops!). I know both AMD and Intel guys. I believe it was the Intel guy who mentioned this.


      Right...

      Or perhaps you were so lazy in your attempt to appeal to "insider info" (a ridiculous common technique around these parts nowadays) that you couldn't even get your lies straight.
    5. Re:AMD Engineer told me the same thing by DrDitto · · Score: 1

      In June I attended the ISCA conference. That is the International Symposium of Computer Architecture (ISCA). At these events, people from AMD, Intel, Sun, IBM, etc all sit at the same table and discuss everything from sports to load-store-queue implementations.

  29. Re:Hybrid? Good + Bad = Better? by 42forty-two42 · · Score: 1

    They did a lot more than a kernel compile. But I suppose I shouldn't expect people on slashdot to read the article anyway.

    CAPTCHA: pitying, how appropriate.

  30. I think that's a little innacurate by Sycraft-fu · · Score: 3, Insightful

    It's not that people don't look to old mainframe solutions for things, they do, it's that often what was feasable on those wasn't on normal hardware, until receantly. There was no reason for chip makers to waste silicon on virtualization hardware on desktops until fairly receantly, there just wasn't a big desktop virtualization market. Computers are finally powerful to the point that it's worth doing.

    It's no supprise that large, extremely expensive computers get technology before home computers do. You give me $20 million to build something with, I can make it do a lot. You give me $2000, it's going to have to be scaled way back, even with economies of scale.

    You see the same thing with 3D graphics. Most, perhaps even all, the features that come to 3D cards were done on high end visualizaiton systems first. It's not that the 3D companies didn't think of them, it's that they couldn't do it. The orignal Voodoo card wasn't amazing in that it did 3D, it was much more limited than other thigns on the market. It was amazing in that it did it at a price you could afford for a home system. 3dfx would have loved to have a hardware T&L engine, AA features, procedural textures, etc, there just wasn't the silicon budget for it. It's only with more developments that this kind of thing has become feasable.

    So I really doubt Intel didn't do something like VT because they thought IBM was wrong on the 360, I think rather they didn't do it because it wasn't feasable or marketable on desktop chips.

  31. No by advs89 · · Score: 0

    No, 'good' + 'bad but necessary' = better

    --
    Rirelobql xabjf gung EBG-13 vf gur yrnfg frpher rapelcgvba rire, ohg jbhyq lbh jnfgr lbhe gvzr npghnyyl qrpelcgvat vg???
  32. Measuring the wrong stuff by CarpetShark · · Score: 1

    Their measurements may be accurate. The question for me is.. what are they measuring? The slowest things about virtualisation for me are: a) swapping and memory use, because I tend to want LOTS of virtualisation, or none; b) peripheral hardware sharing issues, such as 3D video card acceleration; c) handling many users or workloads, so that each doesn't slow the other to a crawl.

    If hardware solutions can do a better job of compressing the memory that's not in use (unlikely) or virtualising 3D video, so that many OSes can run in a window with mixed open source drivers and proprietary drivers, and perform well, then I'm interested. If it can stop users on a shared hosting machine from bothering each other or getting a terrible responsivenesss experience when they ssh in and run some graphical app remotely, then I'm interested in hardware solutions. Otherwise, it's same-old same-old I guess.

  33. This HAS happened before - with Stacker by tomhudson · · Score: 2, Informative

    This won't be the first time software beats hardware.

    The original Stacker product was a combination of a hardware card and software. Think of the hardware card as an accelerator for doing the comression/decompression.

    The hardware was faster on the oldest machines, but on anything above a 286/12 (I had a 286/20 at the time), or almost any 386, it ran faster without the hardware card. And on every 486, the card was useless.

    So, while you may want to "consider the source" of this news, this is only one factor to weigh. As time goes on, I'm sure we'll see more studies, benchmarks, etc.

    Remember, there are 3 things that are inevitable in a programmers' life - death, taxes, and benchmarks.

    1. Re:This HAS happened before - with Stacker by bioglaze · · Score: 1

      Software can indeed outperform hardware. I have heard that software RAID implementation is often faster than (cheap) hardware.

      --
      Who is John Galt?
    2. Re:This HAS happened before - with Stacker by tomhudson · · Score: 1

      One good example of that is the "elevator" algorithm that linux uses to write to disks. Instead of moving the head from place to place in the order writes were supposed to be written, it "sweeps" back and forth across the surface of the disk. A lot less wear and tear on the drives, and it also allows you to continue to use a bad drive way after it won't work under a certain other OS.

    3. Re:This HAS happened before - with Stacker by empaler · · Score: 1

      I think it has to do with the age of the tools involved - in the case of the current virualization issue, I believe it's simply because the virtualization companies have spent years grinding down perfomance lag, wheres the virtualization tools have not yet been properly refined for use with the virtualization capabilities of the processors. Of course, this is a guess, as I have never looked closer at how it's done; I've been happy as long as it worked.

      The Stacker thing is simply because the other hardware on the machines simply outran the Stacker card. Hmm. I wonder if anyone still uses Stacker?

    4. Re:This HAS happened before - with Stacker by tomhudson · · Score: 1

      "I wonder if anyone still uses Stacker?"

      Why bother ... you can get a a terrabyte of storage for less than the cost of a 40 meg hard drave back in those days.

    5. Re:This HAS happened before - with Stacker by Brazilian+Joe · · Score: 1

      I remember having read a somewhat long time ago that a Duron 800, while having the cpu maxed out, could do an equal or better job at a IDE RAID array (don't remember the details, sorry).
      More recently, on my personal experience, I have an Athlon 3000 as a server with a 4 disk 600GB Software SATA RAID array. A sustained large file copy operation (like an ISO) takes up to 30% CPU processing power, and I have up to 150MB/s r/w speed. As a side note, the kernel detects the optimal checksum calculator as being the SSE2 instruction set. Now, having dual core goodness available, and given that there are cheap cpus with more power than a plain Athlon 3000, the impact is even less, and you can fold in the cost of a RAID card on cpu, or on a better video card.

  34. VMWare get rid of all their sales guys? by SIPVoIP · · Score: 1

    I am planing the network for a large VoIP provider and have been looking at Xen and VMWare. I have tested our VoIP applications such as BroadSoft on Xen and ran into some big problmes such as duble page fault that kills the whole box. I have talked with VirtualIron and they have found the same issues with Xen and say they have patches for their implimentation, but their beta is full and I can't test for 30 days. I have tried to get a VMware sales guy to call me, left 2 messages and emailed twice with no responce, funney since they want about 4X the cost of VirtualIron.

    1. Re:VMWare get rid of all their sales guys? by Anonymous Coward · · Score: 0

      I am planing the network for a large VoIP provider and have been looking at Xen and VMWare. I have tested our VoIP applications such as BroadSoft on Xen and ran into some big problmes such as duble page fault that kills the whole box. I have talked with VirtualIron and they have found the same issues with Xen and say they have patches for their implimentation, but their beta is full and I can't test for 30 days. I have tried to get a VMware sales guy to call me, left 2 messages and emailed twice with no responce, funney since they want about 4X the cost of VirtualIron.

      It is almost like you ran a regular land line call through a VoIP provider

    2. Re:VMWare get rid of all their sales guys? by Anonymous Coward · · Score: 0

      You're going to run a large VoIP installation through BroadWorks under VMs? Rest in peace.

  35. best platform anyway? by Triode · · Score: 1

    Ok, I see all of this virtualization going on, but I keep thinking about a burning question...
    The x86 iunstruction set and architecture was invented some time ago (286, Intel, 1982),
    and although it has been added to and improved upon by both AMD and Intel, one has to wonder
    if it is the correct platform for performing virtualization, or for virtualization in general.

    I mean, ok, it is a slightly big deal to design a new CPU (and I know, I took all the Ph.D.
    courses on CPU design), but think about it. We are trying to make a nice old (vintage? classic?)
    CPU and instruction set good for virtualization. I think now is the time to step back and
    say "hey, we can do better. Lets get a bunch of good CPU designers and _thinkers_ (call Google?)
    to design an architecture that works well for virtualization, then port linux to it" Ok, we
    can invite Tannenbaum too and port Minix. Maybe call plan9 too.

    At any rate, the point is if we are going to really use virtualization, lets do it 100% and not
    half-ass like we always tend to.

    Oh, wait up, we should just call IBM. They have been virtualizing for years. Lets get them
    to design us a good high speed cpu for that.

    1. Re:best platform anyway? by Anonymous Coward · · Score: 0

      During your PhD studies, did you take any economics classes that might give you the grounds to ask whether the investment if worth the cost in that case?

      Sorry to be snide; but I don't get whether you're saying we should scrap the entire investiment in x86 to get... how much % improvement?

      I mean, we already have more elegant solutions... but people are trying to virtualize x86.

    2. Re:best platform anyway? by Jeremi · · Score: 1
      Lets get a bunch of good CPU designers and _thinkers_ (call Google?) to design an architecture that works well for virtualization, then port linux to it


      That would be a cool project; the problem is that the twenty gazillion computers already out there in the world still run the bad old Intel ISA, and most likely the next twenty gazillion computer will too (because economies of scale have made Intel PCs so cheap). That means that 99% of existing computers can run a virtualized Intel ISA at (close to) full speed, whereas virtualizing any other ISA (even an 'ideal' one) would require slow emulation.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    3. Re:best platform anyway? by rubycodez · · Score: 1

      you do realize the current x86 chips really aren't much like a traditional x86 inside, they are "emulating" a virtualized x86 running very different machine code than x86 opcodes? We've already gone and past the point of being able to generically build an architecture that can virtualize the normal operations that all microprocessors do

  36. Don't talk if you don't actually know by suso · · Score: 1

    I just found out the hard way that Xen isn't quite ready to do hardware virtualization either. It does support the VT intruction set, but it doesn't handle disk IO well at all to the point where you can get up to 50% performance loss. They say that this will be eventually fixed but that doesn't change the fact that I spent time looking for the right hardware virtualization solution and it still doesn't perform. Software paravirtualization under Xen is probably still better than VMware though.

    So don't be so quite to judge VMware's claims just because they are a for profit company with an insane EULA.

  37. Yes, AMD Pacifica seems to be far better by Morgaine · · Score: 3, Interesting
    Is AMD's Pacifica virtualisation system any better?

    Apparently, yes, and by a good margin.

    There are several documents and articles out there which point out VT's problems and how Pacifica is quite dramatically better. Here's an excerpt from "AMD Pacifica turns the nested tables", part 3 of an informative series of articles:

    • The basic architecture of the K8 gives AMD more toys to play with, the memory controller and directly connected devices. AMD can virtualise both of these items directly while Intel has to do so indirectly if it can do so at all.

      This should allow an otherwise identical VMM to do more things in hardware and have lower overhead than VT. AMD appears to have used the added capability wisely, giving them a faster and as far as memory goes, more secure virtualisation platform."

    So, it looks like AMD are ahead on hardware virtualization at the moment.

    If I read it correctly, this is because Intel's VT actually requires a lot of software intervention, so it's not actually a very strong hardware solution at all.
    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
    1. Re:Yes, AMD Pacifica seems to be far better by jarek · · Score: 1

      It does seem like an advantage but there are still no benchmarks to be found although the hardware has been out there for more than a month.

    2. Re:Yes, AMD Pacifica seems to be far better by kscguru · · Score: 1
      Nested page tables isn't in the current generation of AMD chips (and thus, they will do no better than Intel's VT). I am VERY eagerly awaiting the next generation of chips.

      Pacifica has a slight advantage in that it supports ASIDs (Address Space IDs, see your OS textbook's section on page tables), a long-overdue x86 feature. But even theoretically, that's not going to make up the difference.

      --

      A witty [sig] proves nothing. --Voltaire

  38. Parallels on Mac OS? by akac · · Score: 2, Interesting

    Well OK. But it could also mean that VMWare doesn't know yet how to properly create a hardware virtualized vm.

    Parallels on OS X switches between software and hardware virtualization and using hardware virtualization its about 97% the speed all around of native hardware (consider that virtualization on current Yonah CPUs is equal to one core only). Software virt on Parallels is much slower - on par with running Windows Virtual PC on the same box using Windows XP (not Mac Virtual PC).

    1. Re:Parallels on Mac OS? by jla0 · · Score: 1

      I agree with you 100%! Parallels Desktop is a blast to use BECAUSE of VT. That's why I can't wait to see what kind of performance we'll see with VMWare under MacOS X. I think VMWare is just sending out marketing fud so that people will still buy VMWare products even if it's slower then the competitors...

    2. Re:Parallels on Mac OS? by Anonymous Coward · · Score: 0

      You guys don't get it, do you?

      VMware on Mac OS will use software-based virtualization, and not hardware-assisted virtualization (at least for 32-bit VMs). Why? Because it is faster, as explained in TFA. If you think Parallels is fast because they use hardware-assisted virtualization, you are in for a rude awakening when VMware releases its product for Mac OS. Even the VMware alpha version I saw at WWDC 2006 was faster than Parallels released product.

      Hint: Users only care about VM performance, not about actual technology. VMware is in the business of doing good VMs. VMware will always use the techno that gives the best performance. It turns out that right now that techno is software-based virtualization (at least for guest OSes where source code is not availble). When hardware-assisted virtualization becomes faster (in a few months), VMware sill start using it.

  39. Oh please ... by Anonymous Coward · · Score: 0
    I'll let you in on a secret: if you consider all costs, and return on investment


    The instant that somebody starts to mention ROI or TCO, you can be certain that they have no actual facts on their side.
  40. another thing.... by angelwalkwithme · · Score: 0

    Hardware is hard to upgrade.

  41. How not to write an isPrime function by Browzer · · Score: 1

    not even for demonstration purposes.

    int isPrime(int a) {
        for (int i = 2; i a; i++) {
            if (a % i == 0) return 0;
        }
        return 1;
    }

    1. Re:How not to write an isPrime function by Anonymous Coward · · Score: 0

      You suck at code style:

      int isPrime(int a)
      {
              for (int i = 2; i < a; i++)
                      if (a % i == 0)
                              return 0;

              return 1;
      }

    2. Re:How not to write an isPrime function by Anonymous Coward · · Score: 0

      No you suck, I write all my small utility functions like this:

      int isPrime(int a){ for(int i=2;ia;++i){ if ((a%i)==0)return 0; } return 1; }

    3. Re:How not to write an isPrime function by jimicus · · Score: 1

      Completely OT, but why do you continue with your a%i after i > (a/2)?

    4. Re:How not to write an isPrime function by Anonymous Coward · · Score: 0

      ok, but why do You continue with 'for' after i>sqrt(a) ?

    5. Re:How not to write an isPrime function by TheRaven64 · · Score: 1
      I don't know why this post is here, but the listed code is very inefficient. First, i only needs to go up to ?a, not a. Secondly, why are you checking all even numbers? You can make it twice as fast by adding 2 to i (starting with 3), and testing 2 as a special case. To make it really efficient, you would only need to test dividing by all primes between 2 and ?a, although generating this list might be inefficient if you were going to only test a small number of values for primality.

      Oh, and Slashcode seems to mangle the ?(square root) symbol for some reason. Probably something to do with it still sending iso-8859-1 as the character set. When are we going to get UTF-8 support, Taco?

      --
      I am TheRaven on Soylent News
  42. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  43. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  44. I designed h/w virtualization by Anonymous Coward · · Score: 3, Interesting

    I designed one of the x86 h/w virtualization offerings. It's obvious that outside of device emulation, the biggest overhead of virtualization is the s/w emulation of what amounts to two levels of address translation (especially hairy in multiprocesor systems due to the brain-dead x86 page table semantics that do not require explicit invalidation). So clearly you want nested-paging support in h/w. However, that support is a little more complex than a few microcode changes to trap selected privileged instructions --- and due to schedule pressures, it didn't make it into the current release. Once that's in, expect h/w virtualization to speed up significantly.

    Note that this doesn't make all the other stuff in VT/SVM useless; there are lots of places on the x86 where pure s/w virtualization has to go to great lengths of complexity just to get things correct. As a simple example: there's no way on "old" x86 h/w to save & restore segment descriptors (which you need to do on world switch) --- all you get is the selector, and if the guest O/S has overwritten the in-memory copy, you're out of luck. "Fixable" in s/w (obviously; VMWare does it), but just plain grody. So a major advantage of SVM/VT is that it becomes a lot *easier* to write a VMM (opening up the market to more players; this is starting to show in the Macintosh market) --- eventually, it should become faster, too.

    On a separate note, over the next years, expect h/w assistance for dealing the device emulation (and not just from the CPU vendors).

  45. They all seem to be slow pigs by stabiesoft · · Score: 1

    Ok, I'm sure I'll get blasted for this, but here goes. So, you go out, spend your last dollar to buy a processor that goes 5% faster than the one priced 25% less, then you stick VMWare or Xen or whatever to take a 50% hit? I don't think so in my book. Another fascinating take is your wasting 25% of your electric power budget so you can virtualize the machine. Again, I see the reason you want to do this (yeah right run windoze) but I'll just keep running my linux boxes as pure linux. Ok, go, start berating.

    1. Re:They all seem to be slow pigs by jimicus · · Score: 1

      Go out and buy a server. Install an OS on it, and run a typical "business" task. (By which I mean: one which doesn't require enormous quantities of CPU time - DNS, static web serving, small LDAP installations are all excellent examples).

      Now run "top". Note how 98% of the time the CPU is twiddling its electronic thumbs in an idle state.

      Now, granted, with any half-sane Unix you don't need to set up a separate VM for all the above tasks, but there's a lot of benefits to doing so:

      1. A security hole in one service only compromises one VM, not everything.
      2. Separating those services at a later date should it be necessary is much easier.
      3. Something runs away so hard you can't even SSH in? Reboot the VM, lose one service while it's coming back up rather than several.
      4. Most companies have at least a few people who don't really care what OS their backend systems run as long as the software they want to use works. Sooner or later one of those people may well come to you with a piece of software they want to use which depends on MS SQL server - and if they sign off your wages at the end of the month, you can't really say "no". Run Windows in its own VM and you don't have to give over an entire server to the needs of 3 people.

    2. Re:They all seem to be slow pigs by Just+Some+Guy · · Score: 1
      Almost all those benefits are available through FreeBSD's "jail" system today, with the exception that all jails run under the same kernel image. Other than that, each jail gets it's own IP, filesystem view, process list, etc.

      We routinely use this to build and configure new servers. Pick the least loaded multi-server box, install a new jail on it, and treat it like a new machine. If we ever need to move the system to its own dedicated hardware, we can use tar to move its directory onto the new drive. Reboot, make sure everything works, and be done with it.

      As a side benefit, you can run GNU/Linux (minus the kernel) inside the guest OSes. It works much better than you'd expect at first glance.

      --
      Dewey, what part of this looks like authorities should be involved?
    3. Re:They all seem to be slow pigs by Sassinak · · Score: 1

      One other advantage, one I sell my customers..

      When you have a system image, you can quickly move that image to another server without rebuilding. Say, Machine 101 blows up, but your image is backed up and its doing whatever.(we don't care). fire up the disks, grab image of the server(s) running on machine 101. build up a new machine, slap the images on there.. presto. backup and running EXACTLY as you were before. (no problems like, well this one was build slightly different than that one).

      Most applications/processes are not huge CPU hogs (yes, even in the *shudder* MS world). They are bandwidth and resource hogs (memory and disk space) but the CPU will spike at times but settle down (depending on what you are doing obviously). A full re-index on a 90 GB database, is going to suck up cycles no matter how you cut it.

      So most people purchase VM products to make better utilization of the hardware purchase they have. (and in a server farm, its easier to get approval for 10 machines that act like 30 with gobs of memory (don't forget support contracts), than 30 machines with all of the above.

      --
      God made the Idiot for practice, and then He made the School Board -- Mark Twain Look for http://Thebar.steelbeachca
    4. Re:They all seem to be slow pigs by jimicus · · Score: 1

      You inadvertantly hit the nail on the head with "minus the kernel",

      BSD jails don't allow a whole different operating system in the VM. If the company needs some fancy commercial product which is "only supported on RHEL 4.(mumble) with THESE patches (but not THOSE patches), yet everything else in the company runs FreeBSD, the argument of "minus the kernel" holds no water whatsoever - as soon as you say "minus the kernel" you're giving the commercial support folks a "get out of jail free" card for any support issue you bring up, even if it is immediately obvious that the BSD jail cannot possibly be the problem.

  46. Say whaa??? by BobPaul · · Score: 1

    I'll let you in on a secret: if you consider all costs, and return on investment, using VMware is a competitive advantage over using Xen.

    Xen: free. Linux: free. I don't understand where I would spend any money turning 1 linux server into 2 linux servers ith Xen. We don't use Windows on anything but the domain controllers, but Xen doesn't windows (nor would I want to virtualize our DCs...)

    1. Re:Say whaa??? by Anonymous Coward · · Score: 2, Insightful

      So in what way is it different for VMWare? It also is free! And in addition lets you run unmodified kernels.

    2. Re:Say whaa??? by BobPaul · · Score: 1

      VMware player is free, not everything.

    3. Re:Say whaa??? by I_Love_Pocky! · · Score: 1

      VMware server is now free as well.

    4. Re:Say whaa??? by zmoothg · · Score: 1

      BobPaul what is your argument now?

  47. Re:Bullshit by Anonymous Coward · · Score: 1, Informative
    Just because VMware is incompetent and can't implement hardware VT correctly, doesn't mean VT is slower. Try Parallels or Xen to see VT implmented correctly. Vmware has broken VT.

    Do you have any evidence or benchmarks to back that up? Did you read Keith's paper? If there are flaws in the reasoning and testing methodology, please point them out.

    My understanding is that our performance data indicates that in apples-to-apples comparisons (same host OS on the same hardware), VMware-with-binary-translation is faster than Parallels-with-VT for normal workloads.

    And note that I'm not in VMware's performance group, nor do I work on low-level virtualization stuff, so I'm not too familiar with the specific performance metrics. However, I'll add that logically it doesn't make sense for VMware to put its head in the sand by biasing any of its internal performance comparisons: if we were doing worse, we'd be quite upset about it and would be working really hard to correct it any such performance anomaly.

  48. really by m874t232 · · Score: 1

    Most virtualization is for servers or Linux desktops, and they don't require more than virtual disks and networks, plus minimal console emulation; all that code already exists in open source form.

    VMware's big thing was a JIT-like x86 engine, a complex piece of software that is now not needed anymore. That really is a big deal.

  49. Combination HW/SW better yet by Eric+Smith · · Score: 1

    There's no reason that a system using hardware virtualization (which still requires a lot of software anyhow) can't employ the same sort of code modifications used by all-software virtualization. But the all-software approach must scan ALL code before it is executed, to find the trouble spots, while the hardware-software combo can simply wait for a trap, then modify the code that cause the trap.

  50. Stupid humans!! by Lactoso · · Score: 1

    Xenu can NOT be defeated!! What? Oh, okay, never mind.

  51. This seems so familar!! by _DangerousDwarf · · Score: 1

    A long time ago, with hardware far far from here, I remember playing games with my brand new 3D card, and wow the games looked nice! The only problem was that the games ran slower then they did in software!!! Lesson learned, don't buy first generation hardware and expect it to always be better/faster/cooler then old optimized software! Either that or don't by S3 Virge based cards! ;)

  52. Copycat OSNEWS with the same story by anand78 · · Score: 1

    OSNEWS repeated the same story about virtualization, which I pointed out in the post only to be suspended from posting any more comments.

  53. The isPrime function in the parent post by Browzer · · Score: 1

    is lifted from Sec. 3.2 of the article http://www.vmware.com/pdf/asplos235_adams.pdf in the story, and yes, it is very inefficient... that is why is titled "How NOT to write an isPrime function"

  54. Totally off-topic - the .sig by empaler · · Score: 1

    Donnie, have you been sleepwalking again?

  55. Random Usage by TravisWatkins · · Score: 1

    I was using Parallels on Linux on my Core Duo laptop and it was _fast_. I was very impressed. Then I tried vmware-server on the same machine and it ran just as fast if not faster. Later on I discovered vmware-server was actually not even using Intel's VT instructions, it was being done in software. Something to think about.

    --

    "But I'm still right here, giving blood and keeping faith. And I'm still right here."
  56. OS-level virtualization by ovz_kir · · Score: 1

    Well, OS-level virtualization should have the best possible performance, leaving all the others behind. It's purely from the theory -- less overhead means better performance.

    From the other side, speaking of testing practice, all tests are very error-prone. By tweaking some parameters here and there you can improve performance by, say, 10%, or make it fall behind. The bottom line is: do not ever trust the tests, do your own (and expect to spend a few months doing that).

    --
    -- Kir Kolyshkin, OpenVZ project leader.
  57. Doesn't anyone have a clue? by BlueCoder · · Score: 1

    You just have to read the paper and it spells it out. Other than VMWARE making a hybrid software/hardware mode it's not going to get any faster. Every time there is data recieved or sent there is an expensive context switch for hardware VM. So databases, web servers, and file servers will waste more cycles virtualized than compared to Seti or Folding programs. Clicking your heals together is not going to change the result. This is first generation virtualization results. How many SSE amd MMX revisions have there been?

    The good news is now windows CAN be virtulized in hardware. The bad news is it's slow. This means that no one is going to go through the trouble of reinventing VMWARE's software virtualization for open source when a hardware VM is so much easier to create. VMWARE is still relevent if you want a little edge on performance and are willing to pay for it.

    With unix easily being paravirtualized you have to wonder when MS is going to release a vitualized edition of windows of their own. It would probably only need a new new HAL (hardware abstraction layer) library.

  58. Re:Hybrid? Good + Bad = Better? by Calinous · · Score: 1

    Let's say you have a boat with a 393 or a 484 horsepower engine. When you install both of them, the boat will sink

  59. someones got to say it ... by Anonymous Coward · · Score: 0

    i soooo don't care for virtualisation (unless it
    involves a girl on a bike :P ), but for one promising
    point: "clustering".
    why can't virtualisation help me encode to mp4 faster
    or compile faster when i have more then one computer in
    my network? if it can virtualise that os what-not, why not
    use it for suemthing usefull? can't it calculate across all
    my "mostly" idle computers then?

    "there goes another million dollar idea(tm)" *sigh*

  60. That's fine, except... by thepustule · · Score: 1

    I'm surprised VMWare would be saying this. Have you ever tried their products? Testing of their VMWare Server so far is very disappointing, especially with the networking performance. Their support forum is crowded with complaints about abysmal network performance, with no concrete response from VMWare or any solution.

    1. Re:That's fine, except... by Anonymous Coward · · Score: 0

      i'm more than fed up tweaking the settings on the new vmware ws trying to run win2k pro on ubuntu. darn it, it's just so slow it won't even come close to qemu even without the accelerator. now, if only qemu supports a larger screen resolution...

  61. Larger than which? by phorm · · Score: 1

    I've got mine up to 1024x768 with the emulated Cirrus Login, and with the newer versions the VBE emulation should let you get a lot higher:


    From the qemu Documentation

    If you are using Windows XP as guest OS and if you want to use high resolution modes which the Cirrus Logic BIOS does not support (i.e. >= 1280x1024x16), then you should use the VESA VBE virtual graphic card (option `-std-vga').

  62. Vmware are right (mostly) by VisiK7 · · Score: 1

    here some tests conduct by myself
    parallels workstation 2.1 build 1670 (has vt support)
    vmware workstation 5.5.1 build 19175 (hasn't vt support)

    starting vm
    vmware: 5.38
    parallels: 1.88

    booting etch install iso
    vmware: 14.89
    parallels: 6.55

    installing etch (not considering interaction)
    vmware: 122.56
    parallels: 179.18

    booting installed sys
    vmware: 23.46
    parallels: 13.73

    apt-get install vim build-essential (no download)
    vmware: 33.78
    parallels: 16.54

    tar -jxf linux-2.6.17.9.tar.bz2
    vmware: 55.34
    parallels: 30.73

    make bzImage
    vmware: 356.28
    parallels: 557.92

    make modules
    vmware: 2037.24
    parallels: 3358.03

    the guest os is kubuntu 6.06 with kernel 686 (smp support)
    hardware is a centrino core duo with VT support 1gb of ram
    512 on each virtual machine, all at 32bit.

    --
    ptrace(), do_brk(), do_mremap() or do_mremap()again? (maybe a new pool)
  63. Re:Hybrid? Good + Bad = Better? by octopus72 · · Score: 1

    HW virtualisation is about running the unmodified OS on top of other operating system.
    SW approach (paravirtualisation) is about modifying the guest (and somewhat host) OS to be simpler to virtualise it, get better performance by chopping out unnecessary operations on guest OS and optimise it to specifically use certain host API for even better performance gains.

    Of course, HW virtualisation speed depends mostly on what hardware can do. AMD is ahead currently (and their boards will even support IOMMU for simpler PCI access control). It's certain that performance will improve with next-gen hardware, especially Intel. In the meantime it would make sense to support both methods for best performance - i.e. use hardware stuff where useful (e.g. for transparent page handling between OS's) and still modify guest OS not to do costly stuff which will be trapped and emulated in VMM (in fact maybe VMM will give performance improvement even with a single OS kernel).

    In the long term, we can expect virtualisation to come to desktop - sharing of video, sound and input devices will allow people to simultaneously run linux and windows, somewhat lowering the barrier for linux adopters (i.e. users will be able to launch windows to use their killer app or game without rebooting).