75 lines
2.6 KiB
Plaintext
75 lines
2.6 KiB
Plaintext
|
perf-kvm(1)
|
||
|
===========
|
||
|
|
||
|
NAME
|
||
|
----
|
||
|
perf-kvm - Tool to trace/measure kvm guest os
|
||
|
|
||
|
SYNOPSIS
|
||
|
--------
|
||
|
[verse]
|
||
|
'perf kvm' [--host] [--guest] [--guestmount=<path>
|
||
|
[--guestkallsyms=<path> --guestmodules=<path> | --guestvmlinux=<path>]]
|
||
|
{top|record|report|diff|buildid-list}
|
||
|
'perf kvm' [--host] [--guest] [--guestkallsyms=<path> --guestmodules=<path>
|
||
|
| --guestvmlinux=<path>] {top|record|report|diff|buildid-list}
|
||
|
|
||
|
DESCRIPTION
|
||
|
-----------
|
||
|
There are a couple of variants of perf kvm:
|
||
|
|
||
|
'perf kvm [options] top <command>' to generates and displays
|
||
|
a performance counter profile of guest os in realtime
|
||
|
of an arbitrary workload.
|
||
|
|
||
|
'perf kvm record <command>' to record the performance counter profile
|
||
|
of an arbitrary workload and save it into a perf data file. If both
|
||
|
--host and --guest are input, the perf data file name is perf.data.kvm.
|
||
|
If there is no --host but --guest, the file name is perf.data.guest.
|
||
|
If there is no --guest but --host, the file name is perf.data.host.
|
||
|
|
||
|
'perf kvm report' to display the performance counter profile information
|
||
|
recorded via perf kvm record.
|
||
|
|
||
|
'perf kvm diff' to displays the performance difference amongst two perf.data
|
||
|
files captured via perf record.
|
||
|
|
||
|
'perf kvm buildid-list' to display the buildids found in a perf data file,
|
||
|
so that other tools can be used to fetch packages with matching symbol tables
|
||
|
for use by perf report.
|
||
|
|
||
|
OPTIONS
|
||
|
-------
|
||
|
-i::
|
||
|
--input=::
|
||
|
Input file name.
|
||
|
-o::
|
||
|
--output::
|
||
|
Output file name.
|
||
|
--host=::
|
||
|
Collect host side performance profile.
|
||
|
--guest=::
|
||
|
Collect guest side performance profile.
|
||
|
--guestmount=<path>::
|
||
|
Guest os root file system mount directory. Users mounts guest os
|
||
|
root directories under <path> by a specific filesystem access method,
|
||
|
typically, sshfs. For example, start 2 guest os. The one's pid is 8888
|
||
|
and the other's is 9999.
|
||
|
#mkdir ~/guestmount; cd ~/guestmount
|
||
|
#sshfs -o allow_other,direct_io -p 5551 localhost:/ 8888/
|
||
|
#sshfs -o allow_other,direct_io -p 5552 localhost:/ 9999/
|
||
|
#perf kvm --host --guest --guestmount=~/guestmount top
|
||
|
--guestkallsyms=<path>::
|
||
|
Guest os /proc/kallsyms file copy. 'perf' kvm' reads it to get guest
|
||
|
kernel symbols. Users copy it out from guest os.
|
||
|
--guestmodules=<path>::
|
||
|
Guest os /proc/modules file copy. 'perf' kvm' reads it to get guest
|
||
|
kernel module information. Users copy it out from guest os.
|
||
|
--guestvmlinux=<path>::
|
||
|
Guest os kernel vmlinux.
|
||
|
|
||
|
SEE ALSO
|
||
|
--------
|
||
|
linkperf:perf-top[1], linkperf:perf-record[1], linkperf:perf-report[1],
|
||
|
linkperf:perf-diff[1], linkperf:perf-buildid-list[1]
|