xref: /freebsd/lib/libpmc/pmc.soft.3 (revision e0c4386e7e71d93b0edc0c8fa156263fc4a8b0b6)
1.\" Copyright (c) 2012 Fabien Thomas.  All rights reserved.
2.\"
3.\" Redistribution and use in source and binary forms, with or without
4.\" modification, are permitted provided that the following conditions
5.\" are met:
6.\" 1. Redistributions of source code must retain the above copyright
7.\"    notice, this list of conditions and the following disclaimer.
8.\" 2. Redistributions in binary form must reproduce the above copyright
9.\"    notice, this list of conditions and the following disclaimer in the
10.\"    documentation and/or other materials provided with the distribution.
11.\"
12.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
13.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
16.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
18.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
19.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
20.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
21.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
22.\" SUCH DAMAGE.
23.\"
24.Dd September 23, 2021
25.Dt PMC.SOFT 3
26.Os
27.Sh NAME
28.Nm pmc.soft
29.Nd measurements using software based events
30.Sh LIBRARY
31.Lb libpmc
32.Sh SYNOPSIS
33.In pmc.h
34.Sh DESCRIPTION
35Software events are used to collect various source of software events.
36.Ss PMC Features
3716 sampling counters using software events based on various sources.
38These PMCs support the following capabilities:
39.Bl -column "PMC_CAP_INTERRUPT" "Support"
40.It Em Capability Ta Em Support
41.It PMC_CAP_CASCADE Ta \&No
42.It PMC_CAP_EDGE Ta \&No
43.It PMC_CAP_INTERRUPT Ta Yes
44.It PMC_CAP_INVERT Ta \&No
45.It PMC_CAP_READ Ta Yes
46.It PMC_CAP_PRECISE Ta \&No
47.It PMC_CAP_SYSTEM Ta Yes
48.It PMC_CAP_TAGGING Ta \&No
49.It PMC_CAP_THRESHOLD Ta \&No
50.It PMC_CAP_USER Ta Yes
51.It PMC_CAP_WRITE Ta Yes
52.El
53.Ss Event Qualifiers
54There is no supported event qualifier.
55.Pp
56The event specifiers supported by software are:
57.Bl -tag -width indent
58.It Li CLOCK.HARD
59Hard clock ticks.
60.It Li CLOCK.STAT
61Stat clock ticks.
62.It Li CLOCK.PROF
63Profiling clock ticks.
64.It Li INTR.ALL
65Interrupt filter executed
66.It Li INTR.FILTER
67Interrupt filter returned FILTER_HANDLED.
68.It Li INTR.ITHREAD
69Interrupt filter returned FILTER_SCHEDULE_ITHREAD.
70.It Li INTR.SCHEDULE
71Ithread scheduled.
72.It Li INTR.STRAY
73Interrupt filter returned FILTER_STRAY.
74.It Li INTR.WAITING
75Ithread not scheduled, already active.
76.It Li LOCK.FAILED
77Lock acquisition failed.
78.It Li PAGE_FAULT.ALL
79All page fault type.
80.It Li PAGE_FAULT.READ
81Read page fault.
82.It Li PAGE_FAULT.WRITE
83Write page fault.
84.El
85.Sh SEE ALSO
86.Xr pmc 3 ,
87.Xr pmc.amd 3 ,
88.Xr pmc.atom 3 ,
89.Xr pmc.core 3 ,
90.Xr pmc.corei7 3 ,
91.Xr pmc.corei7uc 3 ,
92.Xr pmc.iaf 3 ,
93.Xr pmc.tsc 3 ,
94.Xr pmc.ucf 3 ,
95.Xr pmc.westmereuc 3 ,
96.Xr pmc_cpuinfo 3 ,
97.Xr pmclog 3 ,
98.Xr hwpmc 4
99.Sh HISTORY
100The
101.Nm pmc
102library first appeared in
103.Fx 6.0 .
104.Sh AUTHORS
105.An -nosplit
106The
107.Lb libpmc
108library was written by
109.An Joseph Koshy Aq Mt jkoshy@FreeBSD.org .
110Software PMC was written by
111.An Fabien Thomas Aq Mt fabient@FreeBSD.org .
112