Design methodologies for resource management of many-core embedded systems

2018 ◽  
Author(s):  
Βασίλειος Τσούτσουρας

Τα σύγχρονα ενσωματωμένα συστήματα, περιέχουν πληθώρα σύνθετων υπολογιστικών συσκευών συμπεριλαμβάνοντας αρχιτεκτονικά πλούσιους επεξεργαστές υψηλού κόστους, ετερογενείς συσκευές καθώς και πολυπύρηνους επεξεργαστές. Συνάμα, στο επίπεδο του συστήματος, έχουν προταθεί νέες αρχιτεκτονικές που επεκτείνουν την ιδέα του Διαδικτύου των Πραγμάτων (ΙοΤ), κάνοντας χρήση μιας πολύ-επίπεδης κατανεμημένης υποδομής, γνωστή ως υπολογισμός στα άκρα του δικτύου (Edge computing). Η σύλληψη αυτής της υποδομής πηγάζει από την ανάγκη να αντιμετωπιστούν μια σειρά από ανεπάρκειες της αρχικής υποδομής του ΙοΤ, που ήταν βασισμένη στο Νέφος (Cloud) και ήταν ως εκ τούτου εξαρτημένη από αυτό, έπασχε από προβλήματα συνδεσιμότητας και οδηγούσε σε μη αποδεκτά μεγάλες ανάγκες για επικοινωνία από τις ΙοΤ συσκευές προς το Νέφος. Στις προτεινόμενες υπολογιστικές υποδομές, προκύπτει η ανάγκη συνεργασίας των υπολογιστικών κόμβων με σκοπό να εκτελεστεί η ποικιλία των εργασιών που προέρχονται από τα εξαιρετικά δυναμικά χαρακτηριστικά του συστήματος, το οποίο περιλαμβάνει κινούμενους χρήστες και αδυναμία πρόβλεψης των αιτημάτων εκτέλεσης εφαρμογών. Επιπρόσθετα, οι νέες υπό ανάπτυξη εφαρμογές, πρέπει να έχουν σχεδιαστεί έχοντας υπόψιν την κατανομή των συσκευών, ώστε να είναι σε θέση να επωφεληθούν πλήρως από την ανανεωμένη υποδομή.Η τρέχουσα διατριβή ξεκινά εστιάζοντας στις απαιτήσεις και τον σχεδιασμό εφαρμογών που απευθύνονται σε ενσωματωμένα συστήματα πολλαπλών κόμβων. Οι υπό σχεδίαση εφαρμογές προέρχονται από τον ιατρικό κλάδο και ως εκ τούτου οι σχεδιαστικές απαιτήσεις τους δεν περιορίζονται στην υψηλή απόδοση, καθώς η ορθή και ακριβής λειτουργία των συσκευών είναι κρίσιμη για τον εν λόγω τομέα. Οι υπό ανάπτυξη εφαρμογές που στοχεύουν στην ΙοΤ αρχιτεκτονική, σχεδιάζονται ώστε να περιλαμβάνουν διακριτά, διαδοχικά στάδια εκτέλεσης που αποτελούν διαφορετικές δυναμικές διαμορφώσεις της συσκευής ώστε να μπορεί μια εφαρμογή να εκτελεστεί αποτελεσματικά σε ένα περιβάλλον που κομμάτια της ανατίθενται να εκτελεστούν σε άλλες συσκευές πύλες (Gateways). Κεφάλαια της διατριβής αφορούν επίσης τον αυτοματοποιημένο συ-σχεδιασμό υλικού και λογισμικού με χρήση σύνθεσης υψηλού επιπέδου (High Level Synthesis), ώστε να χτιστούν επιταχυμένες εκδόσεις υπολογιστικών πυρήνων για συστήματα που συνδυάζουν κεντρικές μονάδες επεξεργασίας (CPU) καθώς και επαναδιαμορφούμενο υλικό (FPGA). Οι μεθοδολογίες αυτές καταφέρουν αξιοσημείωτη μείωση στον χρόνο εκτέλεσης των υπολογιστικά απαιτητικών τμημάτων των ΙοΤ εφαρμογών.Αναφορικά με τον σχεδιασμό μιας ΙοΤ πύλης (Gateway), η χρήση ενός πολυπύρηνου συστήματος με διασύνδεση Δικτύου-σε-Ψηφίδα (Network-on-Chip) θεωρείται ως μια υποσχόμενη σχεδιαστική επιλογή ικανή να πληροί τις υπολογιστικές και επικοινωνιακές ανάγκες που προκύπτουν από την συνεργασία την πύλης με πληθώρα ΙοΤ συσκευών. Ωστόσο, το πολυπύρηνο σύστημα χρειάζεται έναν αποδοτικό μηχανισμό δυναμικής διαχείρισης των πόρων του, ώστε να αποδώσει τις αναμενόμενες επιδόσεις. Δεδομένης της πολυπλοκότητας της δυναμικής χαρτογράφησης (mapping) πολλών εφαρμογών σε ένα πολυπύρηνο σύστημα, σχεδιάστηκε και αναπτύχθηκε ένας Κατανεμημένος Δυναμικός Διαχειριστής Πόρων. Οι επιδόσεις του εν λόγω διαχειριστή αξιολογήθηκαν σε ένα πραγματικό πολυπύρηνο σύστημα, με διασύνδεση Δικτύου-σε-Ψηφίδα εν ονόματι Intel SCC. Η δυναμική φύση του περιβάλλοντος ΙοΤ, οδήγησε στην ανάλυση του συσχετισμού του ρυθμού άφιξης νέων εφαρμογών στο σύστημα, σε σχέση με την αποτελεσματικότητα του Κατανεμημένου Διαχειριστή Πόρων. Η ανάλυση αυτή έδειξε, ότι ένα γρήγορο και πολύ απαιτητικό σενάριο έλευσης εφαρμογών μπορεί να αποτελέσει το σημείο καμπής για την ποιότητα της διαχείρισης των πόρων. Επιπρόσθετα, η εφαρμογή μια κατάλληλης δυναμικής πολιτικής για την αποφυγή αυτού του προβλήματος, δυσχεραίνεται αισθητά από την κατανεμημένη φύση του διαχειριστή που απαιτεί την ομοφωνία πολλών επί μέρους δραστών (agents), ώστε να παρθεί μια τελική απόφαση, οδηγώντας αναπόφευκτα στην επιβράδυνση της λήψης της. Με σκοπό να ξεπεραστεί αυτή η αδυναμία, έγινε χρήση τεχνικών δυναμικής μεταβολής της τάσης και συχνότητας λειτουργίας του συστήματος, οι οποίες επιτρέπουν την έμμεση επιβράδυνση του ρυθμού εισαγωγής νέων εφαρμογών στο σύστημα, απαιτώντας παράλληλα την συνεννόηση μόνο ενός μικρού υποσυνόλου των δραστών που είναι ενεργοί. Η πολιτική αυτή υλοποιήθηκε ως επέκταση του κατανεμημένου διαχειριστή πόρων και απεδείχθη ότι είναι σε θέση να ανακουφίσει αποτελεσματικά το σύστημα όταν βρίσκεται σε επιβαρυμένη κατάσταση.Η υψηλή κλιμάκωση των ψηφιακών κυκλωμάτων των σύγχρονων πολυπύρηνων συστημάτων, καθώς και η διαρκής και παρατεταμένη λειτουργία τους αυξάνει την πιθανότητα παρουσίασης σφαλμάτων στα επεξεργαστικά τους στοιχεία. Αυτό, σε συνδυασμό με την εξάρτηση των ΙοΤ συσκευών από την ορθή λειτουργίας της συσκευής πύλης, οδήγησε στην επέκταση του κατανεμημένου διαχειριστή πόρων ώστε να χαρακτηρίζεται από ανοχή στα προαναφερθέντα σφάλματα. Η επέκταση αυτή βασίζεται στην δυναμική αντιμετώπιση των σφαλμάτων, λαμβάνοντας επίσης υπόψιν τον φόρτο εργασίας του κάθε πυρήνα κατά την διάρκεια της ανάνηψης από το σφάλμα. Ακόμα, ο σχεδιασμός απέχει από την χρήση εφεδρικών (spare) πυρήνων, αλλά βασίζεται στην αυτό-οργάνωση των υγιών δραστών του συστήματος ώστε να αντικατασταθούν οι εσφαλμένοι. Πέρα από την ανάνηψη, αναπτύχθηκε και ένας μηχανισμός αναγνώρισης των σφαλμάτων, ο οποίος λαμβάνει υπόψιν του τα επικοινωνιακά μοτίβα του διαχειριστή πόρων, ώστε να μειώσει την επιβάρυνση της αναγνώρισης σφαλμάτων στην δραστηριότητα των υγιών δραστών του συστήματος.Τέλος, οι βασικές ιδέες της κατανεμημένης διαχείρισης πόρων επεκτάθηκαν ώστε να υποστηρίξουν την δυναμική διαπραγμάτευση πόρων σε συστήματα υπολογισμού στην άκρη του δικτύου (Edge computing) με πολλούς ενδιάμεσους κόμβους πύλες. Αυτοί οι κατανεμημένοι κόμβοι, κάνουν χρήση μηχανισμών βασισμένων στις ιδέες του εμπορίου ώστε να βελτιστοποιήσουν την παρεχόμενη ποιότητα υπηρεσίας στους αντίστοιχους ΙοΤ κόμβους συνδρομητές στις υπηρεσίες της πύλης, τηρώντας ταυτόχρονα τους λειτουργικούς περιορισμούς αυτών των ΙοΤ συσκευών. Οι μηχανισμοί αυτοί οδηγούν στην πιο αποτελεσματική σύνδεση των ΙοΤ συσκευών στις πύλες, επιτρέποντας έτσι την πλήρη χρήση των πόρων των δεύτερων για την εξυπηρέτηση της λειτουργίας των πρώτων.

2017 ◽  
Vol 28 (7) ◽  
pp. 1905-1918 ◽  
Author(s):  
Lei Yang ◽  
Weichen Liu ◽  
Weiwen Jiang ◽  
Mengquan Li ◽  
Peng Chen ◽  
...  

2022 ◽  
Vol 27 (1) ◽  
pp. 1-31
Author(s):  
Sri Harsha Gade ◽  
Sujay Deb

Cache coherence ensures correctness of cached data in multi-core processors. Traditional implementations of existing protocols make them unscalable for many core architectures. While snoopy coherence requires unscalable ordered networks, directory coherence is weighed down by high area and energy overheads. In this work, we propose Wireless-enabled Share-aware Hybrid (WiSH) to provide scalable coherence in many core processors. WiSH implements a novel Snoopy over Directory protocol using on-chip wireless links and hierarchical, clustered Network-on-Chip to achieve low-overhead and highly efficient coherence. A local directory protocol maintains coherence within a cluster of cores, while coherence among such clusters is achieved through global snoopy protocol. The ordered network for global snooping is provided through low-latency and low-energy broadcast wireless links. The overheads are further reduced through share-aware cache segmentation to eliminate coherence for private blocks. Evaluations show that WiSH reduces traffic by and runtime by , while requiring smaller storage and lower energy as compared to existing hierarchical and hybrid coherence protocols. Owing to its modularity, WiSH provides highly efficient and scalable coherence for many core processors.


Author(s):  
Haoyuan Ying ◽  
Klaus Hofmann ◽  
Thomas Hollstein

Due to the growing demand on high performance and low power in embedded systems, many core architectures are proposed the most suitable solutions. While the design concentration of many core embedded systems is switching from computation-centric to communication-centric, Network-on-Chip (NoC) is one of the best interconnect techniques for such architectures because of the scalability and high communication bandwidth. Formalized and optimized system-level design methods for NoC-based many core embedded systems are desired to improve the system performance and to reduce the power consumption. In order to understand the design optimization methods in depth, a case study of optimizing many core embedded systems based on 3-Dimensional (3D) NoC with irregular vertical link distribution topology through task mapping, core placement, routing, and topology generation is demonstrated in this chapter. Results of cycle-accurate simulation experiments prove the validity and efficiency of the design methods. Specific to the case study configuration, in maximum 60% vertical links can be saved while maintaining the system efficiency in comparison to full vertical link connection 3D NoCs by applying the design optimization methods.


DYNA ◽  
2017 ◽  
Vol 84 (201) ◽  
pp. 202 ◽  
Author(s):  
Maribell Sacanamboy Franco ◽  
Freddy Bolaños-Martinez ◽  
Álvaro Bernal-Noreña ◽  
Rubén Nieto-Londoño

Los sistemas de red en chip (NoC) fueron desarrollados originalmente para proporcionar un alto rendimiento, mediante la disponibilidad de varias unidades de procesamiento, conectadas a través de una red cableada dentro del circuito integrado. Wireless NoC (WiNoC o WNoC) son una evolución natural de los sistemas NoC, que integran una comunicación jerárquica dentro del chip para mejorar la escalabilidad. El mapeo de tareas en los sistemas WNoC representa un proceso desafiante, que a menudo implica varios objetivos de optimización, como potencia, rendimiento, productividad, uso de recursos y métricas de red. Este artículo describe un algoritmo genético basado en un enfoque para encontrar soluciones óptimas de asignación de tareas en tiempo de diseño, para sistemas embebidos que trabajan sobre un WiNoC. Los objetivos de optimización fueron: Aceleración, Consumo de Energía y Ancho de Banda. La red de destino utilizada para la simulación puede ser vista como un WiNoC jerárquica de dos niveles. El primer nivel corresponde a un conjunto de subredes que están conectadas por cables y son de tipo malla. El segundo nivel corresponde a una topología en estrella de enlaces inalámbricos, que conectan las subredes de primer nivel. El algoritmo propuesto muestra un buen desempeño en relación con los objetivos de optimización y la WiNoC heterogéneo simulada.


Sign in / Sign up

Export Citation Format

Share Document