On Thu, Sep 29, 2005 at 03:28:26PM +0300, Boris Zingerman wrote: > Yedidyah Bar-David wrote: > > >On Thu, Sep 29, 2005 at 11:37:34AM +0300, Boris Zingerman wrote: > > > > > >>Hi list > >> > >>I'm runnig XP SP2 under vmware-5 on my linux > >>box ( RH9 kernel 2.4.28 ) and I see that vmware-wx > >>constantly uses 15-20% of CPU even when no application > >>is open in XP. But what is more interesting is that top always > >>reports this process (vmware-wx) as sleeping. How sleeping > >>process can constantly waste CPU? If it is just an artifact of > >>sampling that is done by top then statistically I should sometimes > >>see it in running state. > >> > >> > > > >Did you try to strace it? Did you try 'top -i -d 0'? > > > > > Well I straced it and it seems that it performs > polling (with timeout 10msec ) on a bunch of
Then I guess that's the reason. Can you try to time(1) it? E.g. time vmware boot your os etc, wait idle for a few minutes, shutdown then see how much cpu time was spend in user and in kernel. I guess both the polling itself (in user mode) and especially maybe the vm devices might use time for some reason. Maybe someone who knows can answer this: If a process does a system call (e.g. read) and the relevant driver needs a lot of cpu time, what state will the process be in? I can't think of an easy way to check this because most drivers try to use as little cpu time as possible. And I am too lazy to try and write a driver just to test this. Did you check their documentation? Do they claim you should see the machine idle if the virtual machine is idle? One more thing: Try the above time with both the BIOS's setup program waiting idle for a few minutes and with linux in single user mode. If you see significant differences it means Windows uses a lot of cpu time doing nothing. Did task manager inside it show the virtual machine is idle? -- Didi ================================================================= To unsubscribe, send mail to [EMAIL PROTECTED] with the word "unsubscribe" in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]
