From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: Re: trace IDLE VCPU using xenalyze --scatterplot-pcpu? Date: Wed, 27 Mar 2013 10:23:07 +0000 Message-ID: <5152C88B.7060401@eu.citrix.com> References: <1364350532.3343.49.camel@Solace> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1364350532.3343.49.camel@Solace> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Dario Faggioli Cc: "xen-devel@lists.xensource.com" , Sisu Xi List-Id: xen-devel@lists.xenproject.org On 27/03/13 02:15, Dario Faggioli wrote: > On mar, 2013-03-26 at 14:12 -0500, Sisu Xi wrote: >> Hi, All: >> > Hi Sisu! > >> I was following the article here to plot the scheduler execution trace. >> http://blog.xen.org/index.php/2012/09/27/tracing-with-xentrace-and-xenalyze/ >> >> I was able to get the trace and plot it, >> > EhEh, glad it was helpful! :-P > >> however, the trace for IDLE >> VCPU is skipped. This makes it harder to understand the scheduler >> behavior (For example, cap in credit). >> > Mmmm... I think I see what you mean. > >> Does anyone know how to get the data for the IDLE VCPU when using >> xenalyze --scatterplot-pcpu? >> > Well, I double-checked and it is true that, at least here, > --scatterplot-pcpu does not show the vCPUs of the idle domain. One could > probably try to understand when they're scheduled by looking at when > _no_other_ vCPU of any other domain runs on a particular pCPU (and > considering that the idle domain has one vCPU pinned to each pCPU), but > that would be quite unpractical I guess... > > Perhaps you can achieve something similar to what you need by looking > for/plotting the runstate changes for the vCPUs of the idle domain > (i.e., 32767vXX from `xenalyze --scatterplot-runstate') ? > > George, any other ideas? Well, I always intendended xenalyze to be a tool you could modify to add functionality as-needed; more like a library of useful analytical functions than a finished product. --scatterplot-pcpu doesn't show vcpus of the idle domain because I found it extraneous and confusing, so I excluded it: if ( opt.scatterplot_pcpu && next->d->did != IDLE_DOMAIN && next->d->did != DEFAULT_DOMAIN ) { If you just want to make the change locally, you can just take out the one line about the IDLE_DOMAIN. I'd be happy to take a patch to xenalyze to add an option to show the idle domain as well. (Maybe "--with-idle-domain" as a general way to say, 'don't exclude the idle domain from the output'?) -George