Skip to content

voulgarakisromanos/ComputerArchitecture3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 

Repository files navigation

Αρχιτεκτονική Υπολογιστών Εργασία 3

Βουλγαράκης Ρωμανός | Μουστάκας Βασίλειος-Παναγιώτης

9383 | 9424

Ερώτημα 1

1.1

Dynamic power

Dynamic power είναι η κατανάλωση ενέργειας που προκύπτει από τη δραστηριότητα των τρανζίστορ της CPU, και οφείλεται στη φόρτιση και αποφόρτιση των πυκνωτών εντός τους.
Ισχύει η σχέση: Pdyn = C⋅V2⋅f

όπου V είναι η τάση λειτουργίας, f η συχνότητα του ρολογιού, και C η συνολική χωρητικότητα.

Leakage

Leakage είναι η κατανάλωση ενέργειας που οφείλεται στη διαρροή ρεύματος εντός των transistor, λόγω του γεγονότος ότι δεν έχουν τέλειες επαφές. Το μέγεθος αυτής της κατανάλωσης εξαρτάται από τα γεωμετρικά χαρακτηριστικά των transistor, τις φυσικές τους ιδιότητες και την θερμοκρασία τους. Η γενική τάση είναι ότι το leakage αυξάνεται για μικρότερα transistors και υψηλότερες θερμοκρασίες.

Σύγκριση της επίδρασης δύο προγραμμάτων

Αν δεν χρησιμοποιηθούν τεχνικές gating και dynamic frequency scaling, το dynamic power δεν επηρεάζεται από το είδος του προγράμματος που τρέχει, καθώς όλες οι παράμετροι που το επηρεάζουν μένουν σταθερές. Αν χρησιμοποιηθούν τα παραπάνω, το dynamic power εξαρτάται από τη δομή του προγράμματος και το ενδεχόμενο χρήσης πολλαπλών πυρήνων. Όσον αφορά το leakage, η κύρια παράμετρος που μπορεί να μεταβληθεί και να το επηρεάσει είναι η θερμοκρασία. Άρα για όσο περισσότερο χρόνο τρέχει ένα πρόγραμμα, τόσο ανεβαίνει η θερμοκρασία και άρα τόσο αυξάνεται το leakage.

1.2

Υπάρχει περίπτωση ένας επεξεργαστής που καταναλώνει 40W να μας δώσει μεγάλυτερη διάρκεια μπαταρίας από τον επεξεργαστή που καταναλώνει 4W, με την προϋπόθεση ότι κλείνουμε τους επεξεργαστές μετά το πέρας της εκτέλεσης των προγραμμάτων. Έτσι, ο επεξεργαστή με κατανάλωση 40W θα εκτελέσει το πρόγραμμα γρηγορότερα και άρα μπορεί να έχει λιγότερες συνολικές απώλειες από το leakage.

Το McPAT μας δίνει δεδομένα για την ισχύ που καταναλώνει ο επεξεργαστής αλλά όχι για τον χρόνο εκτέλεσης του προγράμματος. Συνεπώς, δεν γίνεται να υπολογιστούν οι συνολικές απώλειες σε κάθε περίπτωση.

1.3

Τα αποτελέσματα που προκύπτουν από την εκτέλεση του McPAT φαίνονται στον ακόλουθο πίνακα:

Xeon ARM A9
Total Leakage 36.83 W 0.109 W
Runtime Dynamic 72.91 W 2.960 W

Ορίζοντας Δt το χρονικό διάστημα το οποίο απαιτείται για την εκτέλεση κάποιας εφαρμογής στον Xeon και με δεδομένο ότι ο ARM A9 χρειάζεται 40 φορές περισσότερο χρόνο για το πέρας της. Εξετάζωντας τις απώλειες στο πέρας της εφαρμογής για τον ARM A9 προκύπτει:

ΕXeon = Pdyn_Xeon ⋅Δt   + Pleak_Xeon ⋅40⋅Δt = 1546.11⋅Δt
ΕA9    = Pdyn_A9 ⋅40⋅Δt + Pleak_A9 ⋅40⋅Δt    = 7.32⋅Δt

Παρατηρούμε μία πολύ μεγάλη διαφορά η οποία οφείλεται στο γεγονός ότι το Pleak_Xeon συνεχίζει να υπάρχει ακόμα και μετά το πέρας εκτέλεσης της εφαρμογής, αφού θεωρούμε δεδομένο από την εκφώνηση πως δεν διακόπτεται η λειτουργία του συστήματος μετά την ολοκλήρωση εκτέλεσης. Συμπεραίνουμε, λοιπόν, πως ο Xeon δεν μπορεί να είναι περισσότερο energy-efficient από τον ARM A9, παρά την διαφορά στην απόδοση.

Ερώτημα 2

Στα ακόλουθα γραφήματα παρουσιάζεται η μεταβολή της συνολικής ενέργειας, καθώς και της μέγιστης ισχύς, σε σχέση με κάθε παράμετρο του υποσυστήματος μνήμης. Η συνολική ενέργεια υπολογίζεται ως:

TotalPower = RuntimeDynamic + SubthresholdLeakage + GateLeakage

Peak Power Total Power
Peak Power Total Power
Peak Power Total Power
Peak Power Total Power
Peak Power Total Power
Peak Power Total Power
Peak Power Total Power

Energy-Delay Product

Στο παρακάτω διάγραμμα παρατηρούμαι την μεταβολή του EDP σε σχέση με κάθε χαρακτηριστικό του υποσυστήματος μνήμης για το bechmark sjeng.

Παραθέτουμε για σύγκριση και την μεταβολή του CPI για το sjeng, καθώς υπάρχει αναλογική σχέση ανάμεσα σε αυτό και τον χρόνο εκτέλεσης.

CPUtime = InstructionsNumber⋅CPI⋅ClockCycleTime

Παρατηρώντας τα παραπάνω διαγράμματα με σκοπό την επίτευξη του ελάχιστου EDP επιλέγουμε τα ακόλουθα:

Μέγεθος I-Cache Μέγεθος D-Cache Μέγεθος L2 Μέγεθος Cache Line I-Cache Assoc D-Cache Assoc L2 Assoc
16 Kb 16 Kb 128 Kb 16 B Direct-mapped Two-way Direct-mapped

και παίρνουμε τελικά τα ακόλουθα αποτελέσματα:

Χρόνος εκτέλεσης CPI Peak Power Total Power EDP
0.000776 sec 1.551759 1.40187 W 0.6734 W 5.22⋅10-4

Πηγές πιθανών σφαλμάτων

Οι προβλέψεις του McPAT πιθανώς να περιέχουν σημαντικό σφάλμα λόγω ελλειπούς μοντελοποίησης, μοντελοποίησης πολύ υψηλού επιπέδου ή λόγω υποθέσεων για την υλοποίηση του επεξεργαστή, οι οποίες δε συνάδουν με το μοντέλο που προσομοιώνεται. Πιο συγκεκριμένα, το μοντέλο ισχύος του McPAT είναι αναλυτικό, όχι εμπειρικό, και άρα αγνοεί λεπτομέρειες της υλοποίησης για χάρη της ευελιξίας και της ταχύτητας. Ορισμένα παραδείγματα είναι:

  1. Δυσκολία μοντελοποίησης της κατανάλωσης ενέργειας που προκύπτει από τη δραστηριότητα των λογικών πυλών
  2. Το McPAT μπορεί να μην συμπεριλαμβάνει συγκεκριμένες εντολές του πραγματικού επεξεργαστή.
  3. Το McPAT υποθέτει ότι κάθε εντολή απαιτεί δύο read ports, πράγμα που δεν είναι απαραίτητα αληθές καθώς κάποιες εντολές (immediate) χρειάζονται μόνο έναν καταχωρητή πέρα από το operand.
  4. Τέλειο clock-gating and data-gating.
  5. Για μια δομή cache, το McPAT κάποιες φορές διπλασιάζει το εμβαδόν πυριτίου του στοιχείου, χωρίς να να αυξάνει την per access ενέργεια που καταναλώνει.
  6. Πιθανώς κάποια προγραμματιστικά λάθη

Η χρήση δύο προγραμμάτων για την προσομοίωση διαφορετικών πτυχών της ίδιας CPU μπορεί να αποτελέσει πηγή σφάλματος, καθώς τα προγράμματα μπορεί να κάνουν αντικρουόμενες υποθέσεις. Ταυτόχρονα υπερδιπλασιάζεται και η πιθανότητα να επηρεάσει την προσομοίωση κάποιο bug.

Βιβλιογραφία

https://www.samxi.org/papers/xi_hpca2015.pdf

https://ieeexplore.ieee.org/abstract/document/7273512

https://www.hpl.hp.com/research/mcpat/McPATAlpha_TechRep.pdf

https://en.wikipedia.org/wiki/Processor_power_dissipation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages