|  | 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] |