Crashing or slowness? Maybe this is why...

Discussion in 'Parallels Desktop for Mac' started by andrep, Mar 30, 2007.

  1. andrep

    andrep

    Messages:
    6
    I've been experiencing extremely slow performance with Parallels in the past month or two (as in, it takes up to six minutes to launch a virtual machine), as well as lots of other oddities. For example, if Parallels is running (even if no virtual machine is running), Safari would refuse to create a new window. After a few weeks of puzzlement, I finally found out why.

    Here is a link to a screenshot of Activity Monitor running when Parallels is not running. (It's too big to attach here, sorry.) The thing to note is that WindowServer is using around 57MB of memory.

    Here's a screenshot of Activity Monitor when Parallels is running with no virtual machine active: WindowServer memory usage increases by over 300MB to 376MB.

    Then, I launched Quartz Debug and checked out the invaluable Window List feature. I was a little surprised as to how many windows Parallels was allocating: there were around 50 windows of size 1279x639. With double buffering and 32bpp, Parallels is bringing the Mac OS X WindowServer process to its absolute knees, and was paging out to well over 1GB of disk space running a 320MB Windows XP VM, even though I have 2GB of main system RAM.

    I'm guessing this is because of (1) having a 30" LCD monitor as my primary display, and (2) something to do with coherence support in Parallels. I think this explains a lot of the coherence bugs, dual-display bugs, and general instability and slowness that a lot of people are seeing with Parallels. What on Earth is it doing allocating nearly 50 windows?

    If other people want to see whether Parallels is being equally silly on their system:

    1. install the Xcode Developer Tools,
    2. run the Quartz Debug utility in /Developer/Applications/Performance Tools/, and
    3. go to the Tools menu -> Show Window List.

    People with large resolutions (24" or 30" monitors) will probably suffer from this the most. I'll do a bit more investigating and report back if I find anything, but I haven't seen anything of this nature reported on the forums yet, so I thought I'd post something now. It makes Parallels pretty much unusable for me.
     
  2. Eru Ithildur

    Eru Ithildur

    Messages:
    1,966
    WOAH!!! Good find. I'll be testing that when I get into my office.
     
  3. joem

    joem

    Messages:
    1,252
    I don't have any problems, but I don't use coherence. I think it's a bad idea, and I suspect that many of the problems people complain about here would go away if they hadn't bothered with it. It's nothing but appearance anyway, and it's buggy (apparently) so why bother. Just turn it off and Parallels will work fine.
     
  4. andrep

    andrep

    Messages:
    6
    The big problem is that Parallels allocates those 50 windows even when you're not using Coherence. The screen capture of the Quartz Debug window list is when there is no virtual machine running at all. If I'm using something as crazy as Coherence mode, OK, I can kinda live with crazy WindowServer tricks and perhaps 50 windows, even if it's still evil and causes major system instability.

    What I do not expect is that Parallels allocates 50 buffered windows when no VM is running at all, or when I'm just running the guest OS in windowed or full-screen mode. WindowServer is so stressed that I can't even open a new window or resize other windows properly. You cannot disable Coherence completely; you can opt to not use it, but it seems that Parallels may still be allocating the windows and resources required for Coherence mode even if you're not using it.

    Plus, if you run Quartz Debug, you'll notice that Parallels allocates another 50 windows of 1x1 size. While this is causes less of a problem, it's arguably still quite bad. I'm wondering if this is just an oversight on the part of the Parallels engineering team, or whether they needed to do this as a hack to fix something else.

    In any case, 50 windows of size >1000x500 is unacceptable. Running Parallels should not result in Safari not being able to open a new window.
     
    Last edited: Mar 30, 2007
  5. andrep

    andrep

    Messages:
    6
    This is related to screen size

    I've also found that this problem is also related to screen size. Those of you with large screens (24" or 30") will suffer worst from this. If I go back to only using the 1440x900 MacBook Pro screen, Parallels still allocates 50 windows, but at least they're a bit smaller, so the WindowServer memory usage drops a bit. (And the rest of my system still sometimes slows down massively.)

    I can't be the only one affected by this bug. I'd recommend that if you're having any weird problems with Parallels at all, install the Xcode Developer Tools, run Quartz Debug, and confirm that your window list output is as nasty as mine. Run Activity Monitor and verify that WindowServer is using hundreds of megabytes of memory. The more confirmations we have about this, the higher priority Parallels will place on fixing it.
     
  6. joem

    joem

    Messages:
    1,252
    Oh my, look at all those windows. I can confirm it happens on my MBP. Wonder why they do that.
     
  7. whytyger

    whytyger

    Messages:
    55
    I haven't loaded the developer tools yet; but I can confirm that running Parallels without coherence on one of my two 24" monitors on my Mac Pro causes window server memory usage to increase from a resting level of 119 MB to 199 MB--a 2/3 increase. Plus, its virtual memory usage increases from less than 1 GB to a full 2 GB. I suspect that it's all them little windows being enabled. This doesn't slow down my OSX performance very much, perhaps because I have 6 GB of RAM installed. But it is alarming.

    For comparison, with Parallels suspended, the window server memory use is still increased to 189 MB, or 58%. However, if I launch Fusion with Parallels still suspended, ws memory usage actually drops by 6%!
     
  8. whytyger

    whytyger

    Messages:
    55
    Update

    OK, I got Quartz Debug; found 85 windows open! This is with Parallels running with Coherence inactive, and with no applications open. Whew!
     
  9. andrep

    andrep

    Messages:
    6
    I just verified that this happens in a MacBook as well as my MacBook Pro: WindowServer usage shot up to ~120MB from about 30MB. Quartz Debug reported a similar high number of Parallels Desktop windows open.
     
  10. ghaz

    ghaz

    Messages:
    2
    I also have had frequent unexpected quits and the window manager grind to a halt. I have dual screens (one 24" one 20") and this is probably part of the problem.

    Here's something to try. Switch your monitors to mirroring (or disconnect second third monitors) and switch the main monitor to 640x480. THEN start parallels. Then switch back to your preferred resolution and connect the other monitors. Try it out, windowserver still has a whole bunch of much smaller windows than when you start parallels at the larger resolution, so hopefully this issue will rear its ugly head less and you won't have to slum it with single monitors or low resolutions.

    Let me know how it goes.

    Hopefully parallels will fix these bugs soon .......................
     
  11. unused_user_name

    unused_user_name

    Messages:
    500
    I can also confirm a huge number of windows for Parallels.

    I wonder why they are doing this? Any Parallels devels of Quartz devels want to chime in as to why they might need to do this?
     
  12. dkp

    dkp

    Messages:
    1,412
    I see only four when running Fusion. The Parallels allocation seems a bit messy to say the least.
     
  13. Eru Ithildur

    Eru Ithildur

    Messages:
    1,966
    Yep. I have a bunch on my production machines too.
     
  14. ricardo

    ricardo

    Messages:
    23
    Great find, I can confirm the hideous results. Tested it on VMWare fusion and got only four windows, only one of the full size.

    Absurd.
     
  15. whytyger

    whytyger

    Messages:
    55
    To Parallels team

    Could we please here from you on this matter? It is of some general concern. Not asking for anything proprietary of course.
     
  16. STim

    STim Parallels Team

    Messages:
    945
    I remember it was thoroughly discussed somewhere last autumn. I can't find exact thread, but here are some extracts:

    1. Parallels Desktop is QT-based application. For QT-based applications it is normal - it's just the way QT represents windows layouts. And, the more different controls the application has - the more windows you will see in Quartz Debug. You may check some other QT-based application (say, Google Earth) to see similar results.

    2. MacOS window server handles a lot bigger amounts of windows just fine. Here internally we were launching dozens of Parallels Desktops on the same machine and saw no unexpected behaviors.

    So, the reasons for instability is not the amount of windows, it is somewhere else. I'd be happy to discuss and debug the stability problem with someone having a bit of free time to experiment. Please contact me via PM.
     
  17. ggscott

    ggscott

    Messages:
    1
    I can confirm the same findings - this is with my MBP 3Gb ram - windowserver grows to 2Gb of VM (and more if I let it... but by that time I need to reboot)
     
  18. hmathias

    hmathias

    Messages:
    5
    Ever since upgrading to Paralells Build 3188, I can't run a QuickBooks for windows session without crashing on any database saves, or intensive I/O functions wiith a 20 in monitor and 3gigs of ram on a MBP 2.33 Before it worked fine and I don't have any database corruption (I verifierd that). I came here looking for answers to my measurable memory leaks (using Activity Monitor) and this is all that I could find as an explaination.


    Harry
     
  19. theirongiant

    theirongiant

    Messages:
    10
    Yes, this is the same problem I am having. I noticed the slowdown for my system when running Parallels on an Intel iMac CoreDuo 2.0GHz. My computer's primary symptoms were an inability to display new windows, Dock icons appearing jaggy, aliased, and some context menus don't appear (like alt-clicking a Dock icon).

    According to Activity Monitor, the process WindowServer was eating up 3.6GB of Virtual RAM and consuming 99% CPU time on one core, and half the cpu time on the other core.
     
  20. noed

    noed

    Messages:
    3
    Never had the/a problem with Parallels running 2.5. Upgrading to 3.0 set of an avalanche of troubles. Beginning with troubles finding the right resolution on my external monitor (from time to time both my MB screen and external monitor keep flashing a blue screen only to be stopped by forcee quitting Parallels), not being able to run Parallels full screen on the MB (again - only force quiitting puts an end to the misery) and so on. But the worst thing is, that Parallels dashes the OS X performance to pieces. WindowServer is (when Parallels is running) constantly using aournd 100 MB of physical and 3.3 GB (!!!) of virtual memory. Everything done in OS X is done with a lag of about a second (eg activating the dock: first the name of the app and thee specific position in the dock appears and only afer about a second the dock pops ups).

    Though I was a very happy customer (Vers. 2.5) I am currently a more than disappointed user and if these matters are not fixed shortly I will have to consider switchinig to VM Ware.

    Regards,
    Noed
     

Share This Page