250 likes | 409 Views
Τ.Ε.Ι Θεσσαλονίκης – Τμήμα Πληροφορικής. Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Εργαστηριακό Μέρος Μέρος: Δεύτερο Εξάμηνο: Έβδομο Καθηγητής: Α. Βαφειάδης 200 9. Μεταβλητές συστήματος. Για την μελέτη ενός συστήματος απαιτείται η γνώση των τιμών των παρακάτω μεταβλητών:
E N D
Τ.Ε.Ι Θεσσαλονίκης – Τμήμα Πληροφορικής • Μάθημα • Προηγμένες Αρχιτεκτονικές Υπολογιστών • Εργαστηριακό Μέρος • Μέρος: Δεύτερο • Εξάμηνο: Έβδομο • Καθηγητής: Α. Βαφειάδης • 2009
Μεταβλητές συστήματος Για την μελέτη ενός συστήματος απαιτείται η γνώση των τιμών των παρακάτω μεταβλητών: • Μεταβλητές που αφορούν τα φυσικά χαρακτηριστικάτου υλικού και του λογισμικού (π.χ CPU clock, Disk access time, memory size,page size κ.λ.π) • Μεταβλητές που αφορούν το workload που χρησιμοποιούμε κατά την περίοδο της μέτρησης(π.χ μέση τιμή χρόνου επεξεργασίας, κατανομή του χρόνου άφιξης των απαιτήσεων των χρηστών κ.λ.π) . • Μεταβλητές που αφορούν την απόδοσης του συστήματος (δείκτες απόδοσης)
Δείκτες Απόδοσης • Με τους δείκτες απόδοσης ποσοτικοποιούμε την απόδοση ενός υπολογιστή • Αυτοί που ενδιαφέρονται για τους δείκτες απόδοσης είναι: • Οι σχεδιαστές Συστημάτων • Οι διαχειριστές • Οι Αναλυτές και προγραμματιστές • Οι απλοί χρήστες • Οι δείκτες διακρίνονται σε: • Εξωτερικούς (αφορούν τους 3 και 4) • Εσωτερικούς (αφορούν τους 1 και 2)
Χρόνοι (γενικά) • Response time O χρόνος απόκρισης ενός συστήματος Ο χρόνος από την στιγμή που πατήσαμε το return σε μια διαλογική επικοινωνία μέχρι την στιγμή που λάβαμε απάντηση από το σύστημα • CPU execution time Ο χρόνος απασχόλησης της CPU από ένα πρόγραμμα χρήστη • user CPU execution time • System CPU execution time (windows XP task monitor , εντολή time στο UNIX) • Elapsed time ή turnaround time Ο χρόνος από την στιγμή έναρξης μέχρι την στιγμή λήξηςμιας διαδικασίας
Mean Elapse time • Elapse (turnaround) time : Ορίζεται σαν το χρονικό διάστημα μεταξύ του χρόνου έναρξης ενός προγράμματος και της λήξης του. (ενδιαφερόμενος o χρήστης) • Mean elapse time: (ο διαχειριστής) Όπου n o αριθμός των προγραμμάτων που τελείωσαν Piο χρόνος λήξης του i προγράμματος και Riο χρόνος έναρξης του i προγράμματος
Turnaround (elapse) & Processing time Εντολές batch σε Unix -> at και batch Αρχείο διαχείρισης ουρών /user/lib/cron/queuedefs
Response time • Γενικά ορίζεται σαν το χρονικό διάστημα ανάμεσα στην στιγμή αποστολής μιας αίτησης για εξυπηρέτηση προς ένα σταθμό εξυπηρέτησης(computer system, network, database) μέχρι την στιγμή ικανοποίησης του αιτήματος • O χρόνος ανταπόκρισης σε ένα διαλογικό σύστημα (response time) ορίζεται σαν το χρονικό διάστημα ανάμεσα στη στιγμή που στέλνουμε μια εντολή μέσω μιας τερματικής συσκευήςή terminal client, μέχρι την στιγμή που θα εμφανιστούν στην οθόνη το αποτέλεσμα. • Ο χρόνος ανταπόκρισης σε ένα δίκτυο ορίζεται σαν τον χρόνο πού απαιτείται ανάμεσα στη στιγμή που ξεκινήσει μια αίτηση (request) από ένα workstation προς ένα server(HTTP,FTP) μέχρι την στιγμή που θα επιστρέψει και επιστρέψει η απάντηση. Ο χρόνος ανταπόκρισης σε ένα δίκτυό είναι αντιστρόφως ανάλογος της ταχύτητας μετάδοσης(transmit ion speed)
Μέση τιμή και τυπική απόκλιση Στο χρόνο ανταπόκρισης μεγαλύτερο ενδιαφέρουν παρουσιάζουν τα στατιστικά μεγέθη των τιμών και όχι αυτές καθαυτές οι μεμονωμένες τιμές. Αν R1 , R2 …. Rnείναι μετρήσεις του χρόνου ανταπόκρισης τότε αυτές έχουν μέση τιμή Rm και τυπική απόκλιση Rσ
Response time του server 205.181.179.58 από το monitor SolarWinds.net
Throughput (Παραγωγικότητα) Η παραγωγικότητα ορίζεται σαν η ποσότητα του έργου που παράγεται από ένα σταθμό εξυπηρέτησης(computer system, computer device, network, database) στη μονάδα του χρόνου. Ορίζεται ανάλογα με το είδος του σταθμού και είναι: • Ο αριθμός των προγραμμάτων που παράγονται στη μονάδα του χρόνου(Jobs/sec) • Ο αριθμός των αιτήσεων που ικανοποιούνται ένα HTTP server (HHTP Req/sec) • Ο αριθμός των συναλλαγών μιας βάσης δεδομένων (Transaction/sec) • O αριθμός των Ι/Ο αιτήσεων που ικανοποιούνται από ένα δίσκο(I/O’s/sec)
Σχέση Throughput και Response time σε ένα interactive σύστημα
Thrashing είναι το φαινόμενο το οποίο παρουσιάζεται όταν η μνήμη cache δεν είναι αρκετά μεγάλη ώστε ο περισσότερος χρόνος να χάνεται στην ανταλλαγή των block μεταξύ των ιεραρχιών της μνήμης. Αυτό έχει σαν αποτέλεσμα στην μείωση της παραγωγικότητας του συστήματος
Παράδειγμα throughput Ο δίσκος ενός συστήματος έχει average access time10 msec. Ερώτηση 1η Ποια είναι η μέγιστή (θεωρητική) παραγωγικότητα του ? 10 msec -> 1 request/10msec -> 0.1 req/msec -> 100 req/sec Ερώτηση 2η Ποια είναι η παραγωγικότητα του όταν δέχεται Ι/Ο requests με συχνότητα (rate) 80 req/sec ? Επειδή ο δίσκος έχει μεγίστη παραγωγικότητα 100 req/sec αυτό σημαίνει ότι μπορεί να εξυπηρετήσει όλα τα ζητούμενα requests,άρα η παραγωγικότητα του θα είναι 80 req/sec
Διαθεσιμότητα (availability) και αξιοπιστία (reliability) • H αξιοπιστία (reliability) ορίζεται σαν την πιθανότητα να συμβεί ένα λάθος ή από το μέσο όρο μεταξύ των λαθών • Σαν διαθεσιμότητα (availability) ορίζεται το ποσοστό του συνολικού χρόνου, κατά την διάρκεια του οποίου το σύστημα διατίθεται στους χρήστες Η διαθεσιμότητα μπορεί να εκφραστεί και από άλλα μεγέθη όπως: Mean time to Failure (MTTF) Mean time to Repair (MTTR) ή από το λόγο MTTF/(MTTF+MTTR)
Χωρητικότητα (capacity) – Αποδοτικότητα(efficiency) • Σαν χωρητικότητα ορίζουμε τη μέγιστη θεωρητική τιμή της παραγωγικότητας με ιδανικό workload (πχ bandwidth 2Mbps) . • Στη πράξη και για δεδομένο workload, η τιμή της χωρητικότητας αντιστοιχεί στο μέγιστο δυνατό έργο, το οποίο το σύστημα παράγει στη μονάδα του χρόνου. (Σήμερα πετύχαμε ταχύτητες μέχρι 1.8 Μbps) • Αποδοτικότητα ονομάζουμε το λόγο της χωρητικότητας που επιτυγχάνουμε στη πράξη προς την θεωρητική χωρητικότητα ( efficiency = 1.8 Μbps /2 Μbps = 0.9). Η χωρητικότητα μπορεί να επεκταθεί και σε πολλά άλλα μεγέθη που αφορούν κυρίως χώρο.
Εσωτερικοί δείκτες απόδοσηςΧρησιμοποίηση (utilization) • Χρησιμοποίηση (utilization) μιας μονάδας (π.χ CPU) ορίζουμε σαν το ποσοστό του συνολικού χρόνου, κατά τη διάρκεια του οποίου ήταν απασχολημένη. Αν κατά το διάστημα της μέτρηση που είχε μήκος Τtotή μονάδα Κ δέχθηκε N αιτήσεις για εξυπηρέτηση με χρόνους Τi(i=1…..N) η κάθε μία, τότε
Βαθμός πολυπρογραμματισμού (Multiprogramming Level) • Είναι το πλήθος των προγραμμάτων τα οποία ανταγωνίζονται μεταξύ τους, την ίδια χρονική στιγμή για την απόκτηση των μονάδων ενός υπολογιστικού Paging rate • Ορίζουμε έτσι την συχνότητα με την οποία τα προγράμματα αναφέρονται σε πληροφορίες οι οποίες δεν είναι παρούσες στη κύρια μνήμη. Αυτές οι αναφορές ονομάζονται page faults και γίνονται αιτία να μεταφερθούν πληροφορίες από ένα μαγνητικό δίσκο στη κύρια μνήμη και πολλές φορές το αντίθετο
Επικάλυψη (overlap) • Επικάλυψη ονομάζουμε το ποσοστό του συνολικού χρόνου, κατά τη διάρκεια του οποίου δύο ή περισσότερες μονάδες απασχολούνται ταυτόχρονα. (Άθροισμα χρόνων CPU και Ι/Ο μονάδων)-(Χρόνος μέτρησης) Χρόνος μέτρησης Overlap = = 44,4%
Σύνοψη δεικτών απόδοσης • Εξωτερικοί δείκτες • Elapse Time • Response Time • Throughput • Capacity • Availability • Reliability • Efficiency • Εσωτερικοί δείκτες • Utilization • Overlap • Multiprogramming Level • Paging Rate