<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="profiling" xml:lang="da">
    <info>
      <link type="guide" xref="index#profiling"/>
    
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>scootergrisen</mal:name>
      <mal:email/>
      <mal:years>2020</mal:years>
    </mal:credit>
  </info>
    <title>Profilering</title>
  <section id="system-profiling">
    <title>Profilér dit system</title>
    <p>Når <app>Sysprof</app> 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 <app>Sysprof</app> til at <link href="profiling#new-process-profiling">starte en ny proces</link>.</p>

    <p>Sørg for at målknappen er indstillet til <em>Alle processer</em> og klik på <em>Optag</em> for at profilere hele systemet.</p>

    <p>Du vil nu blive spurgt om at <em>godkende</em> adgang til at profilere systemet. Det kræves fordi Linux-kernens perf-implementering kræver root for at udføre profilering af hele systemet.</p>

    <p>Under profileringssessionen kan du se antallet af sekunder, som profileringen har været aktiv. Klik på <em>Optag</em>-knappen igen for at stoppe profileringssessionen. Hvorefter kaldgrafen vises.</p>

    <note>
      <p>Hvis <app>sysprof</app>-programmet vises i din profileringskaldgraf, så kan du måske overveje at optage profileringssessionen med <cmd>sysprof-cli</cmd>. Det er et kommandolinjeprogram, som optager din profileringssession til disk, så du kan se på det på et senere tidspunkt.</p>
    </note>

    <p>Se <link href="profiling#interpreting-results">fortolkning af resultater</link> for mere vejledning.</p>

  </section>

  <section id="new-process-profiling">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Profilér en ny proces</title>

    <p>Du kan tit have brug for at starte en ny proces for at profilere. Vælg først <em>program</em>-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.</p>

    <note>
      <p>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 <em>Nedarv nuværende miljø</em> er indstillet.</p>
    </note>

  </section>

  <section id="sysprof-cli">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Profilering med kommandolinjeværktøjet sysprof-cli</title>

    <p>For minimal overhead kan du overveje at bruge <cmd>sysprof-cli</cmd>-kommandolinjeværktøjet. Når det køres uden argumenter, så optages hele systemet og outputtet gemmes i <file>capture.syscap</file>. Filen kan åbnes med <app>Sysprof</app>-programmet for at vise kaldgrafen.</p>

    <p>Hvis du vil starte en ny proces, så brug <cmd>sysprof-cli -- 'kommando'</cmd> til at angive en kommando, som skal startes. Kommandoen nedarver det nuværende miljø.</p>

  </section>

  <section id="interpreting-results">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Fortolkning af resultater</title>

    <p>Profileringsresultaterne i <app>Sysprof</app> 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.</p>

    <note>
      <p>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.</p>
    </note>

    <p>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.</p>

    <p>Til højre er alle efterkommerne af den valgte funktion. Du kan enten vælge en funktion fra funktionslisten eller kalderlisten.</p>

    <note>
      <p>Hvis du ser <em>- - Context Switch - -</em> 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 <em>syscall</em> eller <em>signal</em>.</p>
    </note>

  </section>

</page>
