EngelsFransDuitsItaliaansPortugeesRussianSpaans

OnWorks-favicon

mips-linux-gnu-gprof - Online in de cloud

Voer mips-linux-gnu-gprof uit in OnWorks gratis hostingprovider via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht mips-linux-gnu-gprof die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


gprof - profielgegevens oproepgrafiek weergeven

KORTE INHOUD


gprof [ -[abcDhilLrsTvwxyz] ] [ -[ACEEfFJnNOpPqQZ][naam] ]
[ -L dirs ] [ -NS[num] ] [ -k van naar ]
[ -m min-telling ] [ -R map_file ] [ -t tafellengte ]
[ --[no-]annotated-source[=naam] ]
[ --[no-]exec-counts[=naam] ]
[ --[no-]plat profiel[=naam] ] [ --[geen-]grafiek[=naam] ]
[ --[geen-]tijd=naam] [ --alle regels ] [ --kort ]
[ --debug[=niveau] ] [ --functie-bestelling ]
[ --bestandsvolgorde map_file ] [ --directory-path=dirs ]
[ --display-unused-functions ] [ --file-format=naam ]
[ --file-info ] [ --help ] [ --line ] [ --inline-bestandsnamen ]
[ --min-count=n ] [ --no-static ] [ --print-path ]
[ --separate-files ] [ --static-call-graph ] [ --sum ]
[ --table-length=len ] [ --traditioneel ] [ --versie ]
[ --width=n ] [ --ignore-non-functions ]
[ --demangle[=STIJL] ] [ --no-demangle ]
[--external-symbol-table=naam]
[ beeldbestand ] [ profielbestand ... ]

BESCHRIJVING


"gprof" produceert een uitvoeringsprofiel van C-, Pascal- of Fortran77-programma's. Het effect van
aangeroepen routines is opgenomen in het profiel van elke beller. De profielgegevens zijn ingenomen
uit het oproepgrafiekprofielbestand (gmon.out standaard) die is gemaakt door programma's die
samengesteld met de -pg optie van "cc", "pc" en "f77". De -pg optie linkt ook in
versies van de bibliotheekroutines die zijn gecompileerd voor profilering. "Gprof" leest het gegeven
objectbestand (de standaard is "a.out") en legt de relatie tussen zijn symbooltabel
en het oproepgrafiekprofiel van gmon.out. Als er meer dan één profielbestand is opgegeven, wordt de
"gprof" output toont de som van de profielinformatie in de gegeven profielbestanden.

Als u gcc 2.95.x of 3.0 gebruikt om uw binaire bestanden te compileren, moet u mogelijk de
-fprofile-bogen naar de compile-opdrachtregel om de oproepgrafieken correct te laten zijn
opgeslagen in gmon.out.

"Gprof" berekent de hoeveelheid tijd die aan elke routine wordt besteed. Vervolgens zijn deze tijden
gepropageerd langs de randen van de oproepgrafiek. Cycli worden ontdekt, en oproepen in a
cyclus zijn gemaakt om de tijd van de cyclus te delen.

Uit de analyse zijn verschillende vormen van output beschikbaar.

Het plat profielen laat zien hoeveel tijd uw programma aan elke functie heeft besteed, en hoeveel
keer dat die functie werd aangeroepen. Als je gewoon wilt weten welke functies het meeste verbranden
de cycli, staat het hier beknopt vermeld.

Het Bellen diagram laat voor elke functie zien welke functies het hebben genoemd, welke andere functies
hij belde, en hoe vaak. Er is ook een schatting van hoeveel tijd er in is doorgebracht
de subroutines van elke functie. Dit kan suggesties doen voor plaatsen waar u zou kunnen proberen
elimineer functieaanroepen die veel tijd kosten.

Het geannoteerde (bron) listing is een kopie van de broncode van het programma, gelabeld met de
aantal keren dat elke regel van het programma is uitgevoerd.

OPTIES


Deze opties specificeren welke van de verschillende uitvoerformaten "gprof" moet produceren.

Veel van deze opties hebben een optionele symspec om functies op te geven die moeten worden opgenomen of
uitgesloten. Deze opties kunnen meerdere keren worden opgegeven, met verschillende symspecs, om
reeksen symbolen opnemen of uitsluiten.

Als u een van deze opties opgeeft, wordt de standaardwaarde (-p -q), waarmee een plat profiel wordt afgedrukt
en bel grafiekanalyse voor alle functies.

"-EEN[symspec]"
"--annotated-source[=symspec]"
Het -A optie zorgt ervoor dat "gprof" de geannoteerde broncode afdrukt. Indien symspec is gespecificeerd,
print output alleen voor overeenkomende symbolen.

"-B"
"--kort"
Indien de -b optie is gegeven, drukt "gprof" niet de uitgebreide blurbs af die proberen om
de betekenis van alle velden in de tabellen uitleggen. Dit is handig als u van plan bent
om de uitvoer af te drukken, of bent het beu om de blurbs te zien.

"-C[symspec]"
"--exec-counts[=symspec]"
Het -C optie zorgt ervoor dat "gprof" een aantal functies en het aantal keren afdrukt
elk werd genoemd. Indien symspec is opgegeven, drukt u alleen af ​​voor overeenkomende symbolen.

Als het profielgegevensbestand basisbloktellingsrecords bevat, specificeert u de -l keuze,
met -C, zorgt ervoor dat het aantal uitvoeringen van basisblokken wordt opgeteld en weergegeven.

"-IK"
"--bestandsinformatie"
Het -i optie zorgt ervoor dat "gprof" samenvattende informatie over de profielgegevens weergeeft
bestand(en) en sluit af. Het aantal histogrammen, oproepgrafieken en het aantal basisblokken
records wordt weergegeven.

"-L richt"
"--directory-path=richt"
Het -I optie specificeert een lijst met zoekmappen waarin de bronbestanden kunnen worden gevonden.
Omgevingsvariabele GPROF_PATH kan ook worden gebruikt om deze informatie over te brengen. Gebruikt
meestal voor geannoteerde bronuitvoer.

"-J[symspec]"
"--geen-geannoteerde-bron[=symspec]"
Het -J optie zorgt ervoor dat "gprof" de geannoteerde broncode niet afdrukt. Indien symspec is
gespecificeerd, drukt "gprof" de geannoteerde bron af, maar sluit overeenkomende symbolen uit.

"-L"
"--print-pad"
Normaal gesproken worden bronbestandsnamen afgedrukt met de padcomponent onderdrukt. De -L
optie zorgt ervoor dat "gprof" de volledige padnaam van bronbestandsnamen afdrukt, wat:
bepaald op basis van symbolische foutopsporingsinformatie in het afbeeldingsbestand en is relatief aan
de map waarin de compiler is aangeroepen.

"-P[symspec]"
"--plat-profiel[=symspec]"
Het -p optie zorgt ervoor dat "gprof" een plat profiel afdrukt. Indien symspec is opgegeven, print
vlak profiel alleen voor overeenkomende symbolen.

"-P[symspec]"
"--geen-plat-profiel[=symspec]"
Het -P optie zorgt ervoor dat "gprof" het afdrukken van een plat profiel onderdrukt. Indien symspec is
gespecificeerd, drukt "gprof" een plat profiel af, maar sluit overeenkomende symbolen uit.

"-Q[symspec]"
"--grafiek[=symspec]"
Het -q optie zorgt ervoor dat "gprof" de oproepgrafiekanalyse afdrukt. Indien symspec is
gespecificeerd, print oproepgrafiek alleen voor overeenkomende symbolen en hun kinderen.

"-Q[symspec]"
"--geen-grafiek[=symspec]"
Het -Q optie zorgt ervoor dat "gprof" het afdrukken van de oproepgrafiek onderdrukt. Indien symspec is
gespecificeerd, drukt "gprof" een oproepgrafiek af, maar sluit overeenkomende symbolen uit.

