Identificazione metodi ad alto consumo di risorse
Un metodo può essere ottimizzato se:
- Viene richiamato più spesso del necessario. Le prestazioni possono essere migliorate
effettuando un numero minore di chiamate o apportando piccole modifiche a un metodo utilizzato
frequentemente.
- Ha un tempo di esecuzione lungo. Le prestazioni possono essere migliorate identificando
le classi che utilizzano la maggior parte del tempo di esecuzione e ottimizzando i metodi
che impiegano più tempo nello stack. È possibile che tali metodi non vengano necessariamente eseguiti,
ma che richiamino altri metodi per attività come ordinamento o delegazione.
Per individuare i metodi richiamati frequentemente, procedere come segue:
- Assicurarsi che sia stata abilitata la raccolta delle
informazioni sul flusso di esecuzione, all'avvio o al collegamento dell'applicazione
per cui creare il profilo. Selezionare l'opzione di creazione profilo
L'applicazione è troppo lenta quindi, nelle opzioni dei dettagli,
scegliere Mostra dettagli grafici flusso di esecuzione.
- Nella vista Controllo creazione profili, selezionare un controllo o un'agente.
- Fare clic
con il tasto destro del mouse e selezionare Apri con > Flusso di esecuzione.
Viene aperta la vista Flusso di esecuzione.
- Scegliere Ingrandisci
per ingrandire
una sequenza di chiamate a metodi.
- Fare clic con il tasto destro del mouse, quindi selezionare
Rileva tutte le ripetizioni. Nei punti in cui vengono rilevati
modelli ripetuti, verrà visualizzato Xs.
- Ingrandire tali aree per visualizzare i modelli ripetuti e il numero di ripetizioni
del metodo.
Per individuare i metodi con tempo di esecuzione prolungato, procedere come segue:
- Avviare o collegare un processo per una determinata risorsa, quindi aprire la vista Flusso di esecuzione.
Nota: è possibile aprire la vista dall'agente, dal processo, dall'host o dal controllo. Tenere presente
che le informazioni ottenute da queste risorse sono piuttosto diverse.
Ad esempio, la vista Flusso di esecuzione aperta dall'agente, conterrà l'esecuzione di una specifica
JVM (Java virtual machine) a cui l'agente è collegato.
Selezionando la vista dal controllo, invece, verrà visualizzata l'esecuzione di tutte le JVM che
contengono agenti di creazione profili nel controllo selezionato.
- Osservare la lunghezza della linea di ciascun metodo. La lunghezza della linea è direttamente proporzionale
al tempo di esecuzione.
- Per visualizzare ulteriori dettagli di un metodo, aprire la vista Statistiche di metodo,
selezionare il metodo con il tasto destro del mouse, e selezionare Mostra chiamata al metodo.
- Per visualizzare il tempo di esecuzione del chiamante di un metodo, fare clic con il tasto destro
del mouse, quindi selezionare Mostra chiamata al metodo.
La vista conterrà una rappresentazione dello stesso metodo come riga.
- Nella barra degli strumenti locale,
scegliere Mostra chiamante
per visualizzare i chiamanti del metodo selezionato nella vista. Ogni qual volta il pulsante viene selezionato,
viene visualizzato un metodo di livello più alto nella sequenza di chiamata.
- Selezionare un metodo. La lunghezza verticale dell'area selezionata indica
il tempo di base del metodo. È possibile determinare il tempo di esecuzione per questo metodo controllando
la scala verticale nella parte destra della vista. La riga di stato mostra il tempo
cumulativo del metodo.
Per ottenere una vista più ampia del tempo di esecuzione, procedere come segue:
- Aprire la vista Flusso di esecuzione: nel menu a comparsa del controllo nella vista Controllo
creazione profili, selezionare Apri con > Flusso di esecuzione.
- Questa vista, come la vista Chiamata al metodo, contiene una scala temporale verticale lungo il lato
destro.
- Utilizzare Ingrandisci
per ingrandire
una sezione particolare della vista, in modo da evidenziare il metodo che si desidera analizzare.
- Selezionare il metodo facendo clic sul nome o sullo spazio al di sotto di esso. La
lunghezza verticale dell'area evidenziata rappresenta un'indicazione del tempo di base del metodo.
Il valore
esatto del tempo di base viene visualizzato nella riga di stato.
- Utilizzare il pulsante Riduci
per visualizzare
una porzione più ampia dell'intero programma, continuando a vedere l'area evidenziata del metodo (ovvero
l'area rettangolare gialla).
Anche se non viene visualizzata l'intera rappresentazione dell'esecuzione, è comunque possibile
determinare quanto tempo impiega il metodo rispetto all'intero programma.
Argomenti correlati
Panoramica dello strumento Creazione profili
Vista e tabella Flusso di esecuzione
Viste statistiche
Attività correlate
Creazione del profilo di un'applicazione
Avvio o collegamento di un processo Java
Analisi della raccolta dati
Analisi delle prestazioni e dell'utilizzo della memoria - panoramica
(C) Copyright IBM Corporation 2000, 2003. Tutti i diritti riservati.