perf-top - ອອນລາຍໃນຄລາວ

ນີ້ແມ່ນຄໍາສັ່ງ perf-top ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


perf-top - ເຄື່ອງມືສ້າງໂປຣໄຟລ໌ລະບົບ.

ສະຫຼຸບສັງລວມ


ງາມ top [-e | --event=EVENT] [ ]

ລາຍລະອຽດ


ຄຳສັ່ງນີ້ສ້າງ ແລະສະແດງຜົນການນັບຖອຍຫຼັງໃນແບບສົດໆ.

OPTIONS


-a, --all-cpu
ການເກັບກໍາທົ່ວລະບົບ. (ຄ່າເລີ່ມຕົ້ນ)

-ຄ , --count=
ໄລຍະເວລາເຫດການເພື່ອເປັນຕົວຢ່າງ.

-ຄ , --cpu=
ຕິດຕາມກວດກາພຽງແຕ່ຢູ່ໃນບັນຊີລາຍຊື່ຂອງ CPUs ສະຫນອງໃຫ້. CPU ຫຼາຍສາມາດສະຫນອງໃຫ້ເປັນ
ບັນຊີລາຍຊື່ທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດທີ່ບໍ່ມີຊ່ອງຫວ່າງ: 0,1. ຊ່ວງຂອງ CPUs ຖືກລະບຸດ້ວຍ -: 0-2.
ຄ່າເລີ່ມຕົ້ນແມ່ນການຕິດຕາມ CPUs ທັງໝົດ.

-d , --delay=
ຈຳນວນວິນາທີທີ່ຈະຊັກຊ້າລະຫວ່າງການໂຫຼດຂໍ້ມູນຄືນໃໝ່.

-e , --event=
ເລືອກເຫດການ PMU. ການເລືອກສາມາດເປັນຊື່ເຫດການທີ່ເປັນສັນຍາລັກ (ໃຊ້ ງາມ ບັນຊີລາຍຊື່ ລາຍຊື່
ເຫດການທັງໝົດ) ຫຼືເຫດການ PMU ດິບ (eventsel+umask) ໃນຮູບແບບ rNNN ທີ່ NNN ເປັນ
ຕົວອະທິບາຍເຫດການເລກຖານສິບຫົກ.

- ອ , --entries=
ສະແດງຫນ້າທີ່ຫຼາຍອັນນີ້.

-f , --count-filter=
ສະແດງຟັງຊັນທີ່ມີເຫດການຫຼາຍກວ່ານີ້ເທົ່ານັ້ນ.

--ກຸ່ມ
ເອົາເຄົາເຕີເຂົ້າໄປໃນກຸ່ມເຄົາເຕີ.

-F , --freq=
ໂປຣໄຟລ໌ຢູ່ໃນຄວາມຖີ່ນີ້.

-i, --ສືບທອດ
ວຽກງານຂອງເດັກນ້ອຍບໍ່ໄດ້ສືບທອດ counters.

-ກ , --vmlinux=
ເສັ້ນທາງໄປສູ່ vmlinux. ຕ້ອງການສໍາລັບການທໍາງານຂອງຄໍາບັນຍາຍ.

- ມ , --mmap-pages=
ຈຳນວນໜ້າຂໍ້ມູນ mmap (ຕ້ອງເປັນກຳລັງຂອງສອງ) ຫຼືຂະໜາດສະເພາະທີ່ມີຕໍ່ທ້າຍ
ຕົວອັກສອນຫົວໜ່ວຍ - B/K/M/G. ຂະໜາດແມ່ນຫຍໍ້ຂຶ້ນເພື່ອໃຫ້ມີໜ້າທີ່ໃກ້ທີ່ສຸດແມ່ນສອງໜ້າ
ມູນຄ່າ.

- ປ , --pid=
ເຫດການໂປຣໄຟລ໌ຢູ່ໃນ Process ID ທີ່ມີຢູ່ແລ້ວ (ລາຍການທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ).

-t , --tid=
ເຫດການໂປຣໄຟລ໌ຢູ່ໃນ ID ກະທູ້ທີ່ມີຢູ່ແລ້ວ (ລາຍການແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ).

-u, --uid=
ບັນທຶກເຫດການໃນຫົວຂໍ້ທີ່ເປັນເຈົ້າຂອງໂດຍ uid. ຊື່ ຫຼື ເລກ.

-r , --realtime=
ເກັບກຳຂໍ້ມູນດ້ວຍບູລິມະສິດ RT SCHED_FIFO ນີ້.

--sym-annotate=
ບັນຍາຍສັນຍາລັກນີ້.

-K, --hide_kernel_symbols
ເຊື່ອງສັນຍາລັກແກ່ນ.

-U, --hide_user_symbols
ເຊື່ອງສັນຍາລັກຜູ້ໃຊ້.

--demangle-kernel
Demangle kernel ສັນຍາລັກ.

-D, --dump-symtab
ຖິ້ມຕາຕະລາງສັນຍາລັກທີ່ໃຊ້ສໍາລັບການສ້າງໂປຣໄຟລ໌.

-v, --verbose
ມີ verbose ຫຼາຍຂຶ້ນ (ສະແດງຂໍ້ຜິດພາດທີ່ກົງກັນຂ້າມ, ແລະອື່ນໆ).

-z, --ສູນ
ປະຫວັດສູນໃນທົ່ວການອັບເດດການສະແດງຜົນ.

-s, --ຄັດ
ຈັດຮຽງຕາມລະຫັດ: pid, comm, dso, ສັນຍາລັກ, ພໍ່ແມ່, srcline, ນໍ້າໜັກ, local_weight, abort,
in_tx, ທຸລະກໍາ, overhead, ຕົວຢ່າງ, ໄລຍະເວລາ. ກະລຸນາເບິ່ງລາຍລະອຽດຂອງ --sort ໃນ
perf-report man page.

--fields=
ລະບຸຊ່ອງຂໍ້ມູນຜົນຜະລິດ - ປຸ່ມຫຼາຍສາມາດຖືກລະບຸໃນຮູບແບບ CSV. ຊ່ອງຂໍ້ມູນຕໍ່ໄປນີ້
ສາມາດໃຊ້ໄດ້: overhead, overhead_sys, overhead_us, overhead_children, ຕົວຢ່າງ ແລະ
ໄລຍະເວລາ. ນອກຈາກນັ້ນ, ມັນສາມາດມີລະຫັດການຈັດຮຽງໃດໆ.

ໂດຍຄ່າເລີ່ມຕົ້ນ, ທຸກໆກະແຈການຈັດຮຽງທີ່ບໍ່ໄດ້ລະບຸໄວ້ໃນ --field ຈະຖືກຕໍ່ທ້າຍ
ອັດຕະໂນມັດ.

-n, --show-nr-samples
ສະແດງຖັນທີ່ມີຈໍານວນຕົວຢ່າງ.

--show-total-period
ສະແດງຖັນທີ່ມີຜົນລວມຂອງເຄື່ອງໝາຍເວລາ.

--dsos
ພຽງແຕ່ພິຈາລະນາສັນຍາລັກໃນ dsos ເຫຼົ່ານີ້. ທາງເລືອກນີ້ຈະມີຜົນກະທົບອັດຕາສ່ວນຂອງ
ຖັນເທິງຫົວ. ເບິ່ງ --percentage ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

--comms
ພຽງແຕ່ພິຈາລະນາສັນຍາລັກໃນ comms ເຫຼົ່ານີ້. ທາງເລືອກນີ້ຈະມີຜົນກະທົບອັດຕາສ່ວນຂອງ
ຖັນເທິງຫົວ. ເບິ່ງ --percentage ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

-- ສັນ​ຍາ​ລັກ​
ພຽງແຕ່ພິຈາລະນາສັນຍາລັກເຫຼົ່ານີ້. ຕົວເລືອກນີ້ຈະສົ່ງຜົນກະທົບຕໍ່ອັດຕາສ່ວນຂອງສ່ວນເກີນ
ຖັນ. ເບິ່ງ --percentage ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

-M, --disassembler-style=
ກໍານົດຮູບແບບ disassembler ສໍາລັບ objdump.

--ແຫຼ່ງ
interleave ລະຫັດແຫຼ່ງທີ່ມີລະຫັດປະກອບ. ເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ, ປິດໃຊ້ງານດ້ວຍ
--no-source.

--asm-raw
ສະ​ແດງ​ໃຫ້​ເຫັນ​ການ​ເຂົ້າ​ລະ​ຫັດ​ວັດ​ຖຸ​ດິບ​ຂອງ​ຄໍາ​ແນະ​ນໍາ​ການ​ປະ​ກອບ​.

-g
ເປີດໃຊ້ການບັນທຶກການໂທ-ກຣາບ (ຕ່ອງໂສ້ stack/backtrace).

--call-graph [mode,type,min[,limit],order[,key][,branch]]
ຕັ້ງຄ່າ ແລະເປີດໃຊ້ການບັນທຶກ call-graph (stack chain/backtrace), implies -g. ເບິ່ງ
--call-graph ພາກໃນ perf-record ແລະ perf-report man pages ສໍາລັບລາຍລະອຽດ.

--ເດັກນ້ອຍ
ສະ​ສົມ callchain ຂອງ​ເດັກ​ນ້ອຍ​ກັບ​ການ​ເຂົ້າ​ຂອງ​ພໍ່​ແມ່​ດັ່ງ​ນັ້ນ​ສາ​ມາດ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ເຖິງ​ໃນ​
ຜົນຜະລິດ. ຜົນຜະລິດຈະມີຖັນ "ເດັກນ້ອຍ" ໃຫມ່ແລະຈະຖືກຈັດລຽງຕາມຂໍ້ມູນ.
ມັນຮຽກຮ້ອງໃຫ້ມີ -g/--call-graph option ເປີດໃຊ້ງານ. ເບິ່ງພາກ 'ການຄິດໄລ່ຄ່າໃຊ້ຈ່າຍເທິງ' ສໍາລັບ
ລາຍ​ລະ​ອຽດ​ເພີ່ມ​ເຕີມ.

--max-stack
ກໍານົດຂອບເຂດຄວາມເລິກ stack ໃນເວລາທີ່ parsing callchain, ສິ່ງໃດແດ່ທີ່ເກີນກໍານົດ
ຄວາມເລິກຈະຖືກລະເລີຍ. ນີ້ແມ່ນການແລກປ່ຽນລະຫວ່າງການສູນເສຍຂໍ້ມູນແລະໄວຂຶ້ນ
ການປະມວນຜົນໂດຍສະເພາະສໍາລັບວຽກທີ່ສາມາດມີ stack callchain ຍາວຫຼາຍ.

ໃນຕອນຕົ້ນ: 127

--ignore-callees=
ບໍ່ສົນໃຈ callees ຂອງຟັງຊັນທີ່ກົງກັບ regex ທີ່ໃຫ້. ນີ້ມີຜົນກະທົບຂອງ
ການລວບລວມຜູ້ໂທຂອງແຕ່ລະຫນ້າທີ່ດັ່ງກ່າວເຂົ້າໄປໃນບ່ອນດຽວໃນ call-graph tree.

--percent-ຈໍາກັດ
ຢ່າສະແດງລາຍການທີ່ມີສ່ວນເກີນພາຍໃຕ້ເປີເຊັນນັ້ນ. (ຄ່າເລີ່ມຕົ້ນ: 0).

-- ເປີເຊັນ
ກໍານົດວິທີການສະແດງອັດຕາສ່ວນສ່ວນເກີນຂອງລາຍການທີ່ຖືກກັ່ນຕອງ. ການກັ່ນຕອງສາມາດເປັນ
ນຳໃຊ້ໂດຍ --comms, --dsos ແລະ/ຫຼື --symbols options and Zoom operations on TUI
(ກະທູ້, dso, ແລະອື່ນໆ).

"ພີ່ນ້ອງ" ຫມາຍຄວາມວ່າມັນເປັນພີ່ນ້ອງກັບລາຍການທີ່ຖືກກັ່ນຕອງເທົ່ານັ້ນເພື່ອວ່າ
ຜົນລວມຂອງລາຍການທີ່ສະແດງຈະເປັນ 100%. "ຢ່າງແທ້ຈິງ" ຫມາຍຄວາມວ່າມັນຍັງຄົງຢູ່
ຄ່າຕົ້ນສະບັບກ່ອນແລະຫຼັງຈາກການກັ່ນຕອງຖືກນໍາໃຊ້.

-w, --column-widths=
ບັງຄັບຄວາມກວ້າງແຕ່ລະຖັນໃສ່ລາຍການທີ່ສະໜອງໃຫ້, ສໍາລັບການອ່ານຢູ່ປາຍຍອດຂະຫນາດໃຫຍ່. 0 ຫມາຍຄວາມວ່າ
ບໍ່ມີຂອບເຂດຈໍາກັດ (ພຶດຕິກໍາເລີ່ມຕົ້ນ).

--proc-map-ໝົດເວລາ
ເມື່ອປະມວນຜົນກະທູ້ທີ່ມີຢູ່ກ່ອນແລ້ວ /proc/XXX/mmap, ມັນອາດຈະໃຊ້ເວລາດົນ, ເພາະວ່າ
ໄຟລ໌ອາດຈະໃຫຍ່. ໃນກໍລະນີດັ່ງກ່າວນີ້, ມັນຈໍາເປັນຕ້ອງໃຊ້ເວລາອອກ. ຕົວເລືອກນີ້ກໍານົດເວລາ
ເກີນຂອບເຂດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 500 ms.

-b, --branch-any
ເປີດໃຊ້ການເກັບຕົວຢ່າງຂອງສາຂາທີ່ເອົາມາ. ປະເພດຂອງສາຂາທີ່ເອົາມາອາດຈະຖືກເກັບຕົວຢ່າງ. ນີ້​ແມ່ນ
ທາງລັດສໍາລັບ --branch-filter ໃດ. ເບິ່ງ --branch-filter ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

-j, --branch-filter
ເປີດໃຊ້ການເກັບຕົວຢ່າງຂອງສາຂາທີ່ເອົາມາ. ແຕ່​ລະ​ຕົວ​ຢ່າງ​ຈັບ​ຊຸດ​ຂອງ​ການ​ປະ​ຕິ​ບັດ​ຕິດ​ຕໍ່​ກັນ​ໄດ້​
ສາຂາ. ຈໍານວນຂອງສາຂາທີ່ຖືກຈັບກັບແຕ່ລະຕົວຢ່າງແມ່ນຂຶ້ນກັບພື້ນຖານ
ຮາດແວ, ປະເພດຂອງສາຂາທີ່ມີຄວາມສົນໃຈ, ແລະລະຫັດປະຕິບັດ. ມັນເປັນໄປໄດ້
ເລືອກປະເພດຂອງສາຂາທີ່ຖືກຈັບໂດຍການເປີດໃຊ້ຕົວກອງ. ສໍາລັບບັນຊີລາຍຊື່ເຕັມຂອງ
ຕົວແກ້ໄຂກະລຸນາເບິ່ງ manpage perf record.

ທາງເລືອກຕ້ອງການຢ່າງຫນ້ອຍຫນຶ່ງປະເພດສາຂາໃນບັນດາໃດໆ, any_call, any_ret, ind_call, cond.
ລະດັບສິດທິພິເສດອາດຈະຖືກລະເວັ້ນ, ໃນກໍລະນີນີ້, ລະດັບສິດທິພິເສດທີ່ກ່ຽວຂ້ອງ
ເຫດການຖືກນໍາໃຊ້ກັບຕົວກອງສາຂາ. ທັງ kernel (k) ແລະ hypervisor (hv) ສິດທິພິເສດ
ລະດັບແມ່ນຂຶ້ນກັບການອະນຸຍາດ. ເມື່ອການເກັບຕົວຢ່າງໃນຫຼາຍໆເຫດການ, ການເກັບຕົວຢ່າງຂອງສາຂາ
ຖືກເປີດໃຊ້ງານສໍາລັບເຫດການຕົວຢ່າງທັງໝົດ. ປະເພດຂອງສາຂາຕົວຢ່າງແມ່ນຄືກັນສໍາລັບເຫດການທັງຫມົດ.
ການກັ່ນຕອງຕ່າງໆຕ້ອງຖືກລະບຸເປັນລາຍການທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ: --branch-filter any_ret,u,k
ໃຫ້ສັງເກດວ່າຄຸນສົມບັດນີ້ອາດຈະບໍ່ມີຢູ່ໃນໂປເຊດເຊີທັງຫມົດ.

ໂຕ້ຕອບ ການເຕືອນ ຄີ


[ງ]
ສະແດງການຊັກຊ້າການໂຫຼດຫນ້າຈໍຄືນ.

[e]
ຈໍານວນລາຍການທີ່ຈະສະແດງ.

[E]
ເຫດການທີ່ຈະສະແດງໃນເວລາທີ່ຫຼາຍ counters ເຮັດວຽກ.

[f]
ຕົວກອງສະແດງໂປຣໄຟລ໌ (>= ຕີນັບ).

[F]
ຕົວກັ່ນຕອງການສະແດງຄຳບັນຍາຍ (>= % ຂອງທັງໝົດ).

[S]
ສັນຍາລັກຫຍໍ້ໜ້າ.

[ສ]
ຢຸດຄຳອະທິບາຍປະກອບ, ກັບຄືນສູ່ການສະແດງໂປຣໄຟລ໌ເຕັມ.

[z]
ສະຫຼັບການນັບເຫດການເປັນສູນໃນທົ່ວການອັບເດດຈໍສະແດງຜົນ.

[qQ]
ເຊົາ.

ການກົດປຸ່ມໃດໆທີ່ບໍ່ໄດ້ຕັ້ງແຜນທີ່ຈະສະແດງເມນູ, ແລະເຕືອນສໍາລັບການປ້ອນຂໍ້ມູນ.

ຂ້າມໄປ ການຄິດໄລ່


overhead ສາມາດສະແດງໃຫ້ເຫັນໃນສອງຖັນເປັນ ເດັກນ້ອຍ ແລະ ຕົນເອງ ເມື່ອ perf ເກັບກໍາ
ໂທສາຍ. ໄດ້ ຕົນເອງ overhead ແມ່ນຄິດໄລ່ງ່າຍໆໂດຍການເພີ່ມຄ່າໄລຍະເວລາທັງຫມົດຂອງ
entry - ປົກກະຕິແລ້ວເປັນຫນ້າທີ່ (ສັນຍາລັກ). ນີ້ແມ່ນມູນຄ່າທີ່ perf ສະແດງໃຫ້ເຫັນຕາມປະເພນີແລະ
ລວມຂອງທັງຫມົດ ຕົນເອງ ຄ່າຜ່ານຫົວຄວນຈະເປັນ 100%.

ໄດ້ ເດັກນ້ອຍ overhead ແມ່ນຄິດໄລ່ໂດຍການເພີ່ມຄ່າໄລຍະເວລາທັງຫມົດຂອງຫນ້າທີ່ເດັກດັ່ງນັ້ນ
ທີ່ມັນສາມາດສະແດງໃຫ້ເຫັນການ overhead ທັງຫມົດຂອງຫນ້າທີ່ລະດັບທີ່ສູງກວ່າເຖິງແມ່ນວ່າພວກເຂົາບໍ່ໄດ້ເຮັດ
ປະຕິບັດໂດຍກົງຫຼາຍ. ເດັກນ້ອຍ ນີ້ ໝາຍ ຄວາມວ່າ ໜ້າ ທີ່ທີ່ຖືກເອີ້ນຈາກຄົນອື່ນ (ພໍ່ແມ່)
function

ມັນອາດຈະສັບສົນວ່າຜົນລວມຂອງທັງຫມົດ ເດັກນ້ອຍ ຄ່າຜ່ານຫົວເກີນ 100% ນັບຕັ້ງແຕ່
ພວກ​ເຂົາ​ແຕ່​ລະ​ແມ່ນ​ແລ້ວ​ສະ​ສົມ​ຂອງ​ ຕົນເອງ overhead ຂອງຫນ້າທີ່ເດັກນ້ອຍຂອງຕົນ. ແຕ່ມີ
ການເປີດໃຊ້ງານນີ້, ຜູ້ໃຊ້ສາມາດຊອກຫາຟັງຊັນໃດທີ່ມີຄ່າໃຊ້ຈ່າຍສູງສຸດເຖິງແມ່ນວ່າຕົວຢ່າງ
ແຜ່ລາມໄປທົ່ວເດັກນ້ອຍ.

ພິຈາລະນາຕົວຢ່າງຕໍ່ໄປນີ້; ມີສາມຫນ້າທີ່ຄືຂ້າງລຸ່ມນີ້.

.ft ຄ
void foo(void) {
/* ເຮັດ​ບາງ​ສິ່ງ​ບາງ​ຢ່າງ */
}

void bar(void) {
/* ເຮັດ​ບາງ​ສິ່ງ​ບາງ​ຢ່າງ */
foo();
}

int main(void) {
ແຖບ()
return 0
}
.ft

ໃນ​ກໍ​ລະ​ນີ​ນີ້ ຟູ ເປັນລູກຂອງ ພາທະນາຍຄວາມ, ແລະ ພາທະນາຍຄວາມ ເປັນເດັກນ້ອຍທັນທີທັນໃດຂອງ ຕົ້ນຕໍ so ຟູ ຍັງເປັນ
ລູກຂອງ ຕົ້ນຕໍ. ເວົ້າອີກຢ່າງ ໜຶ່ງ, ຕົ້ນຕໍ ເປັນພໍ່ແມ່ຂອງ ຟູ ແລະ ພາທະນາຍຄວາມ, ແລະ ພາທະນາຍຄວາມ ເປັນພໍ່ແມ່ຂອງ
ຟູ.

ສົມມຸດວ່າຕົວຢ່າງທັງຫມົດຖືກບັນທຶກໄວ້ໃນ ຟູ ແລະ ພາທະນາຍຄວາມ ເທົ່ານັ້ນ. ເມື່ອມັນຖືກບັນທຶກດ້ວຍ callchains
ຜົນຜະລິດຈະສະແດງໃຫ້ເຫັນບາງສິ່ງບາງຢ່າງເຊັ່ນ: ຂ້າງລຸ່ມນີ້ໃນປົກກະຕິ (ຕົນເອງ overhead-ເທົ່ານັ້ນ) output ຂອງ perf
ລາຍງານ:

.ft ຄ
ສັນຍາລັກຢູ່ເທິງຫົວ
........................................
60.00% fo
|
--- ຟູ
ພາທະນາຍຄວາມ
ຕົ້ນຕໍ
__libc_start_main

ບາລະ 40.00%.
|
--- ບາ
ຕົ້ນຕໍ
__libc_start_main
.ft

ເມື່ອຕົວເລືອກ --children ຖືກເປີດໃຊ້, the ຕົນເອງ ຄຸນຄ່າສ່ວນເກີນຂອງໜ້າທີ່ຂອງເດັກ (ie
ຟູ ແລະ ພາທະນາຍຄວາມ) ຖືກເພີ່ມໃສ່ພໍ່ແມ່ເພື່ອຄິດໄລ່ ເດັກນ້ອຍ ເໜືອຫົວ. ໃນກໍລະນີດັ່ງກ່າວນີ້
ບົດ​ລາຍ​ງານ​ສາ​ມາດ​ສະ​ແດງ​ເປັນ​:

.ft ຄ
ສັນຍາລັກຂອງເດັກນ້ອຍຕົນເອງ
........................................
100.00% 0.00% __libc_start_main
|
--- __libc_start_main

100.00% 0.00% ຕົ້ນຕໍ
|
--- ຕົ້ນຕໍ
__libc_start_main

100.00% 40.00% ບາ
|
--- ບາ
ຕົ້ນຕໍ
__libc_start_main

60.00% 60.00% foo
|
--- ຟູ
ພາທະນາຍຄວາມ
ຕົ້ນຕໍ
__libc_start_main
.ft

ໃນຜົນໄດ້ຮັບຂ້າງເທິງ, ໄດ້ ຕົນເອງ ດ້ານເທິງຂອງ ຟູ (60%) ໄດ້ຖືກເພີ່ມໃສ່ ເດັກນ້ອຍ ດ້ານເທິງຂອງ
ພາທະນາຍຄວາມ, ຕົ້ນຕໍ ແລະ __libc_start_main. ເຊັ່ນດຽວກັນ, ໄດ້ ຕົນເອງ ດ້ານເທິງຂອງ ພາທະນາຍຄວາມ (40%) ໄດ້ຖືກເພີ່ມໃສ່
ເດັກນ້ອຍ ດ້ານເທິງຂອງ ຕົ້ນຕໍ ແລະ \_\_libc_start_main.

So \_\_libc_start_main ແລະ ຕົ້ນຕໍ ສະແດງໃຫ້ເຫັນຄັ້ງທໍາອິດນັບຕັ້ງແຕ່ພວກມັນມີຄືກັນ (100%) ເດັກນ້ອຍ
overhead (ເຖິງແມ່ນວ່າພວກເຂົາເຈົ້າມີສູນ ຕົນເອງ overhead) ແລະພວກເຂົາແມ່ນພໍ່ແມ່ຂອງ ຟູ ແລະ
ພາທະນາຍຄວາມ.

ນັບຕັ້ງແຕ່ v3.16 ໄດ້ ເດັກນ້ອຍ overhead ແມ່ນສະແດງໂດຍຄ່າເລີ່ມຕົ້ນແລະຜົນໄດ້ຮັບຖືກຈັດຮຽງຕາມຂອງມັນ
ຄຸນຄ່າ. ທ ເດັກນ້ອຍ overhead ແມ່ນພິການໂດຍການລະບຸ --no-children ທາງເລືອກໃນ
ເສັ້ນຄໍາສັ່ງຫຼືໂດຍການເພີ່ມ ລາຍງານເດັກນ້ອຍ = ທີ່ບໍ່ຖືກຕ້ອງ or top.ເດັກນ້ອຍ = ທີ່ບໍ່ຖືກຕ້ອງ ໃນ perf ໄດ້
ໄຟລ໌ config.

ໃຊ້ perf-top ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net



ລ່າສຸດ Linux ແລະ Windows ໂຄງການອອນໄລນ໌