linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] powerpc: Instrument Hypervisor Calls
@ 2006-06-22 22:56 Mike Kravetz
  2006-06-22 22:57 ` [PATCH 1/3] powerpc: Instrument Hypervisor Calls: merge headers Mike Kravetz
                   ` (4 more replies)
  0 siblings, 5 replies; 27+ messages in thread
From: Mike Kravetz @ 2006-06-22 22:56 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Bryan Rosenburg, Christopher Yeoh, Nathan Lynch, Arnd Bergmann

Here is an updated version of the hcall instrumentation patches.
Unfortunately, I have not been able to spend as much time as I
would like on this (and it seems that will continue).  

This version addresses all comments received except Arnd's issue
with an #ifdef for each function in the assembly file.  I like
Jimi's suggestion for creating macros(which could also minimize
the #ifdefs), but have not got around to implementing this.
Suggestions of others way to accomplish this are welcome.

Statistic files are moved to debugfs, and remain split out by CPU.
After some thought, disable/enable of preemption was added around
the statistic gathering(mostly for timing).

-- 
Mike

^ permalink raw reply	[flat|nested] 27+ messages in thread
* [PATCH 0/3] powerpc: Instrument Hypervisor Calls
@ 2006-07-21  6:38 Mike Kravetz
  0 siblings, 0 replies; 27+ messages in thread
From: Mike Kravetz @ 2006-07-21  6:38 UTC (permalink / raw)
  To: Paul Mackerras; +Cc: linuxppc-dev

Here is a version of the instrumentation patches built on top of
Anton's hcall cleanup patch.  In addition, I have gathered the
timebase and PURR snapshots in assembly code.  However, it still
performs a call out to C code that updates the data structures.

I'd appreciate some comments on the assembly code as it has been
a looooong time since I've written any.

-- 
Mike

^ permalink raw reply	[flat|nested] 27+ messages in thread
* [PATCH 0/3] powerpc: Instrument Hypervisor Calls
@ 2006-07-18 20:47 Mike Kravetz
  2006-07-18 21:00 ` Paul Mackerras
  2006-07-18 21:29 ` Mike Kravetz
  0 siblings, 2 replies; 27+ messages in thread
From: Mike Kravetz @ 2006-07-18 20:47 UTC (permalink / raw)
  To: Paul Mackerras; +Cc: linuxppc-dev

A small update from the last version.  By popular demand, both
wall time (mftb) and cpu cycles(PURR) are collected for each call.
It is interesting to see these two values side by side in the
output files.

-- 
Mike

^ permalink raw reply	[flat|nested] 27+ messages in thread
* [PATCH 0/3] powerpc: Instrument Hypervisor Calls
@ 2006-07-14 23:37 Mike Kravetz
  2006-07-15  0:00 ` Arnd Bergmann
  0 siblings, 1 reply; 27+ messages in thread
From: Mike Kravetz @ 2006-07-14 23:37 UTC (permalink / raw)
  To: Paul Mackerras
  Cc: Arnd Bergmann, Bryan Rosenburg, linuxppc-dev, Nathan Lynch,
	Christopher Yeoh

Hi Paul,

Here is an updated version of the patch(es) to instrument hcalls.  All
issues from the previous versions have been addressed.  Although, I
haven't really discovered an elegant solution to the assembly routine
name juggling.

In addition, there has been some discussion of these patches on IRC.
Some remaining issues/questions are:
- Exactly how much overhead does the statistic gathering introduce?
- What would be the cost of disabling preemption for more accurate statistics?
- What would be the cost of disabling interrupts for more accurate statistics?
- Should we extend this statistic gathering to RTAS calls?

I would like to get this basic code integrated and then start to address
some of these questions.  The IBM performance group will help in
benchmarking to determine overhead.

Please note that all code is behind a config option (off by default) with
zero impact unless enabled.

-- 
Mike

^ permalink raw reply	[flat|nested] 27+ messages in thread
* [PATCH 0/3] powerpc: Instrument Hypervisor Calls
@ 2006-06-14  3:47 Mike Kravetz
  0 siblings, 0 replies; 27+ messages in thread
From: Mike Kravetz @ 2006-06-14  3:47 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: Bryan Rosenburg, Christopher Yeoh

This patch series adds instrumentation to Hypervisor calls.  Code and
ideas were taken from the patch set provided by Christopher Yeoh.

The idea is to put all instrumentation code behind a configuration
option so that it can easily be added/removed.  The instrumentation
code is kept to a minimum in the hopes that it's impact to performance
will not be noticed.  Statistics are made available via files in sysfs.

-- 
Mike

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2006-07-21  8:36 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-06-22 22:56 [PATCH 0/3] powerpc: Instrument Hypervisor Calls Mike Kravetz
2006-06-22 22:57 ` [PATCH 1/3] powerpc: Instrument Hypervisor Calls: merge headers Mike Kravetz
2006-06-22 22:58 ` [PATCH 2/3] powerpc: Instrument Hypervisor Calls: add wrappers Mike Kravetz
2006-06-22 23:00 ` [PATCH 3/3] powerpc: Instrument Hypervisor Calls: add debugfs files Mike Kravetz
2006-06-23  0:28 ` [PATCH 0/3] powerpc: Instrument Hypervisor Calls Segher Boessenkool
2006-07-10 20:35 ` Mike Kravetz
2006-07-10 20:49   ` Arnd Bergmann
2006-07-12 18:05   ` Mike Kravetz
  -- strict thread matches above, loose matches on Subject: below --
2006-07-21  6:38 Mike Kravetz
2006-07-18 20:47 Mike Kravetz
2006-07-18 21:00 ` Paul Mackerras
2006-07-19  3:36   ` Mike Kravetz
2006-07-19 22:11     ` Mike Kravetz
2006-07-18 21:29 ` Mike Kravetz
2006-07-18 22:38   ` Olof Johansson
2006-07-14 23:37 Mike Kravetz
2006-07-15  0:00 ` Arnd Bergmann
2006-07-15  0:06   ` Mike Kravetz
2006-07-15 15:30   ` Anton Blanchard
2006-07-15 16:42     ` Arnd Bergmann
2006-07-15 22:07       ` Anton Blanchard
2006-07-16 23:02         ` Luke Browning
2006-07-17  2:02     ` Luke Browning
2006-07-16  3:53   ` Olof Johansson
2006-07-16 22:53     ` Luke Browning
2006-07-16 23:09       ` Olof Johansson
2006-06-14  3:47 Mike Kravetz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).