Πρόγραμμα εκμάθησης: Ανάλυση δεδομένων προφίλ
Στόχοι
Η ανάλυση των δεδομένων που συλλέγονται από μια διεργασία δημιουργίας προφίλ Java, με τη βοήθεια των προβολών προφίλ και αρχείων καταγραφής της προοπτικής "Προφίλ και αρχεία καταγραφής" με τους εξής παρακάτω τρόπους:
- Αναγνώριση των πλέον χρονοβόρων αντικειμένων και μεθόδων
- Προσδιορισμός κλάσεων που απαιτούν μεγάλο ποσοστό μνήμης
- Μέτρηση ταυτοχρονισμού προγράμματος
- Εντοπισμός διαρροών μνήμης
- Πλοήγηση σε κάθε εκτέλεση μεθόδου ως συνάρτηση χρόνου
- Απόκτηση μια ευρύτερης αντίληψης της συμπεριφοράς εκτέλεσης ως συνάρτησης χρονου
- Προσδιορισμός ενεργών νημάτων
- Προσδιορισμός του χρόνου κατά τον οποίο τα νήματα είναι ενεργά
- Προσδιορισμός των μεθόδων που καλούνται συχνά
- Μέτρηση συλλογής απορριμάτων
- Προσδιορισμός των διαφορετικών φάσεων εκτέλεσης προγράμματος
- Μελέτη διαφορετικών κλήσεων μεθόδου
- Μελέτη της κλήσης μιας μεθόδου
Απαιτούμενος χρόνος
1 ώρα
Πριν ξεκινήσετε
Πριν ξεκινήσετε αυτό το πρόγραμμα εκμάθησης, θα πρέπει να:
- Εγκαταστήστε την πλατφόρμα Eclipse, συμπεριλαμβανομένης και της πλατφόρμας εργαλείων δοκιμής και ρύθμισης απόδοσης (TPTP).
- Να έχετε έτοιμο για εισαγωγή το δείγμα αρχείου προφίλ (hcframe.jar). Το αρχείο θα πρέπει να βρίσκεται στον ακόλουθο κατάλογο:
TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0
Περιγραφή
Σε αυτό το πρόγραμμα εκμάθησης, θα χρησιμοποιήσετε τις διαφορετικές προβολές προφίλ και αρχείων καταγραφής για να αναλύσετε το δείγμα κλάσης PerformanceExample. Το δείγμα ανοίγει ένα πλαίσιο το οποίο περιέχει δύο κουμπιά.
Θα πρέπει να ολοκληρώσετε τις ακόλουθες εργασίες:
- Άνοιγμα της προοπτικής "Προφίλ και αρχεία καταγραφής" στον πάγκο εργασίας
- Δημιουργία προφίλ για την κλάση PerformanceExample
- Ανάλυση των πληροφοριών δημιουργίας προφίλ
Για να ενημερώσετε τις προβολές ενώ η εφαρμογή βρίσκεται υπό παρακολούθηση, κάντε κλικ στο κουμπί Προβολές
.
Από το μενού Παράθυρο, κάντε κλικ στην επιλογή Άνοιγμα προοπτικής> Άλλο> Προφίλ και αρχεία καταγραφής.
Για να δημιουργήσετε προφίλ για την κλάση PerformanceExample, ακολουθήστε τα εξής βήματα:
- Κάντε κλικ στην αναπτυσσόμενη λίστα Προφίλ
και επιλέξτε Προφίλ. Ανοίγει το πλαίσιο διαλόγου Εκκίνηση προφίλ.
- Κάντε διπλό κλικ στο στοιχείο Εξωτερική εφαρμογή Java για να δημιουργήσετε μια νέα ρύθμιση.
- Μεταβείτε στην καρτέλα Κύρια.
- Πληκτρολογήστε org.eclipse.hyades.test.collection.framework.PerformanceExample μέσα στο πεδίο Όνομα κλάσης.
- Πατήστε Προσθήκη Jar για να προσθέσετε το jar που περιέχει αυτή την κλάση.
- Επιλέξτε TPTP_install_dir\eclipse\plugins\org.eclipse.tptp.platform.collection.framework_4.0.0\hcframe.jar
- Πατήστε Άνοιγμα. Το jar προστέθηκε.
- Πατήστε στην καρτέλα Παρακολούθηση. Σε αυτή την καρτέλα, μπορείτε να καθορίσετε τα κριτήρια προφίλ.
- Στην καρτέλα "Παρακολούθηση", επεκτείνετε τον κόμβο με την ετικέτα Δημιουργία
προφίλ Java, επιλέξτε Βασική ανάλυση μνήμης και επιλέξτε το τετραγωνίδιο
επιλογής που βρίσκεται δίπλα.. Αυτή η ενέργεια θα προσθέσει πληροφορίες σχετικές με τη μνήμη στη λίστα με τα είδη πληροφοριών που θα πρέπει να συλλέγονται από την εφαρμογή.
- Επιλέξτε Ανάλυση χρόνου εκτέλεσης και επιλέξτε το
τετραγωνίδιο επιλογής που βρίσκεται δίπλα. Με αυτή την επιλογή ενεργοποιημένη μπορείτε να χρησιμοποιήσετε τις προβολές στατιστικών μετρήσεων για να αναλύσετε πληροφορίες που αφορούν το χρόνο. Πρέπει να συλλέξετε λεπτομέρειες εκτέλεσης γραφικών έτσι ώστε να μπορέσετε να χρησιμοποιήσετε τις προβολές "Ροή εκτέλεσης" και "Κλήση μεθόδου".
Δεδομένου ότι ο σκοπός αυτού του δείγματος είναι να σας καθοδηγήσει στις προβολές προφίλ,
συμπεριλαμβανομένων των προβολών "Ροή εκτέλεσης" και "Κλήση μεθόδου",
ενώ επιλέγετε Ανάλυση χρόνου εκτέλεσης, πατήστε στο Επιλογές τροποποίησης
και επιλέξτε Εμφάνιση λεπτομερειών ροής εκτέλεσης με μορφή γραφικών στο πλαίσιο
διαλόγου "Τροποποίηση επιλογών δημιουργίας προφίλ".
Επίσης, κάντε κλικ στο τετραγωνίδιο επιλογής Συλλογή συνοριακών κλάσεων που έχουν
εξαιρεθεί από το σύνολο φίλτρων και ρυθμίστε το Βάθος συνοριακής κλάσης σε
1. Πατήστε Ολοκλήρωση.
- Το σύνολο φίλτρων προφίλ παρέχει τη δυνατότητα προσδιορισμού ενός υποσυνόλου
πληροφοριών που θέλετε να αναλύσετε. Πρόκειται για μια χρήσιμη δυνατότητα εάν θέλετε να εφαρμόσετε φίλτρα σε κλάσεις ή πακέτα τα οποία δεν βρίσκονται εντός των ορίων των στοιχείων που θέλετε να αναλύσετε.
Επιλέξτε τη λειτουργία συλλογής δεδομένων Εργαλείο δημιουργίας προφίλ Java και πατήστε στην
επιλογή Επιλογές τροποποίησης. Ανοίγει το πλαίσιο διαλόγου του συνόλου φίλτρων. Στα Περιεχόμενα επιλεγμένων συνόλων φίλτρων, επιλέξτε Προσθήκη για να προσθέσετε κλάσεις ή πακέτα για τα οποία θέλετε να συλλέξετε δεδομένα. Ανοίγει το πλαίσιο διαλόγου Προσθήκη φίλτρου.
- Για να δημιουργήσετε προφίλ για αυτή την κλάση, πληκτρολογήστε org.eclipse.hyades.test.collection.framework.* για την Κλάση.
- Καθορίστε το Όνομα μεθόδου ως * ώστε να συμπεριλαμβάνει μεθόδους οι οποίες να σχετίζονται με αυτό το παράδειγμα.
- Πατήστε ΟΚ. Το κριτήριο φίλτρου προστίθεται στη λίστα περιεχομένων.
- Για να εξαιρέσετε άλλες υπάρχουσες κλάσεις από τη λίστα περιεχομένων των φίλτρων, πατήστε Συμπερίληψη κάτω από τη στήλη Κανόνες για την κλάση και αλλάξτε τη ρύθμιση στην επιλογή Εξαίρεση.
- Πατήστε Επόμενο για να μεταβείτε στη σελίδα Όρια. Αυτή η σελίδα
ελέγχει τον όγκο των δεδομένων που συλλέγονται, είτε με βάση το χρόνο που έχε περάσει
είτε με βάση τον αριθμό των κλήσεων μεθόδου. Αποδεχθείτε τις προεπιλεγμένες ρυθμίσεις.
Πατήστε Ολοκλήρωση για έξοδο και εφαρμογή των αλλαγών που πραγματοποιήθηκαν.
- Κάντε κλικ στην καρτέλα Προορισμός. Τα ProfileProject και Default Monitor είναι οι προεπιλεγμένοι πόροι προφίλ και μπορείτε να τους χρησιμοποιήσετε για την αποθήκευση δεδομένων από αυτή τη συνεδρία δημιουργίας προφίλ.
- Πατήστε Προφίλ.
- Δημιουργούνται οι απαιτούμενοι πόροι προφίλ και εμφανίζεται η ρουτίνα και η διεργασία στην προβολή "Παρακολούθηση προφίλ".
- Ενεργοποιήστε την προβολή παρακολούθησης επιλέγοντας Κατανεμημένη διάταξη όπως φαίνεται στο ακόλουθο αποτύπωμα οθόνης. Αυτή η ενέργεια σας επιτρέπει να βλέπετε την οντότητα παρακολούθησης στην οποία ομαδοποιούνται τα δεδομένα σας καθώς και τον υπολογιστή στον οποίο εκτελείται ο πάγκος εργασίας.

Προβολή της συμπεριφοράς εκτέλεσης για δεδομένη χρονική περίοδο
Μπορείτε να εξετάσετε την εκτέλεση της εφαρμογής με χρήση την προβολής και του πίνακα Ροής εκτέλεσης. Η εκτέλεση ολόκληρου του προγράμματος απεικονίζεται γραφικά σε αυτή την προβολή και σε μορφή πίνακα. Στην προβολή Ροή εκτέλεσης, ο χρόνος εμφανίζεται στον κατακόρυφο άξονα. Ο πίνακας Ροής εκτέλεσης ανοίγει κάτω από την προβολή Ροή εκτέλεσης και περιλαμβάνει σε λίστα κάθε νήμα καθώς και τις μεθόδους που καλούνται από κάθε νήμα.
- Στην προβολή παρακολούθησης προφίλ, επιλέξτε την οντότητα παρακολούθησης που θέλετε, κάντε δεξιό κλικ και επιλέξτε Άνοιγμα με > Ροή εκτέλεσης για να ανοίξετε την προβολή Ροή εκτέλεσης. Ανοίγει η προβολή "Ροή εκτέλεσης".
- Για να εξετάσετε μια συγκεκριμένη μέθοδο, κάντε κλικ στη μέθοδο για να την επιλέξετε. Όλες οι μέθοδοι επισημαίνονται στη συνέχεια με κίτρινο χρώμα. Το κατακόρυφο μήκος της περιοχής που έχει επισημανθεί αποτελεί ένδειξη του βασικού χρόνου της μεθόδου. Η ακριβής τιμή για τον βασικό χρόνο εμφανίζεται στη γραμμή κατάστασης.

Μετακινήστε το δρομέα σας επάνω από ένα οποιοδήποτε αντικείμενο στην προβολή για να
εμφανίσετε λεπτομερείς πληροφορίες στη γραμμή κατάστασης στο κάτω μέρους του παραθύρου.
- Χρησιμοποιήστε το εργαλείο Μεγέθυνσης
για να ενεργοποιήσετε το δρομέα, και στη συνέχεια κάντε κλικ για να μεγενθύνετε μια περιοχή.
Σημείωση: Για να ενημερώσετε τις προβολές ενώ η εφαρμογή βρίσκεται υπό παρακολούθηση, κάντε κλικ στο κουμπί Ανανέωση προβολών
.
Εντοπισμός ενεργών νημάτων
Στην προβολή Ροή εκτέλεσης, κάθε νήμα περιέχει περιόδους δραστηριότητας, οι οποίες προσδιορίζονται από έναν μεγάλο αριθμό κλήσεων μεθόδου. Σε μια συμβολική απεικόνιση, η πρώτη μέθοδος στην οποία έχει γίνει κλήση είναι μια λωρίδα, και οι μέθοδοι στις οποίες γίνεται στη συνέχεια κλήση εμφανίζονται ως άλλες λωρίδες στα δεξιά της. Η ακολουθία των κλήσεων μεθόδου αναπτύσσεται από τα αριστερά προς τα δεξιά. Τα ενεργά μέρη του νήματος προσδιορίζονται με βάση αυτή την αριστερόστροφη ανάπτυξη.
Όταν επιλέγετε ολόκληρη την ενότητα που διαρθρώνει την ακολουθία των κλήσεων μεθόδου, ο βασικός χρόνος που περνά για την εκτέλεση αυτής της ακολουθίας εμφανίζεται στη γραμμή κατάστασης. Για να δείτε το βασικό χρόνο κατά τον οποίο το νήμα είναι ενεργό, εντοπίστε τη διαφορά μεταξύ των ακόλουθων χρόνων:
- Τοποθετήστε το δείκτη στην επάνω οριζόντια γραμμή της επιλεγμένης κίτρινης περιοχής για να εμφανίσετε τον αντίστοιχο βασικό χρόνο στη γραμμή κατάστασης.
- Ομοίως, τοποθετήστε το δείκτη στην κάτω ακμή της επιλεγμένης κίτρινης περιοχής (η οποία καλύπτει την περίοδο εκτέλεσης όταν η ακολουθία μεθόδου είναι εν δράση), και προβάλετε το βασικό χρόνο σε αυτό το σημείο.
Υποδείξεις:
- Αν το γράφημα είναι πολύ φορτωμένο και δυσκολεύεστε να το διαβάσετε, μεγενθύνετε τη
φορτωμένη περιοχή.
- Κατά την επιλογή μιας μεθόδου όλες οι μέθοδοί της που έχουν κληθεί φέρουν κίτρινη
επισήμανση.
- Μπορείτε να πραγματοποιήσετε τράβηγμα και εναπόθεση στις προβολές στον πάγκο εργασίας, ταξινομώντας τες ταυτόχρονα εάν χρειάζεται.
- Για το σημείο που δείχνει ο δρομέας επισημαίνεται ο αντίστοιχος βασικός χρόνος στη
γραμμή κατάστασης.
- Για να επαναφέρετε την εμφάνιση της προβολής, πατήστε το κουμπί
Αρχή.
Προσδιορισμός των μεθόδων που καλούνται συχνά
Για να εντοπίσετε μεθόδους που καλούνται συχνά:
- Χρησιμοποιήστε το εργαλείο Μεγέθυνσης
για να μεγενθύνετε μια ακολουθία κλήσεων μεθόδου.
- Μέσα στην επιλεγμένη περιοχή αναζητήστε λωρίδες του ιδίου χρώματος. Αυτές οι λωρίδες προσδιορίζουν μεθόδους από την ίδια χρήση κλάσης στην οποία έγινε κλήση πολλές φορές.
- Ελέγξτε το μήκος των λωρίδων διαφορετικού χρώματος (κάθε μία από τις οποίες αντιπροσωπεύει μια μέθοδο). Όσο μεγαλύτερη είναι η λωρίδα, τόσο μεγαλύτερος είναι και ο χρόνος εκτέλεσης αυτής της μεθόδου.
Μέτρηση συλλογής απορριμάτων
Συνήθως, δεν μπορείτε, επιθεωρώντας λωρίδες στο νήμα ενός χρήστη σε αυτή την προβολή, να πείτε με βεβαιότητα ότι μια συλλογή απορριμάτων έχει προκύψει από κάποιο αντικείμενο.
Ακολουθήστε τα παρακάτω βήματα:
- Από προεπιλογή, το νήμα συλλογής απορριμάτων αποκρύπτεται. Ενεργοποιήστε το επιλέγοντας Νήματα> GC στο μενού Περιβάλλον για την προβολή.
- Επιλέξτε τη στήλη τέρμα αριστερά σε αυτή την προβολή. Αυτή η στήλη δεσμεύεται για το νήμα συλλογής απορριμάτων και ονομάζεται στήλη νήματος GC.
- Ελέγξτε εάν υπάρχει κάποιο μεμονωμένο, λεπτό ορθογώνιο στη στήλη νήματος GC. Αυτό το ορθογώνιο θα βρίσκεται πιθανότατα αρκετά προς τα κάτω σε σχέση με τις κλήσεις μεθόδου του αντικειμένου. Αυτό το ορθογώνιο εμφανίζεται στη στήλη νήματος GC όποτε προκύπτει συλλογή απορριμάτων για ένα αντικείμενο.
Προσδιορισμός φάσεων εκτέλεσης προγράμματος
Προσδιορισμός της φάσης απόδοσης αρχικών τιμών
- Χρησιμοποιήστε το εργαλείο Μεγένθυσης
για να μεγενθύνετε την ακολουθία κλήσεων μεθόδου στο επάνω μέρος του κύριου νήματος.
- Σημειώστε τις μεθόδους που επισημαίνονται ως -init-.
- Κάντε κλικ για να επιλέξετε μια παρόμοια μέθοδο. Η γραμμή κατάστασης ενημερώνεται για να υποδηλώσει ότι η μέθοδος βοηθά στην απόδοση αρχικών τιμών (εκχώρηση τιμών σε μεταβλητές που χρησιμοποιούνται στην εφαρμογή).
Ανάλυση μεθόδων με χρήση της προβολής "Κλήση μεθόδου"
- Από την προβολή "Παρακολούθηση προφίλ", επιλέξτε μια οντότητα παρακολούθησης ή μια ρουτίνα. Πατήστε το δεξιό πλήκτρο του ποντικιού και στη συνέχεια επιλέξτε Άνοιγμα με > Ροή εκτέλεσης. Εμφανίζεται η προβολή "Ροή εκτέλεσης".
- Επιλέξτε τη μέθοδο που θέλετε να εξετάσετε, κάντε δεξιό κλικ και στη συνέχεια επιλέξτε Εμφάνιση κλήσης μεθόδου.
- Χρησιμοποιήστε το εργαλείο μεγένθυσης
για να μεγενθύνετε μια ενότητα αυτής της εμφάνισης. Οι λωρίδες κωδικοποιούνται με χρώματα με βάση την κλάση τους και συνδέονται με οριζόντιες γραμμές οι οποίες αντιπροσωπεύουν τις κλήσεις μεθόδου.
- Επιλέξτε μια μέθοδο κάνοντας κλικ στο όνομά της.
- Κάντε κλικ στο κουμπί Ανανέωση προβολών
για να βεβαιωθείτε ότι προβάλετε τις τρέχουσες πληροφορίες.
- Σημειώστε τη γραμμή:

Αυτή η γραμμή εμφανίζει το όνομα της μέθόδου, ακολουθούμενο από n/m, όπου n είναι η κλήση που εμφανίζεται αυτή τη στιγμή από το σχετικό με αυτήν σύνολο κλήσεων m.
- Πατήστε Προηγούμενο
και Επόμενο
για την αναζήτηση όλων των κλήσεων της επιλεγμένης μεθόδου (ή κάθε μηνύματος προς το επιλεγμένο αντικείμενο). Το τμήμα της γραμμής εργαλείων αλλάζει για να υποδείξει την κλήση που προβάλλεται.
Εντοπισμός του στοιχείου υποβολής κλήσης μιας μεθόδου
Για να εντοπίσετε το στοιχείο υποβολής κλήσης μιας μεθόδου, ακολουθήστε αυτά τα βήματα, συνεχίζοντας με την προβολή Κλήση μεθόδου:
- Για να προβάλετε το στοιχείο υποβολής κλήσης, κάντε κλικ στο κουμπί Εμφάνιση στοιχείου υποβολής κλήσης
.
Η μέθοδος εμφανίζεται μαζί με το στοιχείο υποβολής κλήσης της στα αριστερά της.
- Για την προβολή περισσότερων λεπτομερειών σχετικά με το στοιχείο υποβολής κλήσης της μεθόδου για κάθε νέα κλήση που προβάλλετε, τοποθετήστε το δρομέα πάνω από τη λωρίδα που αναπαριστά το στοιχείο υποβολής κλήσης μεθόδου στην προβολή. Η γραμμή κατάστασης εμφανίζει τις πληροφορίες του στοιχείου υποβολής κλήσης.
- Για να δείτε τη μέθοδο που καλεί η επιλεγμένη μέθοδος, πατήστε το κουμπί Εμφάνιση μεθόδου στην οποία έχει γίνει κλήση
.
(C) Copyright IBM Corporation 2000, 2006.