Poster of Linux kernelThe best gift for a Linux geek


Section: Maintenance Commands (8) Updated: 9 June, 2009
Local index Up


cpupcstat - Measure the DTLB miss rate  


cpupcstat [options] [target]  


cpupcstat uses oprofile to measure the DTLB miss rate of a specified application or the kernel. It configures oprofile to count the number of DTLB misses, optionally starts the target, and reports on the miss rate over a specified interval as target executes.

The following options can be used to configure how cpupcstat works:

--vmlinux </path/to/vmlinux>

This allows the user to specify where the appropriate vmlinux file is for their kernel. If this is not specified, /boot/vmlinux-`uname -r` will be used.

--delay <seconds>

This allows the user to specify the reporting interval. The default is 10 seconds.


Gather statistics for all processes and the kernel running in the system.

--target-pid <pid>

This allows the user to specify the pid of a process already that is already running. If this option is specified, target will be ignored.

--real-target <real-target>

Use this to specify the real name of the program to monitor if the target is a launcher script. When this is specified, target is executed but the report will be for real-target.

--time-limit <sec>

This option sets the time limit for monitoring. If this is specified the target or pid will only be monitored for sec seconds. The default continues monitoring while target or pid are still alive.


This allows the user to request DTLB miss rate data be collected for the kernel as well as the target.


This option requests that the ratio of instructions retired per TLB miss.


This option requests that the ratio of CPU cycles per TLB miss.


This option requests that the percentage of CPU cycles spent servicing TLB misses is displayed when cpupcstat exits. To use this option the cost in CPU cycles for a single TLB miss must be specified using either the --cost-config option or the script.

--cost-config </path/to/config>

This option tells cpupcstat that the cost in CPU cycles of a TLB miss can be found in the specified file, it should be specified as:


Where XX is the cost in cycles. This option is only used with the --time-servicing option.


cpupcstat prefers the perf tool for data collection, only using oprofile if perf is not present or supported. This option will force cpupcstat to use oprofile for data collection.



oprofile(1) perf(1)


Eric B Munson <> is the primary author. See the documentation for other contributors.




This document was created by man2html, using the manual pages.
Time: 22:01:27 GMT, April 16, 2011