|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] open/stat64 syscalls run faster on Xen VM than standard Linux
Your questioning makes sense to me. But I am not very sure about how to effectively count how many these operations can be completed in a second. Can you give me some hint?Here's a quick-and-dirty wrapper for timing "something" over the space of a few seconds (default 10) and working out how fast it went. Obviously, you want to be running this on an otherwise-idle machine, and with CPU frequency management disabled. It's really, really dumb, but it only uses "time()", not any subsecond time sourcing, for its work. Stephen,Thanks for prioviding the code. I have one question about the calculation of "how_long" (average time of tested system call in the timeme_dosomething()). In your original code, it is calculated as:
how_long = 1.0 / ((float) (loops_noop - loops_something) / (TIME_SECS));
I think it should be
how_long = (float)TIME_SECS /loops_something -
(float)TIME_SECS/loops_noop;
Plese correct me if I am wrong.
I applied the above modification to your code (I named it Tick.c) and ran the Tick binary on 3
platforms (physical machine, domU with loopback file as VBDs, domU with hard disk partition as
VBDs). I put together the results and discussion in the following PDF doc:
http://people.cs.uchicago.edu/~hai/tmp/tick_performance.pdf
"The average stat64 system call time reported by the corrected tick binary now accords with the time
reported by strace. It runs faster on both PVM and LVM than PHY. The PVM is the platform it runs
fastest."
Thanks. Xuehai
I wonder if this line should be: how_long = (float)TIME_SECS /loops_something - (float)TIME_SECS/loops_noop; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |