GoGPT Best VPN GoSearch

OnWorks favicon

perf-probe - Online sa Cloud

Magpatakbo ng perf-probe sa OnWorks na libreng hosting provider sa Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

Ito ang command perf-probe na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

PROGRAMA:

NAME


perf-probe - Tukuyin ang mga bagong dynamic na tracepoint

SINOPSIS


perpekto suriing mabuti [mga opsyon] --add=PROBE [...]
or
perpekto suriing mabuti [mga opsyon] PROBE
or
perpekto suriing mabuti [mga opsyon] --del=[GROUP:]EVENT [...]
or
perpekto suriing mabuti --list[=[GROUP:]EVENT]
or
perpekto suriing mabuti [mga opsyon] --line=LINE
or
perpekto suriing mabuti [mga opsyon] --vars=PROBEPOINT
or
perpekto suriing mabuti [mga opsyon] --funcs

DESCRIPTION


Tinutukoy ng command na ito ang mga dynamic na tracepoint na kaganapan, sa pamamagitan ng simbolo at mga rehistro nang walang debuginfo,
o sa pamamagitan ng mga C expression (C line number, C function name, at C lokal na variable) na may
debuginfo.

Opsyon


-k, --vmlinux=PATH
Tukuyin ang vmlinux path na mayroong debuginfo (Dwarf binary).

-m, --module=MODNAME|PATH
Tukuyin ang pangalan ng module kung saan hinahanap ng perf-probe ang mga probe point o linya. Kung ang isang landas ng
naipasa ang module file, ituring ito ng perf-probe bilang isang offline na module (nangangahulugan ito na kaya mo
magdagdag ng probe sa isang module na hindi pa na-load).

-s, --source=PATH
Tukuyin ang path sa kernel source.

-v, --verbose
Maging mas verbose (ipakita ang mga na-parse na argumento, atbp). Hindi magagamit sa -q.

-q, --tahimik
Manahimik (huwag magpakita ng anumang mensahe kasama ang mga error). Hindi magagamit sa -v.

-a, --add=
Tukuyin ang isang probe event (tingnan ang PROBE SYNTAX para sa detalye).

-d, --del=
Tanggalin ang mga kaganapan sa pagsisiyasat. Tumatanggap ito ng mga glob wildcard(*, ?) at mga klase ng character(hal
[az], [!AZ]).

-l, --list[=[GROUP:]EVENT]
Ilista ang mga kasalukuyang kaganapan sa pagsisiyasat. Maaari din itong tumanggap ng mga pattern ng pag-filter ng mga pangalan ng kaganapan.

-L, --linya=
Ipakita ang mga linya ng source code na maaaring suriin. Ito ay nangangailangan ng argumento na tumutukoy sa a
saklaw ng source code. (tingnan ang LINE SYNTAX para sa detalye)

-V, --vars=
Ipakita ang mga available na lokal na variable sa ibinigay na probe point. Ang argument syntax ay kapareho ng
PROBE SYNTAX, ngunit WALANG ARG.

--mga panlabas
(Para lamang sa --vars) Ipakita ang mga panlabas na tinukoy na variable bilang karagdagan sa mga lokal na variable.

--walang-inlines
(Para lamang sa --add) Maghanap lamang ng mga hindi naka-inline na function. Ang mga function na hindi
may mga pagkakataon na hindi pinapansin.

-F, --funcs[=FILTER]
Ipakita ang mga magagamit na function sa ibinigay na module o kernel. Sa -x/--exec, maaari ding ilista
function sa isang user space executable / shared library. Maaari din itong tumanggap ng FILTER
argumentong tuntunin.

--filter=FILTER
(Para lang sa --vars at --funcs) Itakda ang filter. Ang FILTER ay isang kumbinasyon ng pattern ng glob, tingnan
FILTER PATTERN para sa detalye. Default na FILTER ay "!k???tab_* & !crc_*" para sa --vars, at
"!_*" para sa --funcs. Kung ilang filter ang tinukoy, ang huling filter lang ang gagamitin.

-f, --puwersa
Sapilitang magdagdag ng mga kaganapan na may kasalukuyang pangalan.

-n, --dry-run
Dry run. Sa opsyong ito, ang --add at --del ay hindi nagsasagawa ng aktwal na pagdaragdag at pag-alis
operasyon.

--max-probes=NUM
Itakda ang maximum na bilang ng mga probe point para sa isang kaganapan. Ang default ay 128.

-x, --exec=PATH
Tukuyin ang path sa executable o shared library file para sa pagsubaybay sa espasyo ng user. Pwede rin
gamitin sa --funcs na opsyon.

--demangle
Demangle ang mga simbolo ng aplikasyon. --no-demangle ay magagamit din para sa hindi pagpapagana
demangling.

--demangle-kernel
I-demangle ang mga simbolo ng kernel. --no-demangle-kernel ay magagamit din para sa hindi pagpapagana ng kernel
demangling.

Sa kawalan ng -m/-x na mga opsyon, ang perf probe ay nagsusuri kung ang unang argumento pagkatapos ng mga opsyon ay
isang ganap na pangalan ng landas. Kung ito ay ganap na landas, ginagamit ito ng perf probe bilang target
module/target user space binary upang suriin.

PROBE SINTAX


Tinutukoy ang mga probe point sa pamamagitan ng pagsunod sa syntax.

1) Tukuyin ang kaganapan batay sa pangalan ng function
[EVENT=]FUNC[@SRC][:RLN|+OFFS|%return|;PTN] [ARG ...]

2) Tukuyin ang kaganapan batay sa source file na may numero ng linya
[EVENT=]SRC:ALN [ARG ...]

3) Tukuyin ang kaganapan batay sa source file na may lazy pattern
[EVENT=]SRC;PTN [ARG ...]

EVENT tumutukoy sa pangalan ng bagong kaganapan, kung aalisin, ito ay itatakda ang pangalan ng probed
function. Sa kasalukuyan, nakatakda ang pangalan ng pangkat ng kaganapan bilang suriing mabuti. FUNC tumutukoy sa isang probed function
pangalan, at maaaring mayroon itong isa sa mga sumusunod na opsyon; +OFFS ay ang offset mula sa function
entry address sa bytes, :RLN ay ang relatibong-line number mula sa function entry line, at
%balik nangangahulugan na sinusuri nito ang pagbabalik ng function. At ;PTN nangangahulugang tamad na pagtutugma ng pattern (tingnan
LAZY MATCHING). Tandaan na ;PTN dapat ang dulo ng probe point definition. At saka,
@SRC tumutukoy ng source file na may ganoong function. Posible ring tukuyin ang a
probe point sa pamamagitan ng source line number o tamad na pagtutugma sa pamamagitan ng paggamit SRC:ALN or SRC;PTN syntax,
saan SRC ay ang source file path, :ALN ay ang numero ng linya at ;PTN ay ang tamad matching
pattern. ARG tumutukoy sa mga argumento ng probe point na ito, (tingnan ang PROBE ARGUMENT).

PROBE ARGUMENTO


Ang bawat probe argument ay sumusunod sa ibaba ng syntax.

[NAME=]LOCALVAR|$retval|%REG|@SYMBOL[:TYPE]

NAME tumutukoy sa pangalan ng argumentong ito (opsyonal). Maaari mong gamitin ang pangalan ng lokal
variable, miyembro ng lokal na istruktura ng data (hal. var→field, var.field2), lokal na array na may fixed
index (hal. array[1], var→array[0], var→pointer[2]), o kprobe-tracer na format ng argumento
(hal. $retval, %ax, atbp). Tandaan na ang pangalan ng argumentong ito ay itatakda bilang huli
pangalan ng miyembro kung tinukoy mo ang isang miyembro ng lokal na istruktura ng data (hal. field2 para sa
var→field1.field2.) $vars at $params ang mga espesyal na argumento ay magagamit din para kay NAME, $vars
ay pinalawak sa mga lokal na variable (kabilang ang mga parameter ng function) na maaaring ma-access sa
ibinigay na probe point. $params ay pinalawak sa mga parameter ng function lamang. TYPE naghahagis ng
uri ng argumentong ito (opsyonal). Kung aalisin, awtomatikong itatakda ng perf probe ang uri batay
sa debuginfo. Maaari mong tukuyin pisi uri lamang para sa lokal na variable o miyembro ng istraktura
na isang array ng o isang pointer sa tangke or hindi naka -ignign tangke uri.

Sa mga x86 system, ang %REG ay palaging ang maikling anyo ng rehistro: halimbawa %AX. %RAX o
Hindi wasto ang %EAX.

LINE SINTAX


Inilalarawan ang hanay ng linya sa pamamagitan ng pagsunod sa syntax.

"FUNC[@SRC][:RLN[+NUM|-RLN2]]|SRC[:ALN[+NUM|-ALN2]]"

Tinutukoy ng FUNC ang pangalan ng function ng pagpapakita ng mga linya. RLN ay ang numero ng panimulang linya mula sa
function entry line, at RLN2 ay ang numero ng linya ng pagtatapos. Katulad ng probe syntax, SRC paraan
ang landas ng source file, ALN ay numero ng linya ng pagsisimula, at ALN2 ay numero ng linya ng pagtatapos sa file.
Posible ring tukuyin kung gaano karaming mga linya ang ipapakita sa pamamagitan ng paggamit NUM. Bukod dito, FUNC@SRC
Ang kumbinasyon ay mabuti para sa paghahanap ng isang partikular na function kapag ang ilang mga function ay magkapareho
pangalan. Kaya, ang "source.c:100-120" ay nagpapakita ng mga linya sa pagitan ng ika-100 hanggang ika-20 sa source.c file. At
Ang "func:10+20" ay nagpapakita ng 20 linya mula sa ika-10 linya ng function ng func.

LAZY PAGKAKITA


Ang lazy line matching ay katulad ng glob matching ngunit binabalewala ang mga puwang sa parehong pattern at target. Kaya tumatanggap ito ng mga wildcard('*', '?') at mga klase ng character(hal. [az], [!AZ]).

hal a=* maaaring magkatugma a = b, a = b, a == b at iba pa.

Nagbibigay ito ng ilang uri ng flexibility at katatagan upang suriin ang mga kahulugan ng punto laban
maliit na pagbabago sa code. Halimbawa, ang aktwal na ika-10 linya ng iskedyul() ay madaling ilipat ng
pagbabago ng iskedyul(), ngunit ang parehong linya na tumutugma rq=cpu_rq* maaaring umiiral pa rin sa
function.)

FILTER PATTERN


Ang pattern ng filter ay isang (mga) pattern na tumutugma sa glob upang i-filter ang mga variable.
Bilang karagdagan, maaari mong gamitin ang "!" para sa pagtukoy ng filter-out na panuntunan. Maaari ka ring magbigay ng ilang panuntunan na sinamahan ng "&" o "|", at tiklop ang mga panuntunang iyon bilang isang panuntunan sa pamamagitan ng paggamit ng "(" ")".

hal. Sa --filter "foo* | bar*", perf probe -V ay nagpapakita ng mga variable na nagsisimula sa "foo" o
"bar". Gamit ang --filter "!foo* & *bar", perf probe -V ay nagpapakita ng mga variable na hindi nagsisimula sa
"foo" at nagtatapos sa "bar", tulad ng "fizzbar". Ngunit ang "foobar" ay na-filter out.

HALIMBAWA


Ipakita kung aling mga linya sa schedule() ang maaaring suriin:

./perf probe --iskedyul ng linya

Magdagdag ng probe sa schedule() function na ika-12 linya na may pagtatala ng lokal na variable ng cpu:

./perf probe schedule:12 cpu
or
./perf probe --add='schedule:12 cpu'

ito ay magdaragdag ng isa o higit pang mga probe na may pangalan na nagsisimula sa "iskedyul".

Magdagdag ng mga probe sa mga linya sa schedule() function na tumatawag sa update_rq_clock().

./perf probe 'iskedyul;update_rq_clock*'
or
./perf probe --add='schedule;update_rq_clock*'

Tanggalin ang lahat ng mga probe sa iskedyul().

./perf probe --del='schedule*'

Magdagdag ng mga probes sa zfree() function sa /bin/zsh

./perf probe -x /bin/zsh zfree o ./perf probe /bin/zsh zfree

Magdagdag ng mga probes sa malloc() function sa libc

./perf probe -x /lib/libc.so.6 malloc o ./perf probe /lib/libc.so.6 malloc

Gumamit ng perf-probe online gamit ang mga serbisyo ng onworks.net


Mga Libreng Server at Workstation

Mag-download ng Windows at Linux apps

Linux command

Ad




×
anunsyo
❤️Mamili, mag-book, o bumili dito — walang gastos, tumutulong na panatilihing libre ang mga serbisyo.