From mboxrd@z Thu Jan 1 00:00:00 1970 From: Naresh Rapolu Subject: Re: [PATCH 0 of 5] Add credit2 scheduler (EXPERIMENTAL) Date: Thu, 15 Apr 2010 14:57:59 -0400 Message-ID: <4BC761B7.3020008@purdue.edu> References: <4BC664E1.7090304@purdue.edu> <4BC71A63.90302@eu.citrix.com> <4BC742C9.7060100@purdue.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Dulloor Cc: George Dunlap , "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org Hello Dulloor, Thank you so much for sharing this patch !! Jeremy and I feel that "perf" support is needed in Xen for thorough (per-process, per-vpcu) profiling, not just statistical profiling by Oprofile. Now that I have this latest Xenoprof patch, I will try to stick to its design and see how "perf" linux subsystem can use xenoprof hypercall interfaces. Will keep updating you on this regularly. Thanks, Naresh Rapolu, PhD student, Computer Science, Purdue University. Dulloor wrote: > Naresh, > > If you are interested only in profiling, you could use xenoprof too. > I had ported xenoprof to pvops (attaching a patch that applies cleanly > to linux pvops). I have used this with passive profiling and for > profiling xen/dom0. This patch also includes an obvious fix (over > oprofile branch in Jeremy's repo) for active profiling, although I > didn't get a chance to test. > > Please let know if you try this and if you face any issues. > > thanks > dulloor > > On Thu, Apr 15, 2010 at 12:46 PM, Naresh Rapolu wrote: > >> Hello George, >> >> I am trying to get linux "perf" tool work with Xen(Virtualize PMU to measure >> hardware events from inside guests). >> I have the following options : >> >> 1. allowing the guest kernel to see the PMU hardware features via >> cpuid, and then doing whatever is necessary to make them work as >> expected (by instruction emulation, etc), or >> 2. keeping them hidden, but adding a new Xen interface and the >> appropriate Linux-side code to detect that interface and use it >> >> >> Does Xenalyze have any code relevant to this ? Can you think of any >> directions in this regard ? >> >> Thanks, >> Naresh Rapolu. >> >> >> George Dunlap wrote: >> >>> I have not measured cache / TLB misses with this workload yet. In the >>> past I've instrumented the scheduler trace records in Xen to include >>> performance counters such as instructions executed and cache / tlb misses, >>> and then used xenalyze (http://xenbits.xensource.com/ext/xenalyze.hg) to >>> analyze them. But the functionality for both capture and analysis was never >>> standardized or added to mainline. >>> >>> I'd be happy to help point you in the right direction if you're interested >>> in investing in that approach. :-) >>> >>> -George >>> >>> Naresh Rapolu wrote: >>> >>>> Hello George, >>>> >>>> How did you measure Cache/ TLB misses etc while using/profiling this new >>>> scheduler ? Any tool that you`ve used which works with Xen ? >>>> >>>> Thanks, >>>> Naresh Rapolu. >>>> PhD Student, Computer Science, >>>> Purdue University. >>>> >>>> George Dunlap wrote: >>>> >>>> >>>>> This patch series introduces the credit2 scheduler. The first two >>>>> patches >>>>> introduce changes necessary to allow the credit2 shared runqueue >>>>> functionality >>>>> to work properly; the last two implement the functionality itself. >>>>> >>>>> The scheduler is still in the experimental phase. There's lots of >>>>> opportunity to contribute with independent lines of development; email >>>>> George Dunlap or check out the wiki page >>>>> http://wiki.xensource.com/xenwiki/Credit2_Scheduler_Development for >>>>> ideas >>>>> and status updates. >>>>> >>>>> 19 files changed, 1453 insertions(+), 21 deletions(-) >>>>> tools/libxc/Makefile | 1 >>>>> tools/libxc/xc_csched2.c | 50 + >>>>> tools/libxc/xenctrl.h | 8 >>>>> tools/python/xen/lowlevel/xc/xc.c | 58 + >>>>> tools/python/xen/xend/XendAPI.py | 3 >>>>> tools/python/xen/xend/XendDomain.py | 54 + >>>>> tools/python/xen/xend/XendDomainInfo.py | 4 >>>>> tools/python/xen/xend/XendNode.py | 4 >>>>> tools/python/xen/xend/XendVMMetrics.py | 1 >>>>> tools/python/xen/xend/server/SrvDomain.py | 14 tools/python/xen/xm/main.py >>>>> | 82 ++ >>>>> xen/arch/ia64/vmx/vmmu.c | 6 xen/common/Makefile >>>>> | 1 xen/common/sched_credit.c | 8 >>>>> xen/common/sched_credit2.c | 1125 >>>>> +++++++++++++++++++++++++++++ >>>>> xen/common/schedule.c | 22 >>>>> xen/include/public/domctl.h | 4 xen/include/public/trace.h >>>>> | 1 xen/include/xen/sched-if.h | 28 >>>>> _______________________________________________ >>>>> Xen-devel mailing list >>>>> Xen-devel@lists.xensource.com >>>>> http://lists.xensource.com/xen-devel >>>>> >>>>> >>>> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel