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/
Home Products Support Community News


[Xen-devel] Perfctr-Xen framework for performance analysis

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Perfctr-Xen framework for performance analysis
From: Ruslan Nikolaev <nruslan_devel@xxxxxxxxx>
Date: Thu, 19 May 2011 13:18:02 -0700 (PDT)
Delivery-date: Thu, 19 May 2011 13:19:47 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1305836282; bh=1BNeUKmGkv4varcNnnuv37wtw6gtmQeaC1IEuFbMgYU=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=MEvB+Y1TeMhK0SAXWYKaiz2QFjbpO36ofOckCdFM8rlUUcZBf3bJKX8sEO6TMPntIydE04QFtZruFZ7D6oZ1mPcscVq253OTvhgyKt2e3KerRX4LGimt6aqSl+BkCXUa+Bzc4FlyodkoDXzvlkBMEwCwXiZhQ2w2V4tM+Wvabqc=
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=bewvp/wdz6+5iT2jIBhjYryHbqXKlnuvH2+NgRbDxOaN4PzWmcQo8h5XCeZ9nX8vUIsYGO3aCNZtEeIlqGPyxavybKRjwEfrRvHTv7MhPTSct2GZ24x/+VUIKQfV18GxEH/yWOK6vSSXdrl+uRs0pQ7bEM0oLtY/E/by7+QcO8g=;
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Regarding Perfctr-Xen (see announcement below), some have requested author's 
version of the published paper. It is available on my website:


Please, let me know what you think.

Also, I want to iterate my point regarding Perfctr-Xen vs XenoProf: XenoProf is 
useful but has a number of limitations such as system-wide monitoring only. 
Perfctr-Xen addresses those issues (as described in the paper), and enables 
profiling functionality similar to XenoProf/Oprofile via higher level software 
such as HPCToolkit which were shown to work. Perhaps, someone can add support 
for OProfile, so that it can work via Perfctr-Xen, however, as of now, no such 
support is available. Similarly, Xenoprof has no support for HPCToolkit, PAPI, 
etc. because it was designed for OProfile. For this reason, Perfctr-Xen and 
Xenoprof provide quite orthogonal solutions to the performance monitoring 

The original Perfctr-Xen announcement:

I want to make an announcement about new performance monitoring framework.
Perfctr-Xen framework that enables per-thread performance analysis in Xen. 
Current version is capable of properly virtualizing counters in both 
paravirtualized and HVM modes. It is based on perfctr (which is a library and 
kernel module for non-virtualized guests), ported to Xen, and extended to work 
properly in virtualized environment. Both accumulative and interrupt modes 
counting (profiling)
are supported.

The advantage of Perfctr-Xen is that it does not require specific HVM 
extensions which are needed for vpmu driver, can work in paravirtualized mode, 
and it also quite universal: works with many common tools such as PAPI, 
HPCToolkit, TAU PerfExplorer. It supports proper per-domain and per-thread 
virtualization. It is light-weight, supports wide range of CPUs, does not 
require save-and-restore for accumulative mode of counting (it uses counter 
offsetting), avoids expensive hypercalls and counter re-programming in certain 
circumstances (when threads are counting the same
type of events). In addition, some techniques are employed to account for the 
overhead caused by the framework itself. This makes measurements quite accurate.

Perfctr-Xen consists of series of patches that need to
be applied to Xen, Linux, perfctr. They are available at:

The code is available under LGPL. It would be great to
discuss if and how it can be integrated into Xen
Ruslan Nikolaev

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] Perfctr-Xen framework for performance analysis, Ruslan Nikolaev <=