Přehled
Profilování je důležitým aspektem pro programátory, protože se jedná o proces, při kterém programátor zjistí vysoké využití paměti, vysoké využití procesoru, problémy se sítí atd.Na trhu jsou k dispozici různé profilovače a většina z nich jsou komerční verze.Komunita Eclipse má projekt s názvem Testovací a výkonová platforma nástrojů (TPTP), který to řeší. Zde se diskutuje pouze o profilovacím aspektu TPTP, avšak schopnost TPTP je mnohem více.TPTP
Tuto funkci lze použít k profilování místních aplikací Java nebo složitých aplikací spuštěných na více hostitelích a různých platformách.To je integrováno s Eclipse, což umožňuje profilování aplikací spuštěných z Eclipse.TPTP lze nainstalovat pomocí nástroje Eclipse Provisioning Manager nebo ručně stáhnout požadované balíčky TPTP a umístit jej do adresáře pluginů.Řadič agentů - Tento proces umožňuje klientským aplikacím lokálně nebo vzdáleně spouštět jiné aplikace a komunikovat s procesy agentů za účelem shromažďování dat profilování. Pokud se má v místní aplikaci Java použít TPTP, není tento samostatný řadič agenta vyžadován, protože TPTP je dodáván s řadičem Agent.Tři operace profilování, které jsou implementovány.- CGProf: Tato možnost profilování se používá k identifikaci úzkých míst výkonu rozdělením doby provádění na úrovni jednotlivých metod.
- HeapProf: Tato možnost umožňuje identifikovat obsah haldy sledováním přidělování a oddělování objektů po celou dobu životnosti programu.
- ThreadProf: Tato možnost profilování umožňuje sledovat využití podprocesů po celou dobu životnosti programu.
TPTP woks v perspektivě profilování a protokolování Eclipse.Analýza doby provedení
Tento aspekt TPTP poskytuje dobu provádění balíčků, tříd a metod pro analýzu To je užitečné při hledání bodů provedení, které spotřebovávají více času, než se očekávalo, což jsou potenciální překážky výkonu. Terminologie
Základní čas: Čas provedení obsahu samotné metody, s výjimkou volání jiných metod. (V grafu pole Base Time shrnula všechna volání této metody)Průměrný základní čas: Průměrný čas, který konkrétní metoda zabrala, s výjimkou doby volání metody jiným metodám. (V grafu je to základní čas dělený počtem hovorů)Kumulativní čas: Čas k provedení obsahu samotné metody, včetně volání jiných metod. Kroky:
Vyberte projekt a vyberte cestu uvedenou výše.Vyberte konfiguraci profilu, kterou chcete provést - Junit, Applet, Application nebo Server Project.Vyberte kartu Monitor a vyberte „Analýza doby provedení“.Klikněte na možnosti úprav a vyberte možnost „Shromáždit informace o čase CPU“. Analýza paměti
Tento aspekt TPTP poskytuje využití paměti balíčků, tříd a metod pro analýzu.To je užitečné při hledání bodů provedení, které spotřebovávají více paměti, než se očekávalo, což jsou potenciální případy úniku paměti. Terminologie
Živé instance: Počet instancí konkrétní třídy, které jsou stále živé v paměti (nebyly shromážděny nesmysly.)Aktivní velikost: Celkový počet bajtů v haldě, které v současné době spotřebovávají všechny živé instance.Celkový počet instancí: Celkový počet instancí této třídy, které byly vytvořeny během životnosti JVM (včetně smetí shromážděných objektů).Celková velikost: Celková velikost všech instancí této třídy, které byly vytvořeny během životnosti JVM (včetně smetí shromážděných objektů).Průměrný věk: Průměrný věk objektu před tím, než je odebrán odpad. Kroky:
Vyberte projekt a vyberte cestu uvedenou výše.Vyberte konfiguraci profilu, kterou chcete provést - Junit, Applet, Application nebo Server Project.Vyberte kartu Monitor a vyberte ‚Analýza paměti '.Klikněte na možnosti úprav a vyberte možnost „Sledovat stránky přidělení objektů“. Analýza závitu
Tento aspekt TPTP dává vláknu svolení balíčků, tříd a metod pro analýzu.To je užitečné při hledání bodů provádění, kde vlákno čeká na zdroje i po dokončení operace. Kroky:
Vyberte projekt a vyberte cestu uvedenou výše.Vyberte konfiguraci profilu, kterou chcete provést - Junit, Applet, Application nebo Server Project.Vyberte kartu Monitor a vyberte „Analýza závitu“.Klikněte na možnosti úprav a vyberte „Analýza sporů“. Klíčové body
K profilování aplikace lze také vložit vlastní sady sond.Analýza paměti poskytuje ukazatele na vysoké neobvyklé využití paměti, které by mohlo být možným kandidátem na únik paměti.Vysoké časy provádění tříd nebo metod jsou ukazatele na problémy s výkonem, které lze doladit.Tento příběh, „Profilování instalace pomocí platformy Eclipse Test and Performance Tools Platform (TPTP)“, byl původně publikován společností JavaWorld.