基于Ubuntu18。04安装perf工具
本文基于Ubuntu18。04系统,介绍Linux性能分析工具perf的安装方法。
输入perf命令,提示:rootubuntu:homerunperfCommandperfnotfound,butcanbeinstalledwith:aptinstalllinuxtoolscommon
安装linuxtoolscommon:rootubuntu:homerunaptgetinstalllinuxtoolscommonReadingpackagelists。。。DoneBuildingdependencytreeReadingstateinformation。。。Donelinuxtoolscommonisalreadythenewestversion(4。15。0147。151)。Thefollowingpackageswereautomaticallyinstalledandarenolongerrequired:linuxhwe5。4headers5。4。072linuxhwe5。4headers5。4。073Usesudoaptautoremovetoremovethem。0upgraded,0newlyinstalled,0toremoveand250notupgraded。rootubuntu:homerunperfWARNING:perfnotfoundforkernel5。4。077Youmayneedtoinstallthefollowingpackagesforthisspecifickernel:linuxtools5。4。077genericlinuxcloudtools5。4。077genericYoumayalsowanttoinstalloneofthefollowingpackagestokeepuptodate:linuxtoolsgenericlinuxcloudtoolsgeneric
注:先安装linuxtools5。4。077generic时,会报错。
因此,先安装了下面的两条命令:rootubuntu:homerunaptgetinstalllinuxtoolsgenericlinuxcloudtoolsgenericReadingpackagelists。。。DoneBuildingdependencytreeReadingstateinformation。。。DoneThefollowingpackageswereautomaticallyinstalledandarenolongerrequired:linuxhwe5。4headers5。4。072linuxhwe5。4headers5。4。073Usesudoaptautoremovetoremovethem。Thefollowingadditionalpackageswillbeinstalled:linuxcloudtools4。15。0147linuxcloudtools4。15。0147genericlinuxcloudtoolscommonlinuxtools4。15。0147linuxtools4。15。0147genericThefollowingNEWpackageswillbeinstalled:linuxcloudtools4。15。0147linuxcloudtools4。15。0147genericlinuxcloudtoolscommonlinuxcloudtoolsgenericlinuxtools4。15。0147linuxtools4。15。0147genericlinuxtoolsgeneric0upgraded,7newlyinstalled,0toremoveand250notupgraded。Needtoget4,831kBofarchives。Afterthisoperation,24。4MBofadditionaldiskspacewillbeused。Doyouwanttocontinue?〔Yn〕y
继续安装命令:rootubuntu:homerunaptgetinstalllinuxtools5。4。077genericReadingpackagelists。。。DoneBuildingdependencytreeReadingstateinformation。。。DoneThefollowingpackageswereautomaticallyinstalledandarenolongerrequired:linuxhwe5。4headers5。4。072linuxhwe5。4headers5。4。073Usesudoaptautoremovetoremovethem。Thefollowingadditionalpackageswillbeinstalled:linuxhwe5。4tools5。4。077linuxhwe5。4toolscommonThefollowingNEWpackageswillbeinstalled:linuxhwe5。4tools5。4。077linuxhwe5。4toolscommonlinuxtools5。4。077generic0upgraded,3newlyinstalled,0toremoveand250notupgraded。Needtoget5,337kBofarchives。Afterthisoperation,25。2MBofadditionaldiskspacewillbeused。Doyouwanttocontinue?〔Yn〕y
和rootubuntu:homerunaptgetinstalllinuxcloudtools5。4。077genericReadingpackagelists。。。DoneBuildingdependencytreeReadingstateinformation。。。DoneThefollowingpackageswereautomaticallyinstalledandarenolongerrequired:linuxhwe5。4headers5。4。072linuxhwe5。4headers5。4。073Usesudoaptautoremovetoremovethem。Thefollowingadditionalpackageswillbeinstalled:linuxhwe5。4cloudtools5。4。077linuxhwe5。4cloudtoolscommonThefollowingNEWpackageswillbeinstalled:linuxcloudtools5。4。077genericlinuxhwe5。4cloudtools5。4。077linuxhwe5。4cloudtoolscommon0upgraded,3newlyinstalled,0toremoveand250notupgraded。Needtoget187kBofarchives。Afterthisoperation,1,959kBofadditionaldiskspacewillbeused。Doyouwanttocontinue?〔Yn〕
执行perf命令:rootubuntu:homerunperfusage:perf〔version〕〔help〕〔OPTIONS〕COMMAND〔ARGS〕Themostcommonlyusedperfcommandsare:annotateReadperf。data(createdbyperfrecord)anddisplayannotatedcodearchiveCreatearchivewithobjectfileswithbuildidsfoundinperf。datafilebenchGeneralframeworkforbenchmarksuitesbuildidcacheManagebuildidcache。buildidlistListthebuildidsinaperf。datafilec2cSharedDataC2CHITMAnalyzer。configGetandsetvariablesinaconfigurationfile。dataDatafilerelatedprocessingdiffReadperf。datafilesanddisplaythedifferentialprofileevlistListtheeventnamesinaperf。datafileftracesimplewrapperforkernelsftracefunctionalityinjectFiltertoaugmenttheeventsstreamwithadditionalinformationkallsymsSearchesrunningkernelforsymbolskmemTooltotracemeasurekernelmemorypropertieskvmTooltotracemeasurekvmguestoslistListallsymboliceventtypeslockAnalyzelockeventsmemProfilememoryaccessesrecordRunacommandandrecorditsprofileintoperf。datareportReadperf。data(createdbyperfrecord)anddisplaytheprofileschedTooltotracemeasureschedulerproperties(latencies)scriptReadperf。data(createdbyperfrecord)anddisplaytraceoutputstatRunacommandandgatherperformancecounterstatisticstestRunssanitytests。timechartTooltovisualizetotalsystembehaviorduringaworkloadtopSystemprofilingtool。versiondisplaytheversionofperfbinaryprobeDefinenewdynamictracepointstracestraceinspiredtool