Opetusohjelma: Profilointitietojen analysointi

Tavoitteet

Voit analysoida Java-prosessin profiloinnista kerättyjä tietoja käyttämällä profilointi- ja kirjausperspektiivin profilointi- ja kirjausnäkymiä seuraavasti:

Aikavaatimus

1 tunti

Alkutoimet

Ennen kuin aloitat tämän opetusohjelman, tee seuraavat toimet:

  1. Asenna Eclipse-ympäristö mukaan luettuna TPTP (Test and Performance Tools Platform) -ympäristö.
  2. Pidä esimerkkiohjelman profilointitiedosto (hcframe.jar) valmiina tuontia varten. Tiedoston pitäisi sijaita seuraavassa hakemistossa:
    TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0

Kuvaus

Tässä opetusohjelmassa käytetään eri profilointi- ja kirjausnäkymiä esimerkkiohjelman PerformanceExample.class-luokan analysointiin. Esimerkkiohjelma avaa kaksi painiketta sisältävän kehyksen.

Toteutat seuraavat tehtävät:

  1. Profilointi- ja kirjausperspektiivin avaus työympäristössä
  2. PerformanceExample-luokan profilointi
  3. Profilointitietojen analysointi

Voit päivittää näkymät sovelluksen valvonnan aikana napsauttamalla Verestä näkymät -painiketta painike, jossa on tyylitelty kuvake.

Profilointi- ja kirjausperspektiivin avaus työympäristössä

Valitse vaihtoehdot Ikkuna-valikon vaihtoehdot Avaa perspektiivi > Muu > Profilointi ja kirjaus.

PerformanceExample-luokan profilointi

Voit profiloida PerformanceExample-luokan seuraavasti:

  1. Valitse avattava Profiili-luettelopainike, jossa on tyylitelty kuvake ja valitse vaihtoehto Profiili. Profiilin aloituksen valintaikkuna avautuu.
  2. Luo uusi määritys kaksoisnapsauttamalla Ulkoinen Java-sovellus -painiketta.
  3. Siirry päävälilehteen.
  4. Kirjoita Luokan nimi -kenttään org.eclipse.hyades.test.collection.framework.PerformanceExample.
  5. Lisää tämän luokan sisältävä JAR-tiedosto valitsemalla vaihtoehto Lisää JAR-tiedosto.
  6. Valitse vaihtoehto TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0\hcframe.jar.
  7. Napsauta Avaa-painiketta. JAR-tiedosto lisätään.
  8. Napsauta Valvontaohjelma-välilehteä. Voit määrittää profilointiehdot tässä välilehdessä.
  9. Laajenna Valvontaohjelma-välilehdessä Java-profilointi-solmu, valitse vaihtoehto Perusmuistin analyysi ja valitse sen vieressä oleva valintaruutu. Toiminto lisää muistiin liittyvät tiedot niiden tietolajien luetteloon, joita tulee kerätä sovelluksesta.
  10. Valitse vaihtoehto Toteutuksen ajan analyysi ja valitse sen vieressä oleva valintaruutu. Kun tämä vaihtoehto on valittuna, voit analysoida aikaan liittyviä tietoja tilastotietonäkymien avulla. Toteutuksen vuonäkymän ja metodin kutsunäkymän käyttö edellyttää toteutuksen graafisten tietojen keruuta. Koska tämän mallin tarkoituksena on johdattaa sinut kulkemaan kaikkien profilointinäkymien kautta, joihin sisältyvät Toteutuksen vuo- ja Metodin kutsu -näkymät, niin valittuasi vaihtoehdon Toteutuksen ajan analyysi napsauta Muokkaa asetuksia -painiketta ja valitse Näytä toteutuksen vuotietojen graafiset tiedot -vaihtoehto Muokkaa profilointiasetuksia -valintaikkunassa. Valitse myös Kerää suodatinjoukon poisrajaamat rajaluokat -valintaruutu ja aseta Rajaluokan syvyys -kentän arvoksi 1. Napsauta Valmis-painiketta.
  11. Suodatinjoukon profiloinnin avulla on mahdollista määrittää analysoitavien tietojen alijoukko. Tämä on hyödyllistä, jos haluat suodattaa luokkia tai paketteja, jotka eivät sisälly analysoitaviin tietoihin.
    Valitse Java-profilointi-tiedonkeräin ja napsauta Muokkaa asetuksia -painiketta, jolloin Suodatinjoukko-valintaikkuna avautuu. Lisää luokkia tai paketteja, joita varten haluat kerätä tietoja, valitsemalla Valitun suodatinjoukon sisältö -kohdan Lisää-painiketta. Suodattimen lisäys -valintaikkuna avautuu.
  12. Voit profiloida tämän luokan kirjoittamalla Luokka-kenttään org.eclipse.hyades.test.collection.framework.*.
  13. Sisällytä vain tähän esimerkkiin liittyvät metodit määrittämällä Metodin nimi -kenttään *.
  14. Napsauta OK-painiketta. Suodatusperuste lisätään sisältöluetteloon.
  15. Voit jättää pois muita aiemmin luotuja luokkia suodatinten sisältöluettelosta napsauttamalla luokan Sääntö-sarakkeen Sisällytä-painikettaja muuttamalla sen arvoksi Älä sisällytä.
  16. Voit siirtyä Rajat-sivulle napsauttamalla Seuraava-painiketta. Tällä sivulla säädellään kerättävien tietojen määrää joko kuluneen ajan perusteella tai metodikutsujen määrän perusteella. Hyväksy oletusarvot. Napsauta Valmis-painiketta, niin ikkuna sulkeutuu ja tehdyt muutokset tulevat voimaan.
  17. Napsauta Kohde-välilehteä. ProfileProject ja oletusvalvontaohjelma ovat oletusprofilointiresursseja, ja niiden avulla voidaan tallentaa tämän profilointi-istunnon tietoja.
  18. Valitse vaihtoehto Profiili.
  19. Tarvittavat profilointiresurssit luodaan ja agentti sekä prosessi tulevat näkyviin Profiloinnin valvontaohjelma -näkymään. 
  20. Ota valvontaohjelmien näkymät käyttöön valitsemalla vaihtoehto Hajautettu asettelu , kuten seuraavassa näyttökuvassa on esitetty. Vaihtoehdon avulla voit nähdä valvontaohjelman, joka ryhmittelee tiedot, sekä koneen, jossa työympäristöä ajetaan.

    Profiloinnin valvontaohjelma, jossa näkyvät resurssien hierarkia sekä avattava valikko piilotettavien resurssien tarkistusta varten

Profilointitietojen analysointi

Toteutustoiminnon tarkastelu tietyllä aikavälillä

Voit tutkia sovelluksen toteutusta toteutuksen vuonnäkymän ja -taulukon avulla. Koko ohjelman toteutus on esitetty tässä näkymässä graafisesti ja taulukkomuodossa. Toteutuksen vuonäkymässä aika on esitetty pystyakselilla. Toteutuksen vuotaulukko avautuu toteutuksen vuonäkymän alapuolelle, ja taulukossa on lueteltu kaikki säikeet sekä kunkin säikeen kutsumat metodit.

  1. Valitse Profiloinnin valvontaohjelma -näkymässä valvontaohjelma, napsauta hiiren kakkospainiketta ja avaa toteutuksen vuonäkymä valitsemalla vaihtoehdot Avaa seuraavan kohteen avulla > Toteutuksen vuo. Toteutuksen vuonäkymä avautuu.
  2. Voit tutkia tiettyä metodia valitsemalla metodin valitsemalla sitä. Kaikki sen kutsutut metodit korostetaan keltaisella. Korostetun alueen pituus pystysuunnassa ilmaisee metodin perusajan. Perusajan tarkka arvo näkyy tilarivillä.

    Toteutuksen vuonäkymä, jossa on kaksi metodia

    Kun siirrät kohdistimen minkä tahansa näkymässä olevan objektin päälle, ikkunan alareunassa olevalla tilarivillä näkyvät kohteen tarkat tiedot.

  3. Ota kohdistin käyttöön Lähennä-työkalun  painike, jossa on tyylitelty kuvake avulla, ja suurenna alue osoittamalla ja napsauttamalla sitä. 

Huomautus: Voit päivittää näkymät sovelluksen valvonnan aikana napsauttamalla Verestä näkymät -painiketta painike, jossa on tyylitelty kuvake.

Käytössä olevien säikeiden tunnistus

Toteutuksen vuonäkymässä kukin säie sisältää toimintajaksoja, jotka tunnistetaan lukuisista metodien kutsuista. Symbolisessa esityksessä ensimmäinen kutsuttu metodi on raita ja metodit, joita metodi kutsuu järjestyksessä seuraavaksi, näkyvät muina raitoina ensimmäisen raidan oikealla puolella. Metodikutsujen järjestys etenee vasemmalta oikealle; säikeen käytössä olevat osat tunnistetaan tämän vasemmalta oikealle tapahtuvan etenemisen avulla.

Kun valitset koko metodikutsujen järjestystä kuvaavan osan, kyseisen järjestyksen toteutukseen kulunut perusaika näkyy tilarivillä. Jos haluat nähdä aktiivisen säikeen perusajan, selvitä seuraavan kahden ajan välinen ero:

  1. Tuo vastaava perusaika näkyviin tilariville osoittamalla valitun keltaisen alueen vaakasuuntaista yläviivaa.
  2. Osoita vastaavasti valitun keltaisen alueen (joka kattaa toteutusajan, kun metodin toteutusjärjestys on toiminnassa) alareunaa ja tarkastele siinä näkyvää perusaikaa.

Vihjeitä

Usein kutsuttujen metodien tunnistus

Voit tunnistaa usein kutsutut metodit seuraavasti:

  1. Laajenna metodikutsujen sarja Lähennä-työkalun painike, jossa on tyylitelty kuvake avulla.
  2. Etsi valitulta alueelta samanvärisiä raitoja. Nämä raidat esittävät saman luokkailmentymän metodeja, joita on kutsuttu useita kertoja.
  3. Tarkista eriväristen raitojen (joista kukin esittää metodia) pituus. Mitä pidempi raita, sitä pidempi on kyseisen metodin toteutusaika.

Siivouksen mittaus

Tavallisesti on mahdotonta päätellä, onko objektin siivous toteutettu, tutkimalla tämän näkymän käyttäjäsäikeiden raitoja.

Toimi seuraavasti:

  1. Siivoussäie on oletusarvon mukaan piilotettu. Ota se käyttöön valitsemalla näkymän pikavalikosta vaihtoehdot Säikeet > Siivous.
  2. Tarkista tämän näkymän vasemmanpuoleisin sarake. Tämä sarake on varattu siivoussäiettä varten, ja sitä kutsutaan Siivoussäie-sarakkeeksi.
  3. Tarkista, onko Siivoussäie-sarakkeessa yksi ohut suorakulmio. Suorakulmio sijaitsee luultavasti reilusti useimpien objektin metodikutsujen alapuolella. Tämä suorakulmio tulee näkyviin Siivoussäie-sarakkeeseen aina, kun objektin siivous on toteutettu.

Ohjelman toteutusvaiheiden tunnistus

Alustusvaiheen tunnistus

  1. Laajenna pääsäikeen yläreunassa olevien metodikutsujen sarja Lähennä-työkalun painike, jossa on tyylitelty kuvake avulla.
  2. Pane merkille metodit, jotka on merkitty tekstillä -init-.
  3. Valitse tällainen metodi napsauttamalla. Tilarivi päivittyy ilmaisemaan, että metodi avustaa alustuksessa (arvojen määritys sovelluksessa käytettäville muuttujille).

Metodien analysointi metodin kutsunäkymän avulla

  1. Valitse profiloinnin valvontaohjelmasta joko valvontaohjelma tai agentti. Napsauta hiiren kakkospainiketta ja valitse vaihtoehdot Avaa seuraavan kohteen avulla > Toteutuksen vuo. Toteutuksen vuonäkymä avautuu.
  2. Valitse tutkittava metodi, napsauta hiiren kakkospainiketta ja valitse vaihtoehto Näytä metodin kutsu.
  3. Laajenna osa näytöstä Lähennä-työkalun painike, jossa on tyylitelty kuvake avulla.Raidat on värikoodattu luokan mukaan, ja ne on yhdistetty toisiinsa vaakaviivoin, jotka esittävät metodien kutsuja.
  4. Valitse metodi napsauttamalla sen nimeä. 
  5. Varmista, että tarkastelet nykyisiä tietoja napsauttamalla Verestä näkymät -painiketta painike, jossa on tyylitelty kuvake.
  6. Huomaa rivi:
    tilarivi, jossa on näkyy metodin nimi ja numerot 1/1

    Tällä rivillä näkyy metodin nimi, jota seuraa n/m, jossa n on tällä hetkellä näkyvä kutsu kutsujen kokonaismäärästä m.
  7. Voit selata kaikkia valitun metodin kutsuja (tai valittuun objektiin lähetettyjä sanomia) napsauttamalla Edellinen-painiketta painike, jossa on tyylitelty kuvake ja Seuraava-painiketta painike, jossa on tyylitelty kuvake. Työkalurivin murtoluku muuttuu ja ilmaisee, mitä kutsua olet tarkastelemassa.

Metodin kutsujan etsintä

Voit selvittää metodin kutsujan jatkamalla metodin kutsunäkymässä seuraavasti:

  1. Saat metodin kutsujan näkyviin napsauttamalla Näytä kutsuja -painiketta painike, jossa on tyylitelty kuvake. Metodi tulee näkyviin, ja sen kutsuja näkyy metodin vasemmalla puolella.
  2. Jos haluat tarkastella metodin kutsujan tarkempia tietoja kutakin uutta tarkasteltavaa kutsua kohti, siirrä kohdistin näkymässä sen raidan päälle, joka esittää kutsujaa. Tilarivillä näkyvät kutsujan tiedot.
  3. Jos haluat nähdä metodin, jota valittu metodi kutsuu, napsauta Näytä kutsuttu metodi -painiketta painike, jossa on tyylitelty kuvake