"-t"
"--table-length=nummer"
Het -t optie veroorzaakt de num meest actieve bronregels in elk te vermelden bronbestand
wanneer bronannotatie is ingeschakeld. De standaardwaarde is 10.

"-j"
"--aparte-bestanden"
Deze optie is alleen van invloed op geannoteerde bronuitvoer. Normaal wordt "gprof" geannoteerd afgedrukt
bronbestanden naar standaarduitvoer. Als deze optie is opgegeven, wordt de geannoteerde bron voor a
bestand met de naam pad/bestandsnaam wordt gegenereerd in het bestand bestandsnaam-ann. Als de onderliggende
bestandssysteem zou afkappen bestandsnaam-ann zodat het het origineel overschrijft bestandsnaam,
"gprof" genereert geannoteerde bron in het bestand bestandsnaam.ann in plaats daarvan (als het origineel
bestandsnaam heeft een extensie, die extensie is vervangen die al met Countr werken .ann).

"-Z[symspec]"
"--no-exec-counts[=symspec]"
Het -Z optie zorgt ervoor dat "gprof" geen telling van functies en het aantal keren afdrukt
elk werd genoemd. Indien symspec is opgegeven, drukt u de telling af, maar sluit u overeenkomende symbolen uit.

"-R"
"--functie-bestelling"
Het --functie-bestelling optie zorgt ervoor dat "gprof" een voorgestelde functievolgorde afdrukt
voor het programma op basis van profileringsgegevens. Deze optie suggereert een bestelling die kan
het paging-, tlb- en cachegedrag voor het programma verbeteren op systemen die ondersteuning bieden voor
willekeurige volgorde van functies in een uitvoerbaar bestand.

De exacte details van hoe je de linker dwingt om functies in een bepaalde volgorde te plaatsen
is systeemafhankelijk en valt buiten het bestek van deze handleiding.

"-R map_file"
"--bestandsvolgorde map_file"
Het --bestand-bestellen optie zorgt ervoor dat "gprof" een voorgestelde .o-linkregelvolgorde afdrukt
voor het programma op basis van profileringsgegevens. Deze optie suggereert een bestelling die kan
het gedrag van paging, tlb en cache voor het programma verbeteren op systemen die dit niet ondersteunen
willekeurige volgorde van functies in een uitvoerbaar bestand.

Gebruik van de -a argument wordt sterk aanbevolen bij deze optie.

Het map_file argument is een padnaam naar een bestand dat een functienaam aan het object geeft
bestandstoewijzingen. Het formaat van het bestand is vergelijkbaar met de uitvoer van het programma "nm".

c-parse.o:00000000 T yyparse
c-parse.o:00000004 C yyerrflag
c-lang.o:00000000 T may_objc_method_name
c-lang.o:00000000 T print_lang_statistics
c-lang.o:00000000 T herken_objc_keyword
c-decl.o:00000000 T print_lang_identifier
c-decl.o:00000000 T print_lang_type
...

Het creëren van een map_file typ met GNU "nm" een commando zoals "nm --extern-only
--alleen-gedefinieerde -v --print-bestandsnaam programmanaam".

"-T"
"--traditioneel"
Het -T optie zorgt ervoor dat "gprof" zijn uitvoer afdrukt in "traditionele" BSD-stijl.

"-w breedte"
"--breedte=breedte"
Stelt de breedte van de uitvoerlijnen in op breedte. Momenteel alleen gebruikt bij het afdrukken van de functie
index onderaan de oproepgrafiek.

"-x"
"--alle lijnen"
Deze optie is alleen van invloed op geannoteerde bronuitvoer. Standaard zijn alleen de regels bij de
begin van een basisblok worden geannoteerd. Als deze optie is opgegeven, wordt elke regel in
een basisblok wordt geannoteerd door de annotatie voor de eerste regel te herhalen. Dit
gedrag is vergelijkbaar met "tcov"'s -a.

