本文将以对包含GPU透传设备的虚拟机实例创建时间消耗为例来说明如何使用火焰图来分析创建虚拟机实例过程中的热点,以便进行进一步的性能优化。
echo "0000:03:00.0" > /sys/bus/pci/devices/0000\:03\:00.0/driver/unbind
echo "10de 1b38" > /sys/bus/pci/drivers/vfio-pci/new_id
perf record --call-graph dwarf /usr/libexec/qemu-kvm -name guest=4e1b740a9474503ba9594aaf9fed6806,debug-threads=on -machine pc-i440fx-rhel7.5.0,accel=kvm,usb=off,dump-guest-core=off -cpu host -m 49152 -realtime mlock=off -smp 8,sockets=1,cores=8,threads=1 -uuid 4e1b740a-9474-503b-a959-4aaf9fed6806 -smbios type=1 -no-user-config -nodefaults -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -boot menu=off,strict=on -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -drive file=/home/zstack-primary-storage/test.qcow2,format=qcow2,if=none,id=drive-virtio-disk0,cache=none -device virtio-blk-pci,scs