[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] unconditionally enable the trace buffer
Ian Pratt wrote: Just as an aside I'm not sure this matters: From what Rob's told me, having the (inline) trace() calls in there produces the same overhead whether tracing is active or not. I guess it makes sense; once you've incurred the overhead of having the function there and evaluating the "is tracing on" conditional, you might as well have stored a few values also ;-)* ability to turn on/off via hypercallNot currently implemented, but would not be difficult to add.We could cache miss on reading the tracebuffer producer counter and tracebuffer base address, so its not totally a done deal. I don't have a big worry about performance, but I'd feel more comfortable to see a more realistic assesment of overhead. Comparing results from ttcp in a domU with 128k sock buf and the MTU set to 552 bytes should do it. I just completed some benchmarks using ttcp as Ian suggests. I was surprised by the results, but essentially, Ian's intuition n this case may be right on the money. I tested three cases: 1. trace buffers turned off, that is not compiled in 2. trace buffers compiled in and turned on 3. trace buffers compiled in but disabledCases 1 and 3 show no performance difference at all, but case 2 does show a non-trivial degradation. Details of the benchmarking: ttcp using 128k buffers to send data to a domU from another machine using a gigabit network. 2gb were transferred in each run, and 10 runs were performed for each case. Dom0 and domU together used up just about all of a cpu, and experienced 2000-2500 context switches per second to handle 40-50,000 I/O's per second. Please note that the additional trace events for XenMon were enabled in this system (case 2) so each of those 50,000 I/O's each second generates a trace record! I conclude the following from this:- there is no penalty for simply having the trace buffer code compiled into xen - there is a penalty for enabling tracing- therefore, the ability to turn tracing on/off via a hypercall is definitely important Rob _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |