Úr Balázs
ur dot balazs at fsf dot hu 2023.

# Profilozás

# Hogyan kell profilozni a rendszert

Ha a Sysprof profilozza a rendszerét, akkor rögzíti az összes futó alkalmazás vereminformációját, beleértve a Linux rendszermagot is. Ez néha zavaró lehet, ha csak egyetlen folyamatot szeretne megnézni. Ha az alkalmazása nem lép túl gyakran kapcsolatba a gazdarendszerrel, akkor a Sysprof használatával nagyobb sikert érhet el egy új folyamat indításához.

A teljes rendszer profilozásához győződjön meg arról, hogy a célgomb Összes folyamat értékre van-e állítva, majd kattintson a Rögzítés gombra.

Ezen a ponton arra kérhetik, hogy engedélyezze a hozzáférést a rendszer profiljának elkészítéséhez. Erre azért van szükség, mert a Linux rendszermag perf megvalósítása rendszergazdai jogosultságot igényel a teljes rendszer profilozásának végrehajtásához.

A profilozási munkamenet közben látni fogja, hogy a profil hány másodpercig volt aktív. A Rögzítés gombra történő újbóli kattintás leállítja a profilozási munkamenetet. Ezt követően megjelenik a hívási gráf.

Ha azt veszi észre, hogy a sysprof alkalmazás megjelenik a profilozás hívási gráfjában, akkor érdemes megfontolni a profilozási munkamenetnek a sysprof-cli használatával való rögzítését. Ez egy parancssori program, amely rögzíti a profilozási munkamenetet a lemezre, hogy később megtekinthesse.

Nézze meg az eredmények értelmezése fejezetet a további útmutatásért.

# Új folyamat profilozása

Gyakran előfordulhat, hogy új folyamatot kell indítania a profilozáshoz. Először válassza ki az Alkalmazás gombot a rögzítési ablak teteje mellett. Töltse ki a parancsot és a munkakönyvtárat, és esetlegesen adja meg a szükséges környezeti változókat. A folyamat a rögzítés megkezdésekor elindul.

Ha olyan folyamatot indít, amely hozzáférést igényel az aktuális kijelzőhöz, például egy GTK+ alkalmazást, akkor győződjön meg arról, hogy a Jelenlegi környezet öröklése be van-e állítva.

# Profilozás a sysprof-cli parancssori eszközzel

A legkisebb többletterhelés érdekében érdemes megfontolni a sysprof-cli parancssori eszköz használatát. Argumentumok nélkül futtatva az egész rendszert rögzíti, és a kimenetet a capture.syscap fájlba menti. Ez a fájl a Sysprof alkalmazással nyitható meg a hívási gráf megtekintéséhez.

Ha új folyamatot szeretne indítani, akkor használja a sysprof-cli -- 'parancs' parancsot az indítandó parancs megadásához. A parancs örökölni fogja az aktuális környezetet.

# Eredmények értelmezése

A profilozás eredményei a Sysprof alkalmazásban három szakaszra vannak osztva. Bal felül található az összes profilozott függvény listája. Ezek aszerint vannak rendezve, hogy milyen gyakran hívták őket a rögzítés során.

Fontos megjegyezni, hogy az egyes függvényekben eltöltött idő nem kerül rögzítésre. Ennek pontos rögzítéséhez egy nyomkövetési profilozóra lenne szükség. A százalékos arány kiszámítása annak meghatározásával történik, hogy az adott függvény milyen gyakran jelent meg az aktuális veremkiírásban, amikor egy minta rögzítésre került.

Miután kiválasztott egy függvényt a függvénylistából, az adott függvény összes rögzített hívója megjelenik a bal alsó sarokban. Ezek szintén aszerint vannak rendezve, hogy a minták hány százaléka tartalmazta az adott függvényt a veremkiírásban.

A jobb oldalon a kiválasztott függvény összes leszármazottja látható. Egy függvényt vagy a függvények listájából, vagy a hívók listájából választhat ki.

Ha a - - Környezetváltás - - sort látja az eredményekben, akkor az azt jelenti, hogy az alkalmazás a Linux rendszermagba vagy a Linux rendszermagból lépett át. Ennek számos oka lehet, például egy syscall vagy egy signal hívás.