perfmon3: introduction
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest24 patches 10 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/24 | perfmon3: generic headersinclude/ include/ include/ | +470 | 0 replies | |
| 2/24 | perfmon3: base codeinclude/ perfmon/ perfmon/ +4 more | +646 | 0 replies | |
| 3/24 | perfmon3: context switchinclude/ perfmon/ | +259 | 0 replies | |
| 4/24 | perfmon3: interrupt handlinginclude/ perfmon/ | +297 | 0 replies | |
| 5/24 | perfmon3: X86 generic codearch/ arch/ arch/ +3 more | +1053 | 0 replies | |
| 6/24 | perfmon3: generic x86 definitionsinclude/ include/ | +11 | 0 replies | |
| 7/24 | perfmon3: X86 OProfile hooksarch/ include/ perfmon/ | +105 | 0 replies | |
| 8/24 | perfmon3: X86 64-bit hooksarch/ arch/ arch/ +1 more | +27 | 0 replies | |
| 9/24 | perfmon3: X86 32-bit hooksarch/ arch/ arch/ +2 more | +24 | 0 replies | |
| 10/24 | perfmon3: PMU mappingperfmon/ perfmon/ | +268 | 0 replies | |
| 11/24 | perfmon3: sysfs interfaceperfmon/ perfmon/ perfmon/ +2 more | +386 | 0 replies | |
| 12/24 | perfmon3: read and write registersinclude/ perfmon/ perfmon/ | +470 | 0 replies | |
| 13/24 | perfmon3: start/stop monitoringperfmon/ perfmon/ | +139 | 0 replies | |
| 14/24 | perfmon3: attach and detach sessionperfmon/ perfmon/ | +255 | 0 replies | |
| 15/24 | perfmon3: context creationinclude/ perfmon/ perfmon/ +1 more | +463 | 0 replies | |
| 16/24 | perfmon3: non-implemented perfmon syscallskernel/ | +7 | 0 replies | |
| 17/24 | perfmon3: X86 64-bit system calls supportinclude/ | +10 | 0 replies | |
| 18/24 | perfmon3: X86 x86-64 32-bit syscall entriesarch/ | +5 | 0 replies | |
| 19/24 | perfmon3: X86 32-bit system calls supportarch/ include/ | +10 | 0 replies | |
| 20/24 | perfmon3: system calls interfaceinclude/ perfmon/ | +752 | 0 replies | |
| 21/24 | perfmon3: Intel architectural PMU supportarch/ arch/ arch/ | +636 | 0 replies | |
| 22/24 | perfmon3: AMD64 processor supportarch/ arch/ arch/ | +493 | 0 replies | |
| 23/24 | perfmon3: kernel documentationDocumentation/ Documentation/ Documentation/ | +296 | 2 replies | |
| 24/24 | perfmon3: MakefilesMakefile arch/ arch/ +1 more | +17 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [patch 00/24] perfmon3: introduction
Hello,
This series of patches implements the perfmon interface which provides access to the hardware performance counters of modern processors. In particular, this version supports per-thread counting for all AMD64 processors, and recent Intel processors with architectural PMU (Core Duo, Core 2, Atom).
It does not supersede Oprofile in this first implementation. Oprofile and perfmon can be compiled in the same kernel, but only one can have an active session at a time.
This implementation takes into account the various comments received from previous reviews on LKML. This is a much simplified version compared to the fully featured version maintained as a separate GIT tree on kernel.org.
This new version, named perfmon3, uses only 5 system calls (instead of 12). Each call was carefully designed to allow for future extensions.
Full documentation is available in Documentation/perfmon.txt and is provided by one of the patches.
Once this basic set of perfmon functionalities is upstream, we will build on it and add other features such as support for sampling, event set multiplexing and multi-architecture.
I will be releasing updated versions of libpfm and pfmon which can work with this new API while continuing to work with the v2.x versions.
The patch series is against 2.6.27.
Please consider adding this patch series for 2.6.28.
Thanks to all the people who have contributed to this new release.
S.Eranian