xref: /freebsd/lib/libpmc/pmc.soft.3 (revision 9768746b)
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.\" $FreeBSD$
25.\"
26.Dd September 23, 2021
27.Dt PMC.SOFT 3
28.Os
29.Sh NAME
30.Nm pmc.soft
31.Nd measurements using software based events
32.Sh LIBRARY
33.Lb libpmc
34.Sh SYNOPSIS
35.In pmc.h
36.Sh DESCRIPTION
37Software events are used to collect various source of software events.
38.Ss PMC Features
3916 sampling counters using software events based on various sources.
40These PMCs support the following capabilities:
41.Bl -column "PMC_CAP_INTERRUPT" "Support"
42.It Em Capability Ta Em Support
43.It PMC_CAP_CASCADE Ta \&No
44.It PMC_CAP_EDGE Ta \&No
45.It PMC_CAP_INTERRUPT Ta Yes
46.It PMC_CAP_INVERT Ta \&No
47.It PMC_CAP_READ Ta Yes
48.It PMC_CAP_PRECISE Ta \&No
49.It PMC_CAP_SYSTEM Ta Yes
50.It PMC_CAP_TAGGING Ta \&No
51.It PMC_CAP_THRESHOLD Ta \&No
52.It PMC_CAP_USER Ta Yes
53.It PMC_CAP_WRITE Ta Yes
54.El
55.Ss Event Qualifiers
56There is no supported event qualifier.
57.Pp
58The event specifiers supported by software are:
59.Bl -tag -width indent
60.It Li CLOCK.HARD
61Hard clock ticks.
62.It Li CLOCK.STAT
63Stat clock ticks.
64.It Li CLOCK.PROF
65Profiling clock ticks.
66.It Li INTR.ALL
67Interrupt filter executed
68.It Li INTR.FILTER
69Interrupt filter returned FILTER_HANDLED.
70.It Li INTR.ITHREAD
71Interrupt filter returned FILTER_SCHEDULE_ITHREAD.
72.It Li INTR.SCHEDULE
73Ithread scheduled.
74.It Li INTR.STRAY
75Interrupt filter returned FILTER_STRAY.
76.It Li INTR.WAITING
77Ithread not scheduled, already active.
78.It Li LOCK.FAILED
79Lock acquisition failed.
80.It Li PAGE_FAULT.ALL
81All page fault type.
82.It Li PAGE_FAULT.READ
83Read page fault.
84.It Li PAGE_FAULT.WRITE
85Write page fault.
86.El
87.Sh SEE ALSO
88.Xr pmc 3 ,
89.Xr pmc.atom 3 ,
90.Xr pmc.core 3 ,
91.Xr pmc.corei7 3 ,
92.Xr pmc.corei7uc 3 ,
93.Xr pmc.iaf 3 ,
94.Xr pmc.k7 3 ,
95.Xr pmc.k8 3 ,
96.Xr pmc.tsc 3 ,
97.Xr pmc.ucf 3 ,
98.Xr pmc.westmereuc 3 ,
99.Xr pmc_cpuinfo 3 ,
100.Xr pmclog 3 ,
101.Xr hwpmc 4
102.Sh HISTORY
103The
104.Nm pmc
105library first appeared in
106.Fx 6.0 .
107.Sh AUTHORS
108.An -nosplit
109The
110.Lb libpmc
111library was written by
112.An Joseph Koshy Aq Mt jkoshy@FreeBSD.org .
113Software PMC was written by
114.An Fabien Thomas Aq Mt fabient@FreeBSD.org .
115