VMware Communities
hax0rJimDuggan
Contributor
Contributor

What's the sweet spot (memory-wise) for my Macbook?

I have the last revison Macbook, 2.16 Intel Core 2 Duo, maxed out with 3GB of RAM. I use VMware Fusion for Visual Studio which is pretty hefty on the resources. Can anyone recommend how much RAM I should allocate to my VM? Thanks.

0 Kudos
5 Replies
Technogeezer
Immortal
Immortal

As with all things, it depends. "Sweet spot" is subjective based on what you're trying to do with the guest VM. The goal is to balance what you're doing in the VM and what you're doing with MacOS so that you don't drive the machine into a excessive paging which reduces performance. Things to think about:.

What is the operating system in the guest? You need to have enough memory allocated to the guest to run it efficiently. For example, I wouldn't run XP with less than 512MB and expect it to do anything useful. Vista will be more, in all likelihood.

What applications are you running in the guest? Use any experience with the applications on a physical machine to gauge how much memory you need to run it effectively.

What applications are you going to run in the Mac OS at the same time? You need enough memory to run them efficiently.

Are your MacOS apps all Intel-native, or are there some PowerPC apps? PPC apps require more memory as they need to be run with MacOS's Rosetta technology

How much memory will your guest OS support?

Oh, and with Fusion 1.1.x, you should not configure a guest with 2GB or greater allocated as USB devices accessed from the guest (i.e. USB sticks and hard drives) will experience problems. This might be fixed in Fusion 2.0.

As a rule of thumb, I would have at least 2GB of memory in my Mac when running Fusion. For 2-3GB of physical memory, I would run with no more than around 50 - 60% of that allocated across all simultaneously running guests. If you have a Mac that can handle more than 3GB of memory, you should be able to allocate more to guests (but note the 2GB issue with Fusion 1.1).

- Paul (Technogeezer)
Editor of the Unofficial Fusion Companion Guides
0 Kudos
gbullman
Expert
Expert

You can actually arrive at an appropriate memory allocation using Task Manager in your Guest VM. I would start with 1 Gig allocated to the VM (I have 640 Meg allocated for mine, but I typically run productivity applications only (Outlook, Office, Visio) and sometimes database tools like TOAD. I would expect Visual Studio to be a bit more memory hungry.

Once you have your typical mix of applications running in the guest, bring up Task Manager. You want to make sure your Page File Usage / Commit Charge does not exceed the "physical" memory of the machine. This is true for physical windows PCs or virtual ones. When Commit Charge exceeds the "physical" memory that is when Windows starts doing a lot of swapping, and you'll notice performance dropping off. You probably want to shoot for about 100 to 200 Meg Physical Memory Available on the Performance tab of Task Manager with your working set of applications running.

Given my experience with XP VMs 1 Gig of RAM will probably be about right for you.

Set your Memory preference in the guest to Using memory for Programs as opposed to System Cache in the guest. Fusion & Mac OS do a pretty good job of Disk Caching so the guest doesn't have to.

My experience has been that the VMs perform better than my physical 1.6 Ghz Thinkpad.

0 Kudos
admin
Immortal
Immortal

This is a good tip, and I added a link from .

For a more complete answer, determining how much RAM the guest wants is only part of the story - also important is figuring out how much the host has to spare (you might determine that the guest would be really happy with 6 GB, but that doesn't help if you only have 2 GB). You can follow a similar procedure on the host: Without Fusion running, open the programs you normally use. With Activity Monitor, check Free/Wired/Active/Inactive. Inactive includes disk cache, so you can count some of that as available - this plus the free memory should give you an idea of how much room you have for Fusion (also remember that Fusion needs more RAM than just what you allocate to the guest - if you have 3D acceleration enabled, for example, that's an additional 128 MB right there, plus whatever the UI needs).

0 Kudos
alecC
Contributor
Contributor

Is it better to turn off virtual memory in the virtual machine? It seems to me that increasing the memory allocation in VMware and turning off Windows virtual memory will allow VMware to handle the swap files in an optimized fashion (rather than doing swaps in two locations - OS X and Windows).

I've been running WMWare Fusion 2.0 on my MacBook with 4GB of RAM. I've set my Vista virtual machine to 2.5 GB of RAM, and it seems to be doing well. Mac OS X says it has 500 MB of inactive memory and Vista is happily running SQL Server and Visual Studio with 50% memory free.

Yes/no?

Alec

0 Kudos
hman63
Contributor
Contributor

Thanks for the post. This was very helpful. Unfortunately, I just got my MBP prior to the latest version, and I'm limited to 4G of mem. I currently have the 4G, but it is ddr2 667 and I understand I can go to ddr3 1066. Would I get that much of a performance increase by doing this?

0 Kudos