WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Xenoprof in an HVM domain

To: "Santos, Jose Renato G" <joserenato.santos@xxxxxx>
Subject: Re: [Xen-devel] Xenoprof in an HVM domain
From: "Ray Bryant" <raybry@xxxxxxxxxxxxxxxxx>
Date: Thu, 25 May 2006 13:38:51 -0500
Cc: "Eranian, Stephane" <stephane.eranian@xxxxxx>, Steve Dobbelstein <steved@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 25 May 2006 11:39:29 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <6C21311CEE34E049B74CC0EF339464B96454D5@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <6C21311CEE34E049B74CC0EF339464B96454D5@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.8
On Thursday 25 May 2006 11:44, Santos, Jose Renato G wrote:
>
> I don't think this is how performance counters should be virtualized.
> Virtualizing performance counter should save/restore the values of
> active perf counters on every VCPU/domain context switch. There should
> be no need for such a "xm" command.
>

Agreed, but as a practical matter, reading and writing PMC registers like that 
may be too slow to actually do on every context switch.    Read and write PMC 
can sometimes be quite slow, depending on implementation.

Its the same kind of argument that leads to lazy save and restore of the FPU 
registers.   If it is done on every context switch it is simply too slow.

Of course, hypervisor context switches >>might<< occur less frequently than 
process context switch in a native O/S, but thus far I've not seen evidence 
of this.  :-)

At any rate, if complete virtualization of PMC's is too slow (data required), 
then one could treat them as a system resource and allocate them out to the 
domains as required.   That was all I was suggesting.

> Performance counter virtualization is not currently supported in Xen,
> although it would be nice to have it. With counter virtualization, guest
> domains would be able to profile themselves with un-modified oprofile.
> This would be usefull to enable users to profile their applications on
> Xen guests in the same way they are used to do on vanila linux.
>

My point, exactly.

> The current model supported by Xenoprof is system-wide profiling, where
> counters are used to profile the collection of domains and Xen together.
> This is usefull for Xen developers to optimize Xen and para-virtualized
> kernels running on Xen.
>

Yes.  And it is very helpful in that regard.  Don't get me wrong.  In essence 
I'm really asking how xenoprof would/could/should evolve to better support 
profiling of HVM domains.

> Ideally we would like to have support for both system-wide profiling
> (for Xen developers) and independent guest profiling with perf counter
> virtualization (for Xen users). Adding perf counter virtualization is in
> our to do list. If anybody is interested in working on this please let
> me know.
> We would appreciate any help we could get.
>

I'll put it on my todo list.  :-)

In the meantime, off to get passive domain support working on my latest 
xenbits-unstable tree.

> Thanks
> Renato

Thank you,
-- 
Ray Bryant
AMD Performance Labs                   Austin, Tx
512-602-0038 (o)                 512-507-7807 (c)


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>