<?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="ca">
    <info>
      <link type="guide" xref="index#profiling"/>
    
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Benet (BennyBeat) R. i Camps</mal:name>
      <mal:email>benet@softcatala.org</mal:email>
      <mal:years>2021</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Maite Guix</mal:name>
      <mal:email>maite.guix@me.com</mal:email>
      <mal:years>2021</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Victor Dargallo</mal:name>
      <mal:email>victordargallo@disroot.org</mal:email>
      <mal:years>2025</mal:years>
    </mal:credit>
  </info>
    <title>Utilitzar l'analitzador de rendiment</title>
  <section id="system-profiling">
    <title>Com analitzar el rendiment el sistema</title>
    <p>Quan el <app>Sysprof</app> perfila el sistema, registra la informació de la pila per a totes les aplicacions que s'executen, inclòs el nucli Linux. De vegades, això pot resultar confús si només voleu examinar un sol procés. Si la vostra aplicació no interactua gaire amb el sistema amfitrió, és possible que tingueu més èxit en utilitzar el <app>Sysprof</app> per a <link href="profiling#new-process-profiling">generar un procés nou</link>.</p>

    <p>Per a analitzar el rendiment de tot el sistema, assegureu-vos que el botó de destinació s'ha definit a <em>Tots els processos</em> i feu clic a <em>Enregistra</em>.</p>

    <p>Aleshores, se us pot demanar que <em>autoritzeu</em> l'accés per a analitzar el rendiment del sistema. Això és necessari, atès que la implementació del nucli Linux de «perf» requereix permisos de superusuari per a analitzar el rendiment de tot el sistema.</p>

    <p>Durant la sessió d'anàlisis del rendiment, se us mostrarà la quantitat de segons que  l'analitzador de rendiment ha estat actiu. En tornar a fer clic al botó <em>Enregistra</em>, s'aturarà la sessió de l'analitzador de rendiment, per a mostrar el callgraph.</p>

    <note>
      <p>Si l'aplicació <app>sysprof</app> apareix al callgraph de l'analitzador de rendiment, és recomanable que deseu la sessió de l'analitzador de rendiment amb <cmd>sysprof-cli</cmd>. És un programa de la línia d'ordres que capturarà la sessió de l'analitzador de rendiment al disc per a veure-la posteriorment.</p>
    </note>

    <p>Veieu <link href="profiling#interpreting-results">interpretant els resultats</link> per a més informació.</p>

  </section>

  <section id="new-process-profiling">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Analitzar el rendiment d'un procés nou</title>

    <p>Sovint, és possible que hàgeu de generar un nou procés per a analitzar el rendiment. Primer, seleccioneu el botó <em>Aplicació</em> que hi ha a la part superior de la finestra d'enregistrament. Empleneu la vostra ordre i el vostre directori de treball, i opcionalment especifiqueu qualsevol variable d'entorn que necessiteu. El vostre procés s'iniciarà quan comenci l'enregistrament.</p>

    <note>
      <p>Quan genereu un procés que requereix accés a la pantalla actual, com ara una aplicació GTK+, assegureu-vos que s'ha configurat <em>Hereta l'entorn actual</em>.</p>
    </note>

  </section>

  <section id="sysprof-cli">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Analitzar el rendiment amb l'eina de línia d'ordres sysprof-cli</title>

    <p>Per a una despesa general mínima, és recomanable utilitzar l'eina de línia d'ordres <cmd>sysprof-cli</cmd>. Si s'executa sense arguments, enregistrarà tot el sistema i desarà la sortida a <file>capture.syscap</file>. Aquest fitxer es pot obrir amb l'aplicació <app>Sysprof</app> per a veure el callgraph.</p>

    <p>Si voleu generar un procés nou, utilitzeu <cmd>sysprof-cli -- 'command'</cmd> per a especificar una ordre que s'iniciarà. L'ordre heretarà l'entorn actual.</p>

  </section>

  <section id="interpreting-results">
    <info>
      <link type="guide" xref="index#profiling"/>
    </info>
    <title>Interpretació de resultats</title>

    <p>Els resultats de l'analitzador de rendiment a <app>Sysprof</app> es divideixen en tres seccions. A la part superior esquerra hi ha una llista de totes les funcions perfilades. Estan ordenats segons la freqüència amb què es van cridar durant l'enregistrament.</p>

    <note>
      <p>És important tenir en compte que la quantitat de temps dedicat a cada funció no es captura. Això requeriria un analitzador de rendiment de seguiment per a enregistrar amb precisió. El percentatge es calcula determinant la freqüència amb què es va mostrar aquesta funció al seguiment de pila actual quan es va enregistrar una mostra.</p>
    </note>

    <p>Després de seleccionar una funció de la llista de funcions, es mostraran a la part inferior esquerra totes crides en funció d'aquesta funció. També s'ordenen pel percentatge de mostres que van incloure aquesta funció al seguiment de pila.</p>

    <p>A la dreta, es mostren tots els descendents d'una funció seleccionada. Podeu seleccionar una funció de la llista de funcions o de la llista de crides.</p>

    <note>
      <p>Si veieu <em>- - Canvi de context - -</em> als vostres resultats, vol dir que l'aplicació ha passat al nucli o des del nucli Linux. Pot haver-hi molts motius, com ara una <em>crida al sistema</em> o <em>senyal</em>.</p>
    </note>

  </section>

</page>
