[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] XEN PV Linux performance
At 22:54 +0800 on 30 Jun (1341096874), Zhou Jacky wrote: > I re-post this from Xen-User maillist. > > I found that xen PV linux performance is very poor comparing with native > linux or HVMPV linux in some case such as system call (which will cause > context switch). > Here is a very simple sample: > > double geTime() { > struct timeval t; > gettimeofday(&t, 0); > return (double) t.tv_sec + (double) t.tv_usec / 1000000.0; > } > > int geInc(int sum) { > return sum+1; > } > > int main() { > for (i=0; i<; i++) { > geTime(); > } > > In PV linux guest, It will be 10 times slower than PVHVM linux guest. > While call getInc() 10000000 times, PV guest is a little faster then > HVMPV. gettimeofday() is often a vsyscall on native/HVM linux (i.e. it doesn't actually make a system call), and I'm not sure that's the case on PV. You could try coding up an actual system call (in assembly), or using a libc wrapper that always makes a system call (I think getppid() is a good choice but you should use strace to confirm it's making system calls). > So it seems that PV linux guest has poor performance in context switch case. By context switch people usually mean changing from one process to another, which is not what's happening here. > How can I tune this or if there's any plan fixing this issue? That depends -- what's your actual goal? Do you actually care about gettimeofday() performance or is there some other workload that's running slowly for you? Tim. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |