Μεθοδολογία ανάλυσης του φόρτου εργασίας και χρονοπρογραμματισμού σε ετερογενή ενσωματωμένα συστήματα.
Φόρτωση...
Ημερομηνία
2015-11-27T11:13:57Z
Συγγραφείς
Τίτλος Εφημερίδας
Περιοδικό ISSN
Τίτλος τόμου
Εκδότης
Τ.Ε.Ι. Κρήτης, Σχολή Τεχνολογικών Εφαρμογών (Σ.Τ.Εφ), ΠΜΣ Πληροφορική και Πολυμέσα
T.E.I. of Crete, School of Engineering (STEF), MSc in Informatics and Multimedia
T.E.I. of Crete, School of Engineering (STEF), MSc in Informatics and Multimedia
Επιβλέπων
Περίληψη
Στις μέρες μας η στροφή προς τις πολυπύρηνες τεχνολογίες προσφέρει μεγάλες προοπτικές σε εφαρμογές μεγάλης επεξεργαστικής ισχύος τόσο στον επιστημονικό όσο και σε βιομηχανικό τομέα. Παρόλο αυτά, στην ανάπτυξη λογισμικού εμφανίζονται μεγάλες προκλήσεις. Τα κέρδη στη απόδοση εφαρμογών υψηλών απαιτήσεων σε δεδομένα και σε επεξεργαστική ισχύ επιτυγχάνεται είτε με την αξιοποίηση του λεπτού παραλληλισμού ( fine-grained) είτε του αδρομερούς παραλληλισμού (coarse-grained) σε ανάλογα συστήματα σε συνάρτηση με την αύξηση του αριθμού των πυρήνων. Τα επαναπρογραμματιζόμενα συστήματα με FPGAs, χαίρουν μεγάλης προσοχής την τελευταία δεκαετία λόγω της προσαρμοστικότητας τους, του μικρού χρόνου σχεδιασμού και του χαμηλού κόστους. Έτσι οι σχεδιαστές μπορούν να συνδυάσουν επαναπρογραμματίσιμο υλικό που θα περιλαμβάνει επεξεργαστές γενικού σκοπού, αντί να χρησιμοποιούν τα FPGAs για συγκεκριμένες εφαρμογές. Έτσι παρέχεται η δυνατότητα δημιουργίας ενός ευέλικτου και ισχυρού μέσου υλοποίησης εφαρμογών αυξημένων απαιτήσεων. Στην παρούσα εργασία, παρουσιάζεται η μεθοδολογία υλοποίησης ενός τέτοιου συστήματος. Τα προτεινόμενα βήματα είναι: α) Η επιλογή των εφαρμογών που θα εκτελούνται στους προγραμματιζόμενους επεξεργαστές. β) Η ανάλυση και μοντελοποίηση των εφαρμογών σε συνάρτηση των δεδομένων εισόδου για να γίνεται η πρόβλεψη του χρόνου εκτέλεσης γ) Ο χρονοπρογραμματισμός πολλών επεξεργαστών ανεξάρτητων διεργασιών, έτσι ώστε να επιτυγχάνεται μείωση του μέσου χρόνου εκτέλεσης . Το τελικό έργο θα οδηγήσει στη δημιουργία ενός συστήματος πολλών γενικού σκοπού επεξεργαστών ενσωματωμένων σε ένα ολοκληρωμένο κύκλωμα με τη δυνατότητα εκτέλεσης εφαρμογών υψηλών απαιτήσεων σε δεδομένα και επεξεργαστική ισχύ, που θα συνδυάζει τη μέγιστη απόδοση αλλά και την ελάχιστη κατανάλωση ρεύματος.
The shift towards multicore technologies is offering a great potential of computational power for scientific and industrial applications. However, great challenges to software development arise. Performance gains for data intensive and compute intensive applications can be achieved by exploiting coarse-grained and fine-grained parallelism on all system levels and improved scalability with respect to the increasing core counts. Reconfigurable hardware has received increasing attention in the past decade due to its capability of being adaptable, short design time and low cost. Instead of using field-programmable gate arrays (FPGAs) just as application specific integrated circuit (ASIC) replacements, designers can combine reconfigurable hardware with general purpose processors in a co-design system, providing a flexible and powerful means of implementing computational applications. In this work the first steps for the implementation of such a co-design system are provided. The methodology that is proposed consists of: a) Selection of kernels or applications that will be modified and executed by the processing elements. b) Analysis and modeling of the kernels in order to perform execution time prediction depended on data input. c) Multiprocessors scheduling of independent tasks minimizing mean execution time The final project leads to a many cores System on Chip (SoC) with the ability to execute data intensive and compute intensive applications, taking into account optimal performance and power consumption.
The shift towards multicore technologies is offering a great potential of computational power for scientific and industrial applications. However, great challenges to software development arise. Performance gains for data intensive and compute intensive applications can be achieved by exploiting coarse-grained and fine-grained parallelism on all system levels and improved scalability with respect to the increasing core counts. Reconfigurable hardware has received increasing attention in the past decade due to its capability of being adaptable, short design time and low cost. Instead of using field-programmable gate arrays (FPGAs) just as application specific integrated circuit (ASIC) replacements, designers can combine reconfigurable hardware with general purpose processors in a co-design system, providing a flexible and powerful means of implementing computational applications. In this work the first steps for the implementation of such a co-design system are provided. The methodology that is proposed consists of: a) Selection of kernels or applications that will be modified and executed by the processing elements. b) Analysis and modeling of the kernels in order to perform execution time prediction depended on data input. c) Multiprocessors scheduling of independent tasks minimizing mean execution time The final project leads to a many cores System on Chip (SoC) with the ability to execute data intensive and compute intensive applications, taking into account optimal performance and power consumption.