"--demangle[=stijl]"
"--geen-demangle"
Deze opties bepalen of C++-symboolnamen moeten worden ontward bij het afdrukken
uitvoer. De standaard is om symbolen te ontmantelen. De optie "--no-demangle" kan worden gebruikt
ontmanteling uit te schakelen. Verschillende compilers hebben verschillende mangling-stijlen. De
optioneel demangling-stijlargument kan worden gebruikt om een ​​geschikte demangling te kiezen
stijl voor uw compiler.

Analyse Opties
"-een"
"--geen-statisch"
Het -a optie zorgt ervoor dat "gprof" het afdrukken van statisch gedeclareerde (private)
functies. (Dit zijn functies waarvan de namen niet als globaal worden vermeld, en die zijn
niet zichtbaar buiten het bestand/functie/blok waar ze zijn gedefinieerd.) Tijd doorgebracht in
deze functies, oproepen van/naar hen, enz., zullen allemaal worden toegeschreven aan de functie die:
werd direct ervoor in het uitvoerbare bestand geladen. Deze optie is van invloed op zowel de
vlak profiel en de oproepgrafiek.

"-C"
"--static-call-graph"
Het -c optie zorgt ervoor dat de oproepgrafiek van het programma wordt aangevuld met een heuristiek
die de tekstruimte van het objectbestand onderzoekt en functieaanroepen identificeert in de
binaire machinecode. Aangezien normale oproepgrafiekrecords alleen worden gegenereerd wanneer:
functies zijn ingevoerd, identificeert deze optie kinderen die hadden kunnen worden aangeroepen,
maar nooit waren. Aanroepen naar functies die niet zijn gecompileerd met profilering ingeschakeld zijn:
ook geïdentificeerd, maar alleen als er symbooltabelitems voor aanwezig zijn. Oproepen naar
dynamische bibliotheekroutines zijn meestal: geen gevonden met deze optie. Ouders of kinderen
geïdentificeerd via deze heuristiek worden aangegeven in de oproepgrafiek met oproeptellingen van 0.

"-NS"
"--negeer-niet-functies"
Het -D optie zorgt ervoor dat "gprof" symbolen negeert waarvan niet bekend is dat het functies zijn.
Deze optie geeft nauwkeurigere profielgegevens op systemen waarop dit wordt ondersteund
(Solaris en HPUX bijvoorbeeld).

"-k van naar"
Het -k optie stelt u in staat om alle bogen van overeenkomende symbolen uit de oproepgrafiek te verwijderen
symspec van aan die overeenkomende sympspec naar.

"-l"
"--lijn"
Het -l optie maakt line-by-line profilering mogelijk, waardoor histogramhits worden
in rekening gebracht op afzonderlijke broncoderegels, in plaats van op functies. Alleen deze functie
werkt met programma's die zijn gecompileerd door oudere versies van de "gcc"-compiler. Nieuwere versies
van "gcc" zijn ontworpen om in plaats daarvan met de tool "gcov" te werken.

Als het programma is gecompileerd met het tellen van basisblokken ingeschakeld, zal deze optie ook:
identificeren hoe vaak elke regel code is uitgevoerd. Terwijl line-by-line profilering
kan helpen te isoleren waar in een grote functie een programma zijn tijd doorbrengt, het ook
verhoogt de looptijd van "gprof" aanzienlijk en vergroot de statistische
onnauwkeurigheden.

"--inline-bestandsnamen"
Deze optie zorgt ervoor dat "gprof" het bronbestand afdrukt na elk symbool in zowel de flat
profiel en de oproepgrafiek. Het volledige pad naar het bestand wordt afgedrukt als het wordt gebruikt met de -L
optie.

"-m nummer"
"--min-count=nummer"
Deze optie is alleen van invloed op de uitvoer van het aantal uitvoeringen. Symbolen die minder dan . worden uitgevoerd
num tijden worden onderdrukt.

"-Nsymspec"
"--tijd=symspec"
Het -n optie zorgt ervoor dat "gprof", in zijn oproepgrafiekanalyse, alleen tijden propageert voor
symbolen die overeenkomen symspec.

