19

I do most of my development in VMware Workstation (version 7 at the moment). Unfortunately, on my laptop with 4 GB of RAM, an OCZ Vertex 2 240 GB, and a Core 2 Duo T9550 (2.66 GHz) does things criminally slowly when there's more than one VM running at a time (which given that I've been doing multi-server development lately is most of the time).

I know that there are some processors which (for example) have specific features to make virtualization fast, and I think there are some chipset features which make memory access faster specifically for virtualization workloads, but I'm not positive on either of these, and even if they do exist, I'm not sure they're available on laptops.

Billy ONeal
  • 8,421

7 Answers7

12

I think your problem has more to do with RAM than with CPU. If you can stuff more RAM in your laptop, it will go a long way. A good hypervisor can divide cpu time pretty well, but RAM has to be committed to specific VMs. After you max out RAM, look for more cores (ie: a slower-clocked quad core as opposed to a faster clocked dual core), so that each logical machine (including the host) can have at least one dedicated core. You also asked about a specific technology for better VM support. With the exception of certain netbook-class processors, any processor/motherboard on the market today will support these technologies, so odds are you're already doing everything you can there. However, these options sometimes are disabled by default in the BIOS/UEFI settings, to look there to make sure your virtualization features are actually enabled. Finally, running multiple VMs can sometimes create a lot of IO pressure, so a good SSD or RAID setup can often help considerably.

Joel Coehoorn
  • 28,637
9

Most chips now have virtualization extensions (Intel-VT or AMD-V). From personal experience (VirtualBox), I can tell that some of the features -- especially nested paging -- are very helpful; nested paging, for example, lowers my Ubuntu boot time quite noticeably (from 45 seconds to 15 seconds).
(Edit: Seems like "nested paging" is also called "second-level address translation" or "extended page tables" [EPT].)

It also depends on what your development is. I tried compiling the Chromium source code on a Core i5 (no virtual machines at all, on an actual computer), and 4 GiB of RAM was not enough -- 6 GiB was almost enough, but I still needed ~1 GiB of pagefile to prevent running out of memory. (I normally turn off the page file.) Doing this on a VM was clearly out of the question on my system, mainly because of RAM (but also the CPU). So RAM is very important too, especially with 2 VM's, although it depends on what you're doing.

Another feature that might help is having a true dual-core (or more) laptop, having one VM run on one core and another on another core. I haven't tested the impact of this personally, though, since I usually only run one VM at any time.

user541686
  • 23,629
5

Intel does have a virtualization technology called VT that provides an instruction set tailored specifically towards virtual machines. The Intel ARK has a list of VT capable processors. You'll find quite a few mobile processors there as well as desktop.

jcrawfordor
  • 16,449
2

My current rig: 2nd Generation Core i7 Quad Core, 8GiB of RAM. Mine happens to be MacBook Pro but I'm pretty sure you'd get speedy results regardless of specific make and model. The other day I was successfully running a Debian and Window7 guest simultaneously, and then running XP mode within the Win7 VM.

Core i7 is hyperthreaded, so you wind up with 8 execution units, and 8GiB of RAM seems to be a decent amount of elbow room. However, as others have mentioned, a lot depends on what you're DOING in those VMs. If it's memory intensive, the number-of-cores is not going to be anywhere as important as how much RAM you can cram in and then allocate to the VMs. Swapping is never good; swapping within a VM is absolute death to performance.

So my advice first is to analyze what your real constraing resource is (RAM or CPU); then find a platform that will support that.

0

A powerful Intel Core i5 processor with 8 GB of RAM is recommended if you looking for best laptops for virtualization. Some of these are listed here:- 7 Best Laptops for Virtualization It should support Intel Virtualization Technology also called Intel VT-x

0

First of all, consider your budget! The last 10% improvements will be very expensive.

You need literally tons of memory and a fast disk. Go for a 7200 RPM or even 10000 RPM if traditional harddisk, or a SSD (but these are small). The RAM you do not need, will cache the disk so the more the better.

4 Gb is in my experience only enough for a single VM running if it does anything interesting.

-1

I'm very happy with the performance of VMWare Workstation on my new laptop: a Thinkpad T520 with 8 gigs of RAM and the i7-2720QM, which is a 2.2 GHz hyperthreading quad core.

I was concerned about disk speed. I have an SSD boot drive, but even at 240G, a few VMs would fill it up quickly. So I got a big 7200 RPM drive that I put in the Ultrabay, and I run VMs from there. I'm sure performance would be better if they were on an SSD, but given all the compromises, I'm happy with this setup.