Výukový program: Analýza profilovacích dat
Cíle
Analyzovat data shromážděná z profilovaného procesu Java pomocí pohledů Profilování a protokolování perspektivy Profilování a protokolování následujícími způsoby:
- Identifikovat objekty a metody, které spotřebují většinu času
- Identifikace tříd náročných na paměť
- Změřit souběžnost programu
- Vyhledat úniky paměti
- Procházet každým provedením metody jako funkcí času
- Získat širší pohled na chování při provádění jako funkci času
- Identifikace aktivních jednotkových procesů
- Identifikovat, kdy jsou jednotkové procesy aktivní
- Identifikovat často volané metody
- Změřit čištění paměti
- Identifikovat různé fáze provádění programu
- Studovat různá vyvolání metody
- Studovat volajícího metody
Čas nezbytný
1 hodina
Než začnete
Než spustíte tento výukový program, musíte:
- Nainstalujte modul Eclipse Platform včetně platformy Test and Performance Tools Platform (TPTP).
- Mějte ukázkový soubor profilování (hcframe.jar) připraven k importu. Soubor by měl být v následujícím adresáři:
TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0
Popis
V tomto výukovém programu použijete různé pohledy Profilování a protokolování k analýze ukázkové PerformanceExample.class. Ukázka otevře rám obsahující dvě tlačítka.
Splníte následující úkoly:
- Otevření perspektivy Profilování a protokolování na pracovní ploše
- Profilování třídy PerformanceExample
- Analýza informací o profilu
Pro aktualizaci pohledů během monitorování aplikace klepněte na tlačítko Obnovit pohledy
.
V nabídce Okno klepněte na Otevřít perspektivu > Další > Profilování a protokolování.
Chcete-li profilovat třídu PerformanceExample, proveďte následující kroky:
- Klepněte na rozevírací nabídku Profil
a zvolte Profil. Otevře se dialogové okno Spustit profil.
- Poklepejte na Externí aplikace Java, abyste vytvořili novou konfiguraci.
- Přepněte na kartu Hlavní.
- Napište org.eclipse.hyades.test.collection.framework.PerformanceExample do pole Název třídy.
- Klepněte na Přidat soubor JAR, abyste přidali soubor jar, který tuto třídu obsahuje.
- Vyberte TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0\hcframe.jar
- Klepněte na Otevřít. Soubor JAR je přidán.
- Klepněte na kartu Monitor. V této kartě můžete zadat kritéria profilování.
- Na kartě Monitor rozbalte uzel označený Profilování Java, vyberte Základní paměťová analýza a zaškrtněte políčko vedle. Tím se přidají informace týkající se paměti do seznamu typů informací, které by se měly shromažďovat z aplikace.
- Vyberte Analýza času provádění a zaškrtněte políčko vedle. S touto vybranou volbou můžete použít statistické pohledy k analýze informací týkajících se času. Musíte shromáždit grafické podrobnosti o provedení, abyste mohli použít pohledy Postup provádění a Vyvolání metod. Protože účelem této ukázky je provést vás všemi pohledy Profilování včetně pohledu Postup provádění a Vyvolání metody, vyberte Analýza času provádění, klepněte na Upravit volby, vyberte Zobrazit grafické podrobnosti postupu provádění v dialogovém okně Upravit volby profilování.
Klepněte rovněž na zaškrtávací políčko Shromažďovat hraniční třídy vyloučené sadou filtrů a nastavte Hloubka hraničních tříd na 1. Klepněte na Dokončit.
- Sada profilovacích filtrů poskytuje možnost zadat podmnožinu informací, které byste chtěli analyzovat. To je užitečné, když chcete odfiltrovat třídy nebo balíčky, které nejsou v mezích toho, co chcete analyzovat.
Vyberte kolektor dat Profilování Java a klepněte na Upravit volby, otevře se dialogové okno Sada filtrů. Pod Obsah vybrané sady filtrů klepněte na Přidat, abyste přidali třídy a balíčky, pro které chcete shromažďovat data.
Otevře se dialogové okno Přidat filtr.
- Pro profilování této třídy zadejte org.eclipse.hyades.test.collection.framework.* jako Třída.
- Určete Název metody jako *, abyste zahrnuli pouze metody týkající se tohoto příkladu.
-
Klepněte na OK.Do seznamu obsahu se přidá kritérium filtru.
- Abyste vyloučili další stávající třídy ze seznamu obsahu filtrů, klepněte na Zahrnout ve
sloupci Pravidlo pro tuto třídu a změňte je na Vyloučit.
- Klepnutím na Další přejdete na stránku Omezení. Tato stránka řídí množství dat, která se shromažďují, buďto na základě uplynulého času nebo na základě počtu vyvolání metody. Přijměte výchozí nastavení. Klepnutím na Dokončit provedete zavření a uplatníte provedené změny.
- Klepněte na kartu Místo určení. Výchozími prostředky profilování jsou ProfileProject a Default Monitor a ty mohou být použity k ukládání dat z této relace profilování.
- Klepněte na Profil.
- Vytvoří se potřebné prostředky profilování a v pohledu Monitor profilování se zobrazí agent a proces.
- Zpřístupněte zobrazení monitorů výběrem Distribuované rozvržení, jak je ukázáno v následujícím snímku obrazovky. Toto vám umožňuje sledovat monitor, který seskupuje vaše údaje, a také počítač, na kterém máte spuštěnou pracovní plochu.

Pohled na chování při provádění během časového období
Můžete zkoumat provádění aplikace pomocí Pohledu a tabulky postupu provádění. V tomto pohledu je reprezentováno provádění celého programu graficky a ve formátu tabulky. V pohledu Postup provádění je čas zobrazen na vertikální ose. Tabulka Postup provádění je otevřena pod pohledem Postup provádění a uvádí každý jednotkový proces a metody volané každým jednotkovým procesem.
- V pohledu Monitor profilování vyberte svůj monitor, klepněte na něj pravým tlačítkem myši a výběrem Otevřít pomocí > Postup provádění otevřete pohled Postup provádění. Otevře se pohled Postup provádění.
- Chcete-li prozkoumat určitou metodu, klepněte na metodu, abyste ji vybrali. Všechny její volané metody se pak zvýrazní žlutě. Vertikální délka zvýrazněné oblasti značí základní čas metody.
Přesná hodnota základního času se zobrazuje ve stavovém řádku.

Při pohybu kurzoru nad libovolný objekt v pohledu se zobrazí podrobné informace ve stavovém řádku v dolní části okna.
- Použijte nástroj Zvětšit
, abyste zpřístupnili kurzor, potom ukažte a klepněte, abyste oblast zvětšili.
Poznámka: Pro aktualizaci pohledů během monitorování aplikace klepněte na tlačítko Obnovit pohledy
.
Identifikace aktivních jednotkových procesů
V pohledu Postup provádění každý jednotkový proces obsahuje období aktivity, která jsou identifikována četnými voláními metody. V symbolické reprezentaci je první volaná metoda proužek a metody, které následně volá, se objeví jako další proužky vpravo od ní. Posloupnost volání metody postupuje zleva doprava; aktivní části jednotkového procesu jsou identifikovány tímto postupem zleva doprava.
Když vyberete celou sekci ohraničující posloupnost volání metody, základní čas, který uplyne při provádění této posloupnosti, se zobrazuje ve stavovém řádku. Abyste viděli základní čas, po který je jednotkový proces aktivní, najděte rozdíl mezi následujícími časy:
- Ukažte na horní vodorovný řádek vybrané žluté oblasti, abyste zobrazili příslušný základní čas ve stavovém řádku.
- Podobně ukažte na dolní okraj žluté vybrané oblasti (která pokrývá období provádění, kdy je posloupnost metody činná) a podívejte se na základní čas v tomto bodě.
Tipy
- Pokud je graf příliš přehuštěný a obtížně čitelný, zvětšete
přehuštěnou oblast.
- Když vyberte metodu, všechny metody volané touto metodou se zvýrazní žlutě.
- Pohledy můžete na pracovní ploše přetáhnout a uspořádat je podle potřeby souběžně.
- Kamkoli ukážete kurzorem myši, na stavovém řádku se zobrazí odpovídající základní čas.
- Chcete-li vynulovat zobrazení pohledu, klepněte na tlačítko Domů.
Identifikovat často volané metody
Chcete-li identifikovat často volané metody:
- Použijte nástroj Zvětšit
, abyste zvětšili posloupnost volání metody.
- Ve vybrané oblasti vyhledejte proužky se stejnou barvou. Tyto proužky identifikují metody ze stejné instance třídy, které byly volány víckrát.
- Zkontrolujte délku proužků různých barev (každý u nich reprezentuje metodu). Čím delší je proužek, tím delší je čas provádění této metody.
Změřit čištění paměti
Prohlížením proužků v uživatelově jednotkovém procesu v tomto pohledu obvykle není možné říci, že došlo k čištění paměti pro objekt.
Proveďte následující kroky:
- Ve výchozím nastavení je jednotkový proces čištění paměti skryto. Zpřístupníte je výběrem Jednotkové procesy > Čištění paměti v nabídce pohledu Kontext.
- Zkontrolujte sloupec, který je v tomto pohledu nejdál vlevo. Tento sloupec je rezervován pro jednotkový proces čištění paměti a nazývá se sloupcem Jednotkový proces GC.
- Zkontrolujte, zda je ve sloupci Jednotkový proces GC jediný úzký obdélník. Obdélník bude pravděpodobně umístěn hodně dole pro většinu volání metody v objektu. Tento obdélník se ve sloupci Jednotkový proces GC zobrazí, kdykoli dojde k čištění paměti pro objekt.
Identifikace fází provedení programu
Identifikace inicializační fáze
- Použijte nástroj Zvětšit
, abyste zvětšili posloupnost volání metody v horní části hlavního jednotkového procesu.
- Všimněte si metod označených jako -init-.
- Klepnutím vyberte takovou metodu. Stavový pruh se aktualizuje, aby indikoval, že metoda pomáhá při inicializaci
(přiřazení hodnot proměnným použitým v aplikaci).
Analýza metod pomocí pohledu Vyvolání metod
- Z Monitoru profilování vyberte buďto monitor nebo agenta. Klepněte pravým tlačítkem myši a vyberte Otevřít pomocí > Postup provádění. Zobrazí se pohled Postup provádění.
- Vyberte metodu, kterou chcete studovat, klepněte pravým tlačítkem myši a vyberte Zobrazit vyvolání metod.
- Použijte nástroj Zvětšit
, abyste zvětšili část zobrazení. Proužky jsou barevně kódovány podle tříd a jsou spojeny vodorovnými čarami, které reprezentují volání metod.
- Vyberte metodu klepnutím na její název.
- Klepněte na tlačítko Obnovit pohledy .
, abyste zajistili, že budete prohlížet aktuální informace.
- Všimněte si řádku:

Tento řádek zobrazuje název metody následovaný n/m, kde
n je vyvolání, které je aktuálně zobrazeno z celkového počtu
m jejích vyvolání.
- Klepnutím na Předchozí
a Další
procházejte mezi všemi vyvoláními vybrané metody (nebo každé zprávy k vybranému objektu). Zlomek na panelu nástrojů se mění podle toho, které vyvolání právě zobrazujete.
Nalezení volajícího metody
Abyste zjistili, co metodu volá, postupujte podle následujících kroků pokračujících v pohledu Vyvolání metod:
- Pro prohlížení volajícího metody klepněte na tlačítko Zobrazit volajícího
. Zobrazí se metoda společně s volajícím nalevo od ní.
- Pokud chcete zobrazit další podrobnosti o volajícím metody pro každé nové vyvolání, které se zobrazuje, umístěte kurzor nad proužek představující volajícího v pohledu. Stavový řádek zobrazí informace o volajícím.
- Chcete-li zobrazit metodu, kterou vybraná metoda volá, klepněte na tlačítko Zobrazit volanou metodu
.
(C) Copyright IBM Corporation 2000, 2006.