Profilering
Profilér dit system
Når Sysprof profilerer dit system, så optager det stakinformation for alle programmer som udføres, herunder Linux-kernen. Det kan nogle gange være forvirrende, hvis du kun vil se på en enkelt proces. Interagerer dit program ikke med værtssystemet, kan du med fordel bruge Sysprof til at starte en ny proces.
Sørg for at målknappen er indstillet til Alle processer og klik på Optag for at profilere hele systemet.
Du vil nu blive spurgt om at godkende adgang til at profilere systemet. Det kræves fordi Linux-kernens perf-implementering kræver root for at udføre profilering af hele systemet.
Under profileringssessionen kan du se antallet af sekunder, som profileringen har været aktiv. Klik på Optag-knappen igen for at stoppe profileringssessionen. Hvorefter kaldgrafen vises.
Hvis sysprof-programmet vises i din profileringskaldgraf, så kan du måske overveje at optage profileringssessionen med sysprof-cli. Det er et kommandolinjeprogram, som optager din profileringssession til disk, så du kan se på det på et senere tidspunkt.
Se fortolkning af resultater for mere vejledning.
Profilér en ny proces
Du kan tit have brug for at starte en ny proces for at profilere. Vælg først program-knappen øverst i optagelsesvinduet. Udfyld din kommando- og arbejdsmappe, og angiv eventuelt de miljøvariabler, du har brug for. Din proces startes, når optagelsen begynder.
Hvis du starter en proces som kræver adgang til din nuværende skærm såsom et GTK+-program, så sørg for at Nedarv nuværende miljø er indstillet.
Profilering med kommandolinjeværktøjet sysprof-cli
For minimal overhead kan du overveje at bruge sysprof-cli-kommandolinjeværktøjet. Når det køres uden argumenter, så optages hele systemet og outputtet gemmes i capture.syscap. Filen kan åbnes med Sysprof-programmet for at vise kaldgrafen.
Hvis du vil starte en ny proces, så brug sysprof-cli -- 'kommando' til at angive en kommando, som skal startes. Kommandoen nedarver det nuværende miljø.
Fortolkning af resultater
Profileringsresultaterne i Sysprof opdeles i 3 afsnit. Øverste til venstre er en liste over alle de funktioner, som er blevet profileret. De er sorteret efter hvor ofte, de blev kaldt under optagelsen.
Det er vigtigt at bemærke, at mængden af tid som blev brugt i hver funktion ikke optages. Det ville kræve en sporingsprofilering for at få en præcis optagelse. Procenten udregnes ved at fastslå, hvor ofte funktionen dukkede op i det nuværende stakspor når en prøve blev optaget.
Når en funktion er blevet valgt fra funktionslisten, så vises alle de optagede kaldere for funktionen nederst til venstre. De sorteres også efter procenten af prøvetagninger, som inkluderer funktionen i staksporet.
Til højre er alle efterkommerne af den valgte funktion. Du kan enten vælge en funktion fra funktionslisten eller kalderlisten.
Hvis du ser - - Context Switch - - i dine resultater, så betyder det, at programmet skiftede til eller fra Linux-kernen. Det kan der være mange årsager til såsom et syscall eller signal.