"-Nsymspec"
"--geen-tijd=symspec"
Het -n optie zorgt ervoor dat "gprof", in zijn oproepgrafiekanalyse, geen tijden propageert voor
symbolen die overeenkomen symspec.

"-Sbestandsnaam"
"--external-symbol-table=bestandsnaam"
Het -S optie zorgt ervoor dat "gprof" een extern symbooltabelbestand leest, zoals:
/proc/kallsyms, in plaats van de symbolentabel uit het gegeven objectbestand te lezen (de
standaard is "a.out"). Dit is handig voor het profileren van kernelmodules.

"-z"
"--display-ongebruikte-functies"
Als je de -z optie, "gprof" zal alle functies in het platte profiel vermelden,
zelfs degenen die nooit werden geroepen, en die geen tijd in hen hadden doorgebracht. Dit is handig
in combinatie met de -c optie om te ontdekken welke routines nooit zijn aangeroepen.

Diversen Opties
"-NS[nummer]"
"--debug[=nummer]"
Het -d num optie specificeert foutopsporingsopties. Indien num is niet gespecificeerd, schakel alles in
debuggen.

"-H"
"--helpen"
Het -h optie drukt het gebruik van de opdrachtregel af.

"-Onaam"
"--file-format=naam"
Selecteert de indeling van de profielgegevensbestanden. Erkende formaten zijn: auto (De
standaard), bsd, 4.4bsd, magieen prof (nog niet ondersteund).

"-s"
"--som"
Het -s optie zorgt ervoor dat "gprof" de informatie in de profielgegevensbestanden samenvat
lees een profielgegevensbestand in en schrijf het uit met de naam gmon.sum, die alle bevat
informatie uit de profielgegevensbestanden die "gprof" inleest. Het bestand gmon.sum mogen
een van de opgegeven invoerbestanden zijn; het effect hiervan is om de gegevens samen te voegen in de
andere invoerbestanden in gmon.sum.

Uiteindelijk kunt u "gprof" opnieuw uitvoeren zonder -s om de cumulatieve gegevens in de
filet gmon.sum.

"-v"
"--versie"
Het -v flag zorgt ervoor dat "gprof" het huidige versienummer afdrukt en vervolgens afsluit.

Verouderd Opties
Deze opties zijn vervangen door nieuwere versies die symspecs gebruiken.

"-e functienaam"
Het -e functie optie vertelt "gprof" om geen informatie over de functie af te drukken
functienaam (en zijn kinderen...) in de oproepgrafiek. De functie is nog steeds:
vermeld als een kind van alle functies die het aanroepen, maar het indexnummer wordt weergegeven als:
[niet gedrukt]. Meer dan een -e optie kan worden gegeven; maar een functienaam kan zijn
aangegeven met elk -e optie.

"-E functienaam"
De "-E functie" optie werkt als de "-e" optie, maar tijd doorgebracht in de functie
(en kinderen die nergens anders vandaan zijn gebeld), worden niet gebruikt voor het berekenen van de
tijdspercentages voor de oproepgrafiek. Meer dan een -E optie kan worden gegeven; enkel en alleen
een functienaam kan bij elk worden aangegeven -E optie.

"-F functienaam"
Het -f functie optie zorgt ervoor dat "gprof" de oproepgrafiek beperkt tot de functie
functienaam en zijn kinderen (en hun kinderen...). Meer dan een -f optie kan
worden gegeven; maar een functienaam kan bij elk worden aangegeven -f optie.

"-F functienaam"
Het -F functie optie werkt als de "-f" optie, maar alleen tijd doorgebracht in de functie
en zijn kinderen (en hun kinderen...) zullen worden gebruikt om de totale tijd en
tijdspercentages voor de oproepgrafiek. Meer dan een -F optie kan worden gegeven; enkel en alleen
een functienaam kan bij elk worden aangegeven -F optie. De -F optie overschrijft de
-E optie.

Gebruik mips-linux-gnu-gprof online met onworks.net-services


Ad


Ad

Nieuwste Linux & Windows online programma's