ryo
473c5ef3b0
fixed parsing of event options.
...
if event option was specivied, it was stuck in a busy loop.
2022-12-26 08:00:13 +00:00
ryoon
671f47e060
Reflect recent new options for top operation, add a and c
2022-12-26 03:25:55 +00:00
christos
073c713eeb
use malloc instead of alloca so that SSP works.
2022-12-23 19:37:06 +00:00
ryo
63a85c5bd2
the "scale" option can be specified in the event name even in "tprof monitor"
2022-12-16 08:02:04 +00:00
ryo
923aefa047
- added 'c' command to tprof-top to show/hide event counter.
...
- column widths were not calculated correctly and sometimes displayed incorrectly.
- use putp() for terminfo str.
- fix build error with llvm.
2022-12-16 08:00:47 +00:00
ryo
372d4eb272
if column width changes, the screen must be updated.
2022-12-09 02:19:07 +00:00
ryo
37e8e83852
supported AMD family added
2022-12-09 01:59:51 +00:00
ryo
2495b25d45
mainly fixes around display.
...
- use terminfo
- dynamically adjust column widths
- mode can be changed while running
2022-12-09 01:56:40 +00:00
ryo
38fd9876a2
add accumulative mode. "tprof top -a"
2022-12-09 01:55:46 +00:00
msaitoh
db24b2c2b2
Add AMD family 19h (zen3 and zen4) support to tprof.
2022-12-08 05:29:27 +00:00
msaitoh
f1f580f5a3
Use lowercase consistently for hexadecimal numbers. No functional change.
2022-12-08 02:12:18 +00:00
msaitoh
f5823b203c
KNF. No functional change.
2022-12-07 08:11:49 +00:00
ryo
f8c9791718
fix build error with llvm
2022-12-05 05:02:45 +00:00
ryo
e43c6d637e
fix build error of printf format
2022-12-01 03:32:24 +00:00
ryo
e93233db9a
add "top" subcommand to tprof(8)
2022-12-01 00:43:27 +00:00
ryo
14ff263e51
split ksyms stuff into ksyms.[ch]
2022-12-01 00:41:10 +00:00
ryo
07a5918990
Improve tprof(8)
...
- Added "tprof count" subcommand to perform counts only.
- Event options (u,k) are now optional. The default value is both userland and kernel. (:uk)
- Event counters can be displayed with SIGINFO during `tprof monitor' or `tprof count'.
2022-12-01 00:40:05 +00:00
ryo
caba1a6f47
Improve tprof(4)
...
- Multiple events can now be handled simultaneously.
- Counters should be configured with TPROF_IOC_CONFIGURE_EVENT in advance,
instead of being configured at TPROF_IOC_START.
- The configured counters can be started and stopped repeatedly by
PROF_IOC_START/TPROF_IOC_STOP.
- The value of the performance counter can be obtained at any timing as a 64bit
value with TPROF_IOC_GETCOUNTS.
- Backend common parts are handled in tprof.c as much as possible, and functions
on the tprof_backend side have been reimplemented to be more primitive.
- The reset value of counter overflows for profiling can now be adjusted.
It is calculated by default from the CPU clock (speed of cycle counter) and
TPROF_HZ, but for some events the value may be too large to be sufficient for
profiling. The event counter can be specified as a ratio to the default or as
an absolute value when configuring the event counter.
- Due to overall changes, API and ABI have been changed. TPROF_VERSION and
TPROF_BACKEND_VERSION were updated.
2022-12-01 00:32:52 +00:00
msaitoh
052df59bc6
Disable the unsupported events from the bit vector length in EAX.
2022-06-13 09:28:58 +00:00
msaitoh
c07439c64e
Add topdown-slots to Intel architectural performance monitoring version 1.
2022-06-13 07:40:58 +00:00
msaitoh
61a8c80144
Add note about tprof(4) for people like me who forget to load tprof_x86.
2022-05-25 06:17:19 +00:00
skrll
3064404475
Output alignement - give lwp 6 characters
2021-10-14 09:52:40 +00:00
jmcneill
2763548bcd
Print the path that we failed to open on error
2021-01-30 11:46:25 +00:00
rin
2b36317ff7
Support aarch64eb; just works fine.
2020-11-17 10:47:17 +00:00
knakahara
0a27bcec22
Fix typo in a comment.
2020-04-17 03:15:50 +00:00
jmcneill
eea38b83c1
Add AMD Family 15h to supported model list
2019-10-11 20:18:20 +00:00
jmcneill
1434425dff
Add support for AMD Family 15h
2019-10-11 18:05:52 +00:00
maxv
0acc4e3e94
Add support for AMD Family 17h.
2019-05-29 17:09:17 +00:00
kre
4b0905d49c
Fix merge botch.
2019-01-27 05:12:30 +00:00
pgoyette
d91f98a871
Merge the [pgoyette-compat] branch
2019-01-27 02:08:33 +00:00
knakahara
4ed6c77e42
tprof: Add goldmont plus support. Tested by msaitoh@n.o, thanks.
2018-11-26 23:20:56 +00:00
knakahara
4fd01caa16
tprof: Add goldmont support.
...
I tested on Atom C3558 (Denverton).
2018-11-26 07:45:47 +00:00
maxv
71256c3b0d
Note support for Intel Silvermont/Airmont.
2018-11-20 06:43:26 +00:00
knakahara
a8700cbec5
tprof: Add silvermont, airmont support.
...
I tested on Atom C2758 (Rangeley).
2018-11-15 07:20:31 +00:00
maxv
1b2a6113eb
Add a "support" section.
2018-07-24 10:05:36 +00:00
maxv
8c9dd8d036
Use errx, there is no errno.
2018-07-24 09:50:37 +00:00
wiz
b15bdb80e1
Various improvements to man page. Sync usage.
2018-07-18 16:50:05 +00:00
jmcneill
091e75868b
Add ARMv7 support.
2018-07-15 23:50:53 +00:00
jmcneill
0b7c38e1ef
Add ARMv8 support.
2018-07-15 16:25:31 +00:00
jmcneill
de53e8aea9
Fix a crash when running tprof with no arguments; check argc before accessing argv[0]
2018-07-14 16:34:15 +00:00
jmcneill
4ab6de2316
Mark tprof_event_init, tprof_event_list, tprof_event_lookup as dead
2018-07-14 15:38:59 +00:00
maxv
8addf8a6b5
specialreg.h is x86-specific, don't include it
2018-07-14 07:54:37 +00:00
maxv
9896bc73ca
Finish the Skylake/Kabylake table, and improve the output of "tprof analyze".
2018-07-14 07:54:04 +00:00
joerg
e290a3e9b8
Mark tprof_monitor as dead
2018-07-13 19:54:53 +00:00
maxv
c52e6df86c
Ask for a file path with the "analyze" command, instead of reading stdin.
2018-07-13 12:04:50 +00:00
maxv
5ae6235d0e
Remove tpfmt(1). Its code was merged into tprof(8).
2018-07-13 11:14:14 +00:00
maxv
96b21aedb9
Merge tpfmt(1) into tprof(8). We want to have access to everything with
...
only one tool. The code is copied mostly as-is, and the functionality is
available via the "analyze" command.
Eg:
tprof monitor -e llc-misses:k -o myfile.out sleep 20
tprof analyze < myfile.out
Will move soon, I don't like the reading via stdin.
2018-07-13 11:03:36 +00:00
maxv
48aa814610
Skylake/Kabylake are family 6, so add a check for that. While here improve
...
the layout of "tprof list".
2018-07-13 09:53:42 +00:00
maxv
ab933b7bbb
Change the arguments of the tprof tool, to match the behavior of pmc(1) and
...
cpuctl(8). They become:
tprof list
tprof monitor -e name:option [-o outfile] command
2018-07-13 09:04:31 +00:00
maxv
8dd2f31aad
Inline the values in amd_f10h_names[], we're not going to use defines for
...
each CPU model found in the wild.
2018-07-13 08:09:21 +00:00