VMware Communities
mykmelez
Enthusiast
Enthusiast
Jump to solution

performance problem w/shared folder in Windows 7 guest

I recently started using a Windows 7 guest again after a hiatus of about nine months, during which time I upgraded Fusion from 4.1.1 to 4.1.2, upgraded Mac OS X from 10.6 to 10.7, and increased the size of the guest's virtual hard drive from 30GB to 45GB.

I'm now seeing significantly worse performance of a shared folder I use to build a software project (Firefox). Previously, performance was more or less on par with building from an unshared folder, but now it takes significantly longer.

Building from an unshared folder takes about 90 minutes, while building from a shared folder takes about 660 minutes (11 hours).

My Mac OS X host and Windows 7 guest OSes are both fully updated to their latest versions. The host is a mid-2010 MacBook Pro with one 2.66GHz Intel Core i7 processor and 8GB RAM, while the guest is configured to use two processor cores and 2GB RAM.

I tried updating Fusion to 4.1.3. I also tried cleaning up the guest from the General tab of its settings. And I tried copying the guest package (telling Fusion I had done so when it prompted me on firstrun of the copy). But none of those steps had any effect.

Any idea what might be causing this problem?

Note that an Ubuntu 11.10 guest with one processor core and 2GB RAM built Firefox today in about 85 minutes from an unshared folder and 100 minutes from a shared folder. All these times are imprecise, since I do work in the host while compiling in the guests. But Windows 7 from a shared folder is still a clear outlier.

Reply
0 Kudos
1 Solution

Accepted Solutions
wila
Immortal
Immortal
Jump to solution

Hi Myk,

I think Steve Goddard's reply down here in this thread is the answer you are looking for (and not hoping to hear)

http://communities.vmware.com/thread/397865?tstart=0

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva

View solution in original post

Reply
0 Kudos
14 Replies
ColoradoMarmot
Champion
Champion
Jump to solution

A few thoughts:

1) Try it with 1-core for the guest

2) Disable antivirus in the guest (temporarily)

3) Try using an SMB share rather than the fusion shared folders

Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

Ok, I disabled Microsoft Security Essentials' "real-time protection" feature, and I configured the guest to use a single core. Then I kicked off a build from a shared folder, and it took 567 minutes, which is probably within the margin of error, given that the build mostly happened yesterday evening, when I was away from the machine and thus not loading the host.

I suppose I could try working around the problem via an SMB share, but I'd much rather resolve this performance issue with shared folders, which are easier to configure and use.

Reply
0 Kudos
ColoradoMarmot
Champion
Champion
Jump to solution

No disagreement, but shared folders have always had, well, not great performance (sorry Fusion team).  I'm not sure what the overhead is, but my experience has been that it's pretty significant.  For certain things I actually just plug in a USB disk and attach it directly to the VM.

There were a couple of long threads about this issue over the past couple of years, but I don't know that there was any real resolution.

Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

It may be true that shared folders have always had a significant performance overhead, but that's unrelated to the issue I'm reporting here, which is about a specific case of extremely poor performance, way above and beyond any general overhead. This problem did not exist the last time I used the Windows 7 guest regularly (with older versions of Fusion and Mac OS X). And it doesn't exist on my Ubuntu 11.10 guest, which also uses shared folders.

I do appreciate the input and advice! But let's keep this discussion focused on the specific issue I am reporting, not the general issue of shared folder performance.

Reply
0 Kudos
wila
Immortal
Immortal
Jump to solution

Hi,

With your guest shut down and Fusion closed, try adding the following option to your vmx file.

isolation.tools.hgfs.notify.enable = "FALSE"

From what I understand on what it does is that it stops polling the HGFS share all the time on checking if a file / folder contents in the share has changed.

If that doesn't help then make sure that you do not have any current disconnected shares available.

Also make sure that you do not have a CDrom connected in your guest OS (virtual or physical)

I have seen what you are complaining about and do see it every now and then still, usually with me ending up killing either Windows Explorer or a "svchost -k secsvc" process because my patience runs out.  But the above notes did help me to alleviate the problem so that I'm not running into it constantly.

PS: Also saw someone on the forum here explain that for him the problem resolved when he removed the "Pass power status to VM" checkbox in his virtual hardware, but that seems a bit far fetched. I have not tested that one yet myself, I'm just adding it as a comment that I read about.

hope this helps,

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
ColoradoMarmot
Champion
Champion
Jump to solution

I suspect it's the same issue, but amplified because your build access hundreds (thousands?) of individual files.  There seems to be an initial overhead per-file - in other words, it's faster to read/write 1GB in 1 file than 1GB in 1000 files.

I didn't see the part that this is a new issue before - what version of Fusion worked properly?

Reply
0 Kudos
d_olson
VMware Employee
VMware Employee
Jump to solution

I was running the Fusion tech preview (which updated moments ago). My Windows 7 guest was a Boot Camp volume and I noticed the same problem. I did more than one thing before it resolved (disabled some services not needed when running virtual, disabled Workstation networks etc). What I thought resolved it is that I changed the NIC driver from e1000 to vmxnet3. I shutdown the VM, edited the vmx file and booted it up and the problem was gone.

Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

Hi Wil,

Thanks for the suggestions! I tried setting isolation.tools.hgfs.notify.enable to false and unchecking "Pass power status to VM", but unfortunately neither change solved the problem. I don't have any disconnected shares nor a CDROM connected.

-myk

Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

Here are some numbers that demonstrate the performance problem. They show the time it takes to copy a 300K file from a shared folder vs. the virtual hard drive. I'm not sure how representative they are, but they do show a significant difference in the performance of a shared folder on my Windows 7 guest and no difference on Ubuntu.

Windows 7 Guest:

myk@WIN-4SUQ9RPFJTK ~
$ time cat ~/Mozilla/central/configure.in > ~/foo

real    0m0.016s
user    0m0.000s
sys     0m0.015s

myk@WIN-4SUQ9RPFJTK ~
$ time cat /z/myk/Mozilla/central/configure.in > ~/foo

real    0m0.062s
user    0m0.000s
sys     0m0.062s

Ubuntu Guest:

myk@ubuntu:~$ time cat ~/Mozilla/central/configure.in > ~/foo

real    0m0.005s
user    0m0.000s
sys    0m0.000s

myk@ubuntu:~$ time cat /mnt/hgfs/myk/Mozilla/central/configure.in > ~/foo

real    0m0.005s
user    0m0.000s
sys    0m0.000s

Note: I ran each command several times before taking its measurement to reduce noise caused by variations in caching.

-myk

Reply
0 Kudos
wila
Immortal
Immortal
Jump to solution

Sorry to hear that. I had good hopes on the  "hgfs.notify" vmx setting. It helps me, but sometimes I still have performance issues on my HGFS shares, so am still looking for a better fix.

The suggestion from d_olson sounds interesting, but I've not had time myself to test that.

I do notice however that a new Windows 7 guest is still created with an e1000 adapter and not a vmxnet3 one.

Frankly I would only expect that driver to make a difference for vSphere, but it won't hurt to give it a try.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

Thanks for the tip! I tried this, and Windows configured the new network driver (which works fine). But it didn't affect the performance of my shared folder, unfortunately.

Reply
0 Kudos
wila
Immortal
Immortal
Jump to solution

Hi Myk,

I think Steve Goddard's reply down here in this thread is the answer you are looking for (and not hoping to hear)

http://communities.vmware.com/thread/397865?tstart=0

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
ChipMcK
Hot Shot
Hot Shot
Jump to solution

Reply
0 Kudos
mykmelez
Enthusiast
Enthusiast
Jump to solution

Ah, indeed, thanks for the tip!

Reply
0 Kudos