ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ 2014-2015 Επικ. Καθηγητής Δημήτριος Σούντρης Θεματική Ενότητα: Ενσωματωμένα Συστήματα Synchronization algorithms for concurrent data structures on multicore embedded systems Brief Discription: Modern multicore embedded systems integrate a large number of CPU cores, which require efficient synchronization methods for accessing shared data. Algorithms that have been proposed in the High Performance Computing domain cannot be applied directly to the embedded systems, due to the limitations they impose, such as the energy consumption and limited support for atomic operations. On the other hand, the traditional synchronization methods, like mutexes and spinlocks provide poor scalability and high energy consumption and therefore are inefficient for the modern low power embedded systems. The scope of this thesis is to develop new synchronization algorithms for modern multicore embedded systems that run applications based on shared data structures. The algorithms should focus on high performance along with low energy consumption. The embedded chips that will be used for the development of the algorithms are the Freescale imx6 4-core and the Myriad 8-core platform. Prerequisites: Good knowledge of C and data structures; concurrent development and embedded systems architecture principles. Keywords: Concurrent data structures, lock-based and lock-free programming, multicore embedded systems. Contact Information: Lazaros Papadopoulos: (lpapadop@microlab.ntua.gr) Prof. Dimitrios Soudris: (dsoudris@microlab.ntua.gr) ============================================================ Run-Time adaptivity of dynamic data structures Brief Description: In the exascale HPC era, the further increase of the computational power is hindered by the energy that such systems consume. The same applies to modern multicore embedded systems, where power efficiency has always been a major design constraint. Such systems run concurrently a wide range of dynamic applications based on complex data structures, with varying system resource demands during their execution. Therefore, it becomes important to develop data structures able to adapt at runtime to the resource availability under different scenarios, in order to achieve high performance along with energy efficiency.
The scope of this thesis is to develop techniques and methodologies for adapting data structure based applications on different run-time scenarios. Some of the embedded boards that can be used for the development of the methodology are the Freescale imx6 4-core and the Myriad1 8-core platform. Prerequisites: Good knowledge of C and data structures; concurrent development and embedded systems architecture principles. Keywords: Concurrent data structures, runtime management, multicore embedded systems. Contact Information: Lazaros Papadopoulos (lpapadop@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) Dark Silicon Runtime Allocation for Power Constrained Manycore Systems Brief Description: Exponentially increasing transistor density with each processor generation, along with constant chip-level power budgets and a slower rate of improvement in transistor power dissipation, exponentially decreases the percentage of transistors that can switch on simultaneously. This unavailability of enough power supply to fully utilize the underlying hardware resources, so called Dark Silicon, forms a major design problem modern system architects will face in future generation manycore systems. The scope of this diploma thesis is to develop efficient management techniques to intelligently allocate dark silicon during runtime to minimize performance loss and maximize power efficiency of the underlying manycore platform. Prerequisites: Good knowledge of system programming and scripting; perception of power aware design principles. Keywords: Dark silicon, runtime management, manycore platforms Contact Information: Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ---------------------------------------------------------------------------------------------------------------- Workload Monitoring/Analysis Mechanisms for Cloud-based and Big-Data applications on the Single Cloud Chip Manycore Platform Brief Description: Cloud computing is emerging as a dominant computing platform for providing scalable online services to a global client base. Today's popular online services are characterized by massive working sets, high degrees of parallelism, and real-time constraints, also known as Big-Data
applications. Big Data applications exhibits differing characteristics in respect to desktop and parallel workloads usually studied in computer architecture. The scope of this diploma thesis is to port Big Data applications in the innovative Intel s manycore platform, Single Cloud Chip (SCC) platform, and to develop the corresponding monitoring infrastructure to characterize the runtime behavior of scale-out applications as well as its correlation with the micro-architectural features found in SCC. Prerequisites: Good knowledge of system programming and scripting; perception of multi-core computer architecture and network-on-chip design principles. Keywords: Cloud applications, Big-Data, manycore platforms Contact Information: Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ---------------------------------------------------------------------------------------------------------------- Medical Embedded System Design and Optimization for ECG Signal Analysis and Diagnosis Brief Description: Cardiovascular diseases are becoming a major cause of mortality worldwide, requiring close and continuous supervision and care. Electrocardiogram (ECG) signals have long been used to diagnose disturbances of the heart s activity. Nowadays, driven by the technological advancements of embedded portable and wearable devices the automated processing and analysis of the ECG signal is receiving significant attention. The scope of this diploma thesis is to develop the SW infrastructure that will support (i) ECG signal analysis for feature extraction and the corresponding classification techniques for diagnosis of the heart condition. Platform dependent SW tuning as well as architectural decisions are expected to be explored to deliver an efficient system design under real-time and power constraints. Prerequisites: Good knowledge of C programming, Matlab and good understanding of signal processing concepts. Good knowledge of Verilog/VHDL is highly appreciated it. Keywords: Medical embedded system design, ECG analysis, machine learning, HW/SW codesign Contact Information: Vassileios Tsoutsouras (billtsou@microlab.ntua.gr) Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ----------------------------------------------------------------------------------------------------------------
Adaptive Dynamic Thermal Management for the Single Cloud Chip Manycore Platform Brief Description: As result of technology scaling, single-chip multi-/many-core power density increases and its spatial and temporal workload variation leads to temperature hot-spots, which may cause timing violations and accelerated chip failure. Conventional Dynamic Thermal Management (DTM) techniques are reactive in nature, starting to control the temperature after the current temperature reaches at the critical temperature threshold. Recently, closed-loop approaches for dynamic thermal management have been proposed to tackle temperature induced onchip emergencies In a proactive manner. The scope of this diploma thesis is the development of a control theoretic framework tuned for dynamic thermal management of the Intel s manycore platform, Single Cloud Chip (SCC) platform. The scalability and efficiency of existing thermal management techniques as well as their tuning knobs will be analyzed and evaluated, providing material for the development of a customized thermal management infrastructure for SCC platform. Prerequisites: Good knowledge of Matlab, system programming and scripting; perception of control mechanisms and low-power design principles. Keywords: Dynamic thermal management, control theory, power management policies, manycore platforms Contact Information: Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ---------------------------------------------------------------------------------------------------------------- Application Adaptive Resource and DVFS Management for Manycore Platforms Power consumption has become a major issue in the design of computing systems. Dynamic power management (DPM) has proven to be an effective technique for power reduction at system level. Up to now DPM techniques are mostly workload based, thus trying to control the voltage and frequency considering single and firm instances of the application. Moving the paradigm from single instance applications to run-time adaptable applications exposes a new design space to be explored under the context of dynamic power management. The scope of this diploma thesis is to develop a power management framework for multi- /many-core architectures that takes into account both conventional DVFS tuning knobs as well as their interaction with application specific tuning parameters and resource management knobs, for reduced power consumption under performance constraints. Prerequisites: Good knowledge of system programming, scripting, multi-core simulators; perception of lowpower design principles. Keywords: Dynamic power management, manycore platforms
Contact Information: Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ---------------------------------------------------------------------------------------------------------------- Μεθοδολογία εκτίμησης επιδόσεων ιεραρχιών σκιώδους μνήμης εντολών σε ενσωματωμένα συστήματα πολλαπλών επεξεργαστών Περιγραφή θέματος: Τις τελευταίες δεκαετίες έχει παρατηρηθεί αλματώδης αύξηση της παραγωγής ενσωματωμένων συστημάτων. Τα ενσωματωμένα συστήματα παίζουν πλέον κυρίαρχο ρόλο σε πάρα πολλούς τομείς της τεχνολογίας και της βιομηχανίας. Το γεγονός αυτό κάνει επιτακτική την ανάγκη ύπαρξης μεθόδων που διευκολύνουν και επιταχύνουν τη σχεδίαση των ενσωματωμένων συστημάτων αλλά και τον έλεγχο της επίδοσης τους από τα πρώτα στάδια σχεδίασης. Σε αυτή τη διπλωματική εργασία θα αναπτυχθεί μία μεθοδολογία που στοχεύει στην πολύ γρήγορη αλλά και με καλή ακρίβεια εκτίμηση της επίδοσης ενσωματωμένων συστημάτων. Στόχος της εργασίας αυτής είναι η ανάπτυξη ενός πλήρους parser του κώδικα μηχανής ενσωματωμένων επεξεργαστων (π.χ. ARM, MIPS, κτλ). Ο parser θα πρέπει να αναγνωρίζει ολόκληρο το σετ εντολών και τα βασικά μπλοκ εντολών. Το κύριο σημείο είναι η ανάπτυξη ενός αλγορίθμου διερεύνησης της ροής εκτέλεσης του CFG για εφαρμογές που έχουν πολλαπλά νήματα εκτέλεσης (multi-threaded applications). Τα εργαλεία που θα αναπτυχθούν (οι parsers) θα ενσωματωθούν στον GCC ή LLVM (με τη μορφή compiler passes) και θα αλληλεπιδρούν με τα διάφορα ενδιάμεσα αρχεία που παράγονται κατά τη διάρκεια μεταγλώττισης (IR dumps). Για την πλήρη υποστήριξη πολυ-νηματικών εφαρμογών, τα νέα εργαλεία θα είναι συμβατά με προγραμματιστικά περιβάλλοντα αιχμής του κλάδου της παράλληλης επεξεργασίας (π.χ. OpenMP, MPI και pthreads). Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η ανάπτυξη μεθοδολογίας καθώς και των κατάλληλων εργαλείων για την αποδοτική εκτίμηση των επιδόσεων διαφορετικών ιεραρχιών σκιώδους μνήμης εντολών σε ενσωματωμένα συστήματα πολλαπλών επεξεργαστών. Προαπαιτούμενες γνώσεις: Καλή γνώση προγραμματισμού C/C++, μεταγλωττιστές (compilers) και κώδικα μηχανής (assembly). Πληροφορίες: Διονύσης Διαμαντόπουλος, Δημήτριος Σούντρης Δυναμική διαχείριση μνήμης σε επίπεδο συστήματος Περιγραφή θέματος: Η διαχείριση μνήμης στα σύγχρονα ενσωματωμένα συστήματα έχει γίνει πλέον περισσότερο κρίσιμη λόγω του δυναμικού φόρτου εργασίας που καλούνται να εκτελέσουν τα περισσότερα. Είναι πολύ πιθανό περισσότερες από μία εφαρμογές να χρειάζεται να τρέξουν ταυτόχρονα και να ζητήσουν πρόσβαση στους περιορισμένους πόρους του συστήματος. Το τελευταίο επίπεδο διαχείρισης μνήμης πριν το υλικό ανήκει στο λειτουργικό σύστημα και θα πρέπει να λειτουργεί με ιδιαίτερα έξυπνο τρόπο έτσι, ώστε να εκμεταλλεύεται σωστά και με φειδώ τους πόρους του συστήματος (ιεραρχία μνήμης, χρήση μνημών cache), αλλά και να προστατεύει τις εφαρμογές που τρέχουν παράλληλα (χρήση εικονικών διευθύνσεων) χωρίς να προκαλεί πτώση στις επιδόσεις τους. Σκοπός - Αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η μελέτη των εσωτερικών μηχανισμών διαχείρισης μνήμης του Linux πυρήνα και η τροποποίηση της
υλοποίησης της mmap(). Κύριος στόχος θα είναι η βελτιστοποίησή της όσον αφορά την ταχύτητα εκτέλεσης πολλαπλών, μνημοβόρων, εφαρμογών ταυτόχρονα και την ελαχιστοποίηση της συνολικής χρήσης μνήμης στο σύστημα. Προαπαιτούμενες γνώσεις: Πολύ καλή γνώση προγραμματισμού C. Πληροφορίες: Ιωάννης Κούτρας, Δημήτριος Σούντρης Αυτόματη διαχείριση μνήμης σε ενσωματωμένα συστήματα που εκτελούν εφαρμογές γραμμένες σε C (application-specific garbage collection) Περιγραφή θέματος: Την αυτόματη διαχείριση μνήμης (garbage collection) μπορούμε να τη δούμε σε αντιδιαστολή με την manual διαχείριση μνήμης, η οποία απαιτει από τον προγραμματιστή να δηλώσει ρητά τα αντικείμενα που θέλει να αποδεσμεύσει (de-allocate) από την μνήμη και έτσι να ελευθερώσει τους αντίστοιχους πόρους. Πολλά συστήματα όμως χρησιμοποιούν και τις δυο προσεγγίσεις. Στόχος της Διπλωματικής Εργασίας είναι η αυτόματη διαχείριση μνήμης ενσωματωμένων συστημάτων ώστε οι αποδεσμεύσεις των δεδομένων να γίνονται με ασφάλεια χωρίς την επέμβαση του προγραμματιστή (transparent to developer). Σημαντικό βήμα είναι η μελέτη της βιβλιογραφίας για την εύρεση των υπάρχοντων τεχνικών και η οργάνωσή τους σε ένα χώρο σχεδιασμού ο οποίος θα αποτελείται από ανεξάρτητα δένδρα αποφάσεων. Η εξερεύνηση του χώρου σχεδιασμού (επιλογές φύλων μεταξύ των δένδρων αποφάσεων) θα οδηγεί σε ένα πλήρως λειτουργικό garbage collector. Τα δένδρα αποφάσεων αντιστοιχούν σε διακριτά λειτουργικά χαρακτηριστικά των διάφορων garbage collector της βιβλιογραφίας. Θα αναπτυχθεί η μεθοδολογία εξερεύνησης του χώρου σχεδιασμού, θα υλοποιηθεί ο χώρος σχεδιασμού (C modules) και θα ενσωματωθεί σε ήδη υπάρχουσα βιβλιοθήκη διαχείρισης δυναμικών δεδομένων. Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι λεπτομερής μελέτη του χώρου σχεδιασμού garbage collectors, η μοντελοποίησή του σε δένδρα αποφάσεων και η ενσωμάτωσή του σε ήδη υπάρχουσα βιβλιοθήκη διαχείρισης δυναμικών δεδομένων. Προαπαιτούμενες γνώσεις: Καλή γνώση προγραμματισμού C, δομών δεδομένων και λειτουργικών συστημάτων. Πληροφορίες: Ηρακλής Αναγνωστόπουλος, Ιωάννης Κούτρας, Δημήτριος Σούντρης, Ανάπτυξη μεθοδολογίας μετασχηματισμού δυναμικών τύπων δεδομένων κατά τη διάρκεια εκτέλεσης εφαρμογών σε ενσωματωμένα συστήματα (adaptive dynamic data type transformations) Περιγραφή θέματος: Οι εφαρμογές λογισμικού που εκτελούνται σε σύγχρονα ενσωματωμένα συστήματα πρέπει να καλύπτουν τις ανάγκες του χρήστη αλλά και να προσαρμόζονται στις περιβάλλον λειτουργίας του ενσωματωμένου συστήματος. Όμως οι ανάγκες αλλά και οι συνθήκες λειτουργίας αλλάζουν δυναμικά κατά τη διάρκεια λειτουργίας του συστήματος (π.χ. αλλαγές στην στάθμη της μπαταρίας του συστήματος, αλλαγή στη διαθεσιμότητα πόρων, κτλ.) Στο επίπεδο της εφαρμογής αυτή η δυναμικότητα υποστηρίζεται και με τη χρησιμοποίηση δυναμικών τύπων δεδομένων (π.χ. λίστες, δένδρα, ουρές, κτλ.) για την αποθύκευση των δεδομένων και την πρόσβαση σε αυτά. Είναι σημαντικό οι εφαρμογές
λογισμικού να μπορούν να προσαρμόζονται αυτόματα στις νέες συνθήκες λειτουργίας χωρίς να μεταβάλλεται η λειτουργικότητά τους. Ένας τρόπος προσαρμογής είναι ο μετασχηματισμός των δυναμικών τύπων δεδομένων κατά τη διάρκεια εκτέλεσης (at runtime) από τον ένα τύπο στον άλλο ώστε να επιτευχθούν κέρδη σχετικά: α) με την ταχύτητα πρόσβασης στα δεδομένα, β) την κατανάλωση ενέργειας, και γ) με το μέγεθος της απαιτούμενης μνήμης. Στόχος της Διπλωματικής Εργασίας είναι η ανάπτυξη της μεθοδολογίας, υλοποίηση της λογικής υπεύθυνης για τον μετασχηματισμό των δυναμικών τύπων δεδομένων και η ενσωμάτωσή της σε ήδη υπάρχουσα βιβλιοθήκη δυναμικών τύπων δεδομένων. Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η ανάπτυξη μεθοδολογίας καθώς και των κατάλληλων εργαλείων για την πραγματοποίηση μετασχηματισμών δυναμικών τύπων δεδομένων κατά τη διάρκεια εκτέλεσης εφαρμογών σε ενσωματωμένα συστήματα. Προαπαιτούμενες γνώσεις: Καλή γνώση προγραμματισμού C/C++, STL και δομών δεδομένων. Πληροφορίες: Δημήτριος Σούντρης, Λάζαρος Παπαδόπουλος Ανάπτυξη Μεθοδολογίας Δυναμικής Αξιοποίησης Πόρων σε FPGA με Διερεύνηση του Μονοπατιού Δεδομένων (Data Path) Περιγραφή θέματος: Δεδομένου ότι οι ενσωματωμένες εφαρμογές γίνονται ολοένα μεγαλύτερες, το έργο σχεδιασμού αντίστοιχων ψηφιακών κυκλωμάτων που τις υποστηρίζουν γίνεται ολοένα και πιο δύσκολο. Η διαχείριση πόρων τέτοιων συστημάτων καθίσταται ιδιαίτερα πολύπλοκη και ο καλύτερος τρόπος αντιμετώπισης τους είναι η απεικόνιση του κυκλώματος σε ένα πιο αφηρημένο επίπεδο, αξιοποιώντας εργαλεία λογισμικού για την εξαγωγή της χαμηλού επιπέδου υλοποίησης. Η προσέγγιση αυτή αφαιρεί κουραστικές λεπτομέρειες και μας επιτρέπει να επικεντρωθούμε σε εναλλακτικές λύσεις σχεδιασμού υψηλού επιπέδου. Παρά το γεγονός ότι τα εργαλεία λογισμικού αυτοματοποιούν πολλές από τις διαδικασίες σχεδιασμού μπορούν να εκτελέσουν μόνο επιμέρους μετασχηματισμούς και βελτιστοποίησης. Σε αυτή τη διπλωματική εργασία θα αναπτυχθεί μία μεθοδολογία στοχευμένης αξιοποίησης των εργαλείων Σύνθεσης για FPGA με σκοπό την καλύτερη αξιοποίηση των πόρων του FPGA με συγκεκριμένoυς περιορισμούς. Θα υλοποιηθούν εργαλεία αυτοματoματοποιημένης εξαγωγής δεδομένων σε χαμηλό επίπεδο υλοποίησης (netlist) τα οποία θα αξιοποιούνται από ένα μηχανισμό διαχείρισης πόρων πραγματικού χρόνου (Run-Time). Πιο συγκεκριμένα η μελέτη θα επικεντρωθεί στην ανάλυση και ιεράρχηση των κρίσιμων μονοπατιών (critical paths) και ιδιαίτερα εκείνων που αφορούν το μονοπάτι δεδομένων (Data Path). Στόχος της υλοποίησης είναι να εξαχθούν διαχειριστές (schedulers) προσαρμοσμένοι στα ιδιαίτερα χαρακτηριστικά κάθε συστήματος. Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η ανάπτυξη μεθοδολογίας καθώς και των κατάλληλων εργαλείων για την αποδοτική διαχείριση πόρων για Ενσωματωμένες Eφαρμογές υλοποιημένες σε FPGAs
Προαπαιτούμενες γνώσεις: Καλή γνώση VHDL και εργαλείων συνθεσης σε FPGA Πληροφορίες: Νικόλαος Ζομπάκης (nzompaki@gmail.com), Δημήτριος Σούντρης dsoudris@microlab.ntua.gr DIPLOMA THESES NTUA AND ERASMUS UNIVERSITY (The Netherlands) Topic: Low-power classification for biometric-based implant security This topic is in the context of heart-beat-based security for implantable medical devices (IMDs). The time interval between heart beats contains a high degree of entropy, while it may be measured remarkably consistent throughout the human body. In other words, multiple entities on the same body may use this time interval to generate a nearly identical security key, showing minor disparities due to natural variations in the human body. Accordingly, secure communication is facilitated if the keys are "similar enough", evaluated by a key-classification scheme. In this topic, the student is expected to develop a key-classification scheme which adheres to the steep security requirements and tight constraints of IMDs. Expected effort: The student is expected to categorize various methods of heart-beat-based keygeneration and key-classification schemes. Subsequently, these classification schemes are to be evaluated in terms of security and overheads (energy consumption, performance, etc.). Based on this evaluation, the student is expected to design and evaluate a novel key-classification scheme tailored to heart-beat-based security. Expected outcome: A key-classification scheme which is suitable for heart-beat-based security in IMDs. Prerequisites: The student is expected to have a background in computer science, computer engineering or embedded systems and has a basic understanding of security concepts and low-power design. Contact: R.M. Seepers, r.seepers@erasmusmc.nl, Erasmus Medical Center, The Netherlands and Dimitrios Soudris dsoudris@microlab.ntua.gr, NTUA, Athens Low-power classification for biometric-based implant security
Heart-beat-based security has recently been proposed to facilitate security in mobile-health applications, such as Implantable Medical Devices (IMDs). Previous work has shown that the time between two consecutive heart beats contains a significant degree of entropy, while at the same time being remarkably consistent when measured on different locations of a patient s body, allowing it to be used for security aspects such as entity authentication or key agreement. To exemplify, we depict a simple method of heartbeat-based entity authentication in Figure 1. First, each entity detects a number of heart beats from a cardiac biosignal, calculates the time interval between these heart beats and concatenates a number of bits from this time interval to form a security key. As biosignals are rarely identical, i.e., each entity may observe slight variations in the obtained signals (inter-sensor variability), entity authentication is successful if the keys are classified similar enough, in this example by checking the Hamming distance between the generated keys. Figure 1: Entity authentication using heart beats. In prior work, various classifiers (key-classification schemes) have been proposed which may be used for entity authentication. Examples include the aforementioned Hamming distance, fuzzy extraction, frequency-domain comparisons and Neyman-Pearson hypothesis testing. However, it is not clear how secure these classifiers are, nor how suitable these classifiers are for tightly constrained devices (IMDs). Several trade-offs may be made between security and its overheads including, for example, the security may be increased by increasing the number of chaff points in fuzzy extractors or using more heartbeats to generate a key, albeit at the cost of increased energy consumption. In this MSc topic, the student is expected to find a key-classification scheme for heart-beat-based security, suitable for implantable devices. To this end, the student is expected to perform the following: 1. A categorization of the various methods of key generation and classification schemes which may be applied in heart-beat-based security; 2. A thorough evaluation of these classification schemes for heart-beat-based security in terms of security performance and overheads; and 3. Based on the particularities of heart-beat-based security (1) and the evaluation of existing classification schemes (2), the design and evaluation of a novel classification scheme tailored to heart-beat-based security. Contact: R.M. Seepers, r.seepers@erasmusmc.nl, Erasmus Medical Center, Rotterdam, The Netherlands and Dimitrios Soudris dsoudris@microlab.ntua.gr, NTUA, Athens
Ανάπτυξη Τεχνικών Δυναμικής Εκπαίδευσης Νευρωνικών Δικτύων Σε Πραγματικό Χρόνο Εκτέλεσης Τα Νευρωνικά Δίκτυα αποτελούνται από πολλά κρίσιμα μέρη. Ένα Νευρωνικό Δίκτυο αποτελείται από έναν ή περισσότερους νευρώνες που συνδέονται με πολλαπλές διαμορφώσεις. Οι γραμμές που τα συνδέουν αντιπροσωπεύουν βάρη. Η επιλογή αυτών των βαρών καθορίζει το πώς το Νευρωνικό Δίκτυο θα ανταποκριθεί σε συγκεκριμένα πρότυπα εισόδου. Εκπαίδευση Νευρωνικού Δικτύου είναι η μέθοδος επιλογής των βαρών για να δοθεί το επιθυμητό αποτέλεσμα σε ένα δεδομένο σύνολο εισόδων. Η εκπαίδευση των Νευρωνικών είναι μια πολύ απαιτητική λειτουργία και συνιστά πολλούς περιορισμούς ιδιαιτέρα ως προς την χρήση των πόρων όταν γίνεται σε πραγματικό χρόνο (Run-Time). Στα πλαίσια της παρούσας διπλωματικής εργασίας θα μελετηθεί η λειτουργία ενός Νευρωνικού Δικτύου και θα διερευνηθούν τρόποι εκπαίδευσης σε νέα δεδομένα που θα δίνονται σε πραγματικό χρόνο. Στόχος είναι η προσαρμογή του σφάλματος εξόδου σε νέα δεδομένα σε χρόνο εκτέλεσης με συγκεκριμένους περιορισμούς κόστους (απόδοσης, ενέργειας και χώρου). Σκοπός είναι η ανάπτυξη ενός αξιόπιστου μηχανισμού Ανίχνευσης Σεναρίων (Detection) που προσαρμόζεται σε κάθε αλλαγή φάσης του Συστήματος. Επίσης, Θα διερευνηθούν οι βέλτιστοι τρόποι υλοποίησης της εκπαίδευσης είτε σε υψηλό επίπεδο (C, C++) ή σε χαμηλό (VHDL). Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η ανάπτυξη τεχνικών καθώς και κατάλληλων εργαλείων εκπαίδευσης Νευρωνικών Δικτύων σε πραγματικό χρόνο με συγκεκριμένους χρονικούς περιορισμούς. Προαπαιτούμενες γνώσεις: Καλή γνώση C/C++, VHDL και εργαλείων συνθεσης σε FPGA Πληροφορίες: Νικόλαος Ζομπάκης (nzompaki@gmail.com), Δημήτριος Σούντρης dsoudris@microlab.ntua.gr Ανάπτυξη Τεχνικών Βέλτιστης Υλοποίησης Νευρωνικών Δικτύων Σε Υλικό Τα τεχνητά Νευρωνικά Δίκτυα είναι υπολογιστικά μοντέλα που εμπνέονται από τις αρχές των υπολογισμών που εκτελούνται στα βιολογικά νευρωνικά δίκτυα του εγκεφάλου. Τα Νευρωνικά Δίκτυα έχουν πολλά ελκυστικά χαρακτηριστικά που μπορούν να ξεπεράσουν ορισμένα από τα όρια των κλασικών υπολογιστικών συστημάτων. Η επεξεργασία στα Νευρωνικά Δίκτυα είναι παράλληλη και κατανεμημένη. Οι πληροφορίες αποθηκεύονται και διανέμονται μέσω ενός δικτύου στις συνδέσεις και υποβάλλονται σε επεξεργασία σε ένα μεγάλο αριθμό νευρώνων παράλληλα. Τα νευρωνικά δίκτυα έχουν τη δυνατότητα να μάθουν τους κανόνες που περιγράφουν τα δεδομένα εκπαίδευσης και από την ήδη υπάρχουσα γνώση να ανταποκριθούν σε νέα πρότυπα. Τα Νευρωνικά Δίκτυα είναι ανεκτικά σε σφάλματα, με την έννοια ότι η απώλεια μερικών νευρώνων ή συνδέσεων δεν επηρεάζουν σημαντικά τη συμπεριφορά τους, δεδομένου ότι η επεξεργασία των πληροφοριών
περιλαμβάνει ένα μεγάλο αριθμό νευρώνων και συνδέσεων τους. Τεχνητά νευρωνικά δίκτυα έχουν βρει εφαρμογές σε πολλούς τομείς - για παράδειγμα, επεξεργασία σήματος, ανάλυση εικόνας, ιατρικά συστήματα διάγνωσης και οικονομικές προβλέψεις. Η συντριπτική πλειοψηφία των νευρωνικών δικτύων εξακολουθούν να υλοποιούνται σε λογισμικό για ακολουθιακές μηχανές. Αν και αυτό δεν αποτελεί πάντα σοβαρό περιορισμό, υπάρχουν πολλές προοπτικές κέρδους από την άμεση εφαρμογή των Νευρωνικών Δικτύωνα σε υλικό (hardware), ειδικά εάν η υλοποίηση εκμεταλλεύεται τα εγγενή παράλληλα χαρακτηριστικά των Nευρωνικών. Στα πλαίσια της παρούσας διπλωματικής εργασίας θα μελετηθεί η υλοποίησήη ένός υπάρχον Νευρωνικού Δικτύου και θα διερευνηθούν βέλτιστοι τρόποι υλοποίησης σε hardware (FPGA, ASICS). Η μελέτη θα περιλαμβάνει την ανάπτυξη βέλτιστων αρχιτεκτονικών του Νευρωνικού ανάλογα με την υλοποίηση και σεβόμενοι συγκεκριμένους περιορισμούς (απόδοσης, ενέργειας και χώρου). Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η ανάπτυξη τεχνικών βέλτιστης υλοποίησης Νευρωνικών Δικτύων σε υλικό (hardware) με συγκεκριμένους περιορισμούς κόστους. Προαπαιτούμενες γνώσεις: Καλή γνώση VHDL και εργαλείων συνθεσης σε FPGA & ASICS Πληροφορίες: Νικόλαος Ζομπάκης (nzompaki@gmail.com), Δημήτριος Σούντρης dsoudris@microlab.ntua.gr ---------------------------------------------------------------------------------------------------------------- Biomedical Engineering and High Performance Computing Achieving Massive Simulations of an Accurate Inferior Olive Neurological Model Using the Intel Xeon Phi Coprocessor 60 cores Brief Description: Simulations of neurological models are key factors in aiding neuroscientists further understand the intricacies of the brain. Such a model of the inferior olive cell networks, located in the cerebellum, has already been ported on manycore platforms, such as the Single-Chip Cloud Computer (SCC) and necessity for a platform with greater computing and storing capabilities has been established. The Intel Xeon Phi Coprocessor has been designed with massively parallel applications needing great memory bandwidth in mind and thus we deem it an appropriate platform to host a demanding biomedical application. The scope of this diploma thesis is to port the inferior olive cell model on the Intel Xeon Phi Coprocessor. We aim to use its processing power to massively scale the application, ultimately studying the coprocessor's performance and comparing it to other manycore platforms. We also attempt to solve problems that have already appeared from trying to simulate neurological networks of great sizes, such as storing their input and output.
Prerequisites: Flawless knowledge of the C language and good familiarization with scripting and Matlab; firm grasp of manycore system architectures and message-passing parallel algorithms; elementary knowledge of a neuron's biological model and neuron networking. Keywords: Manycore applications, Bioinformatics, Neuroscience, Intel Xeon Phi Contact Information: George Chatzikonstantis (georgec@microlab.ntua.gr) Dimitris Rodopoulos (drodo@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) Biomedical Engineering and Reliability SPICE-Compatible Verilog-AMS Model for Inferior Olive Neurons Introduction The topic of this Thesis is the development of a Verilog-AMS model for the Inferior Olive class of neural cells. This project will be based on prior art on neuron modeling and compact device simulation using the capabilities of Verilog-AMS. This Thesis falls under an interdisciplinary collaboration between MicroLab-ECE-NTUA, Greece and the Neuroscience Department of the Erasmus Medical Center in the Netherlands. Technical Details The Inferior Olive (InfOli) neural cells are of major importance for the development of motor skills and space perception. Extensive research effort has been placed to reveal their functionality [2, 3]. Even from 1950s, the juxtaposition between electrical circuits and neural functionality has been materialized in models like the one from Hodgkin and Huxley [4]. This Thesis will attempt to amplify this analogy by using tools for traditional Integrated Circuit design in order to perform transient simulations of networks of InfOli cells. More specifically, an industrial SPICE-like [5] simulator will be used, enhanced with a compatible InfOli model. The latter, will be implemented in the Verilog-AMS language [1], which is traditionally used to behaviorally model complex electrical/electronic phenomena [6]. The resulting implementation will be compared in terms of performance and efficiency against previous work on InfOli modeling [7]. Prerequisites There are no major technical prerequisites for this Thesis topic. The student should adhere to regular progress reporting and willing to deliver high quality research results. Prior involvement in SPICE-related projects and lab exercises will be considered a plus for this Thesis project. Basic knowledge of neural cell operation (e.g. Introduction to Bioengineering and Applied Biophysics) will help the student scale the learning curve of the topic. Very good English skills (reading, writing and speaking) are required, however hints on academic integrity and authoring will be provided during the Thesis fulfillment. Administrative Details
The projected duration of this Thesis is 6-9 months. For further details please contact the following people: 1) Mr. Dimitrios Rodopoulos, PhD Researcher, NTUA, Greece, drodo@microlab.ntua.gr 2) Dr. Christos Strydis { Postdoctoral Researcher at Erasmus Medical Center, The Netherlands c.strydis@erasmusmc.nl 3) Prof. Dimitrios Soudris, Associate Professor at MicroLab-ECE-NTUA, Greece dsoudris@microlab.ntua.gr References [1] S. Balasubramanian and P. Hardee. Solutions for mixed-signal soc verification using real number models. Technical report, Cadence Design Systems, 2013. [2] De Gruijl, J. R. et al. Climbing Fiber Burst Size and Olivary Sub-threshold Oscillations in a Network Setting. PLoS Comput Biol, 2012. [3] De Zeeuw, C. I. et al. Spatiotemporal firing patterns in the cerebellum. Nature Review Neuroscience, 12(6):327{344, 2011. [4] Hodgkin, A. L. et al. A quantitative description of membrane current and its application to conduction and excitation in nerve. Journal of Physiology, 117(4), 1952. [5] L.W. Nagel and D.O. Pederson. Spice (simulation program with integrated circuit emphasis). Technical Report UCB/ERL M382, EECS Department, University of California, Berkeley, Apr 1973. [6] Rodopoulos, D. et al. Time and workload dependent device variability in circuit simulations. In IC Design Technology (ICICDT), 2011 IEEE International Conference on, pages 1{4, 2011. [7] Rodopoulos, D. et al. Optimal mapping of inferior olive neuron simulations on the Single- Chip Cloud Computer. In Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIV), 2014 International Conference on, pages 367{374, July 2014. -------------------------------------------------------------------------------------------------------------------------- Reconfigurable Architectures and Systems Εργαστήριο Φωτονικών Επικοινωνιών Εργαστηρίο Μικροϋπολογιστών & Ψηφιακών Συστημάτων Τίτλος: Σχεδιασμός και υλοποίηση σε FPGA πομποδέκτη υψηλής ταχύτητας για οπτικά δίκτυα τηλεπικοινωνιών Τα τελευταία χρόνια η χρήση του Internet και των διαδικτυακών πόρων (cloud services, mobile internet, online gaming) παρουσιάζει εντυπωσιακή αύξηση. Επίσης, παρατηρείται μια αλλαγή στη φύση της κίνησης καθώς η απαίτηση για γρηγορότερη πρόσβαση και η χρήση φορητών συσκευών την έχει καταστήσει πολύ πιο δυναμική και απρόβλεπτη. Σε αυτό το πλαίσιο, η χρήση οπτικών επικοινωνιών καθίσταται απαραίτητη ώστε να καλυφθούν οι απαιτήσεις των σημερινών αλλά και μελλοντικών τηλεπικοινωνιακών δικτύων. Τα σύγχρονα οπτικά δίκτυα προσφέρουν πολύ μεγαλύτερες ταχύτητες μεταφοράς δεδομένων (100-400 Gbit/s ανά μήκος κύματος) και αποδοτικότερη χρήση του διαθέσιμου εύρους ζώνης (bandwidth) σε σχέση με τις συμβατικές τηλεπικοινωνιακές ζεύξεις (ενσύρματα, ασύρματα). Επιπλέον, η υιοθέτηση καινοτόμων τεχνολογιών και αρχιτεκτονικών στα σύγχρονα οπτικά δίκτυα (coherent optical communication, flexible optical networks) προσφέρει τη δυνατότητα για πιο ευέλικτα οπτικά δίκτυα ικανά να διαχειριστούν την δυναμική και
αυξανόμενη διαδικτυακή κίνηση. Βασικό στοιχείο ενός ευέλικτου οπτικού δικτύου είναι οι ευέλικτοι, επαναρυθμιζόμενοι οπτικοί πομποδέκτες (flexible optical transceivers), ικανοί να διαχειριστούν δυναμικά τους διαθέσιμους δικτυακούς πόρους ανάλογα με τις απαιτήσεις της τηλεπικοινωνιακής κίνησης. Για την υλοποίηση ενός τέτοιου πομποδέκτη είναι απαραίτητη η χρήση ψηφιακών ηλεκτρονικών (FPGAs, ASICs) καθώς και της ψηφιακής επεξεργασίας σήματος (DSP). Στα πλαίσια της διπλωματικής εργασίας ο φοιτητής θα εργαστεί με το Transceiver Signal Integrity Development Kit, Stratix V GT Edition της Altera. Σκοπός της παρούσας διπλωματικής εργασίας είναι η υλοποίηση σε FPGA ενός βασικού πομποδέκτη υψηλής ταχύτητας (28 Gbit/s) για χρήση σε οπτικές ζεύξεις. Ο/η υποψήφιος/α αρχικά θα πρέπει να διενεργήσει βιβλιογραφική έρευνα για τις βασικές λειτουργίες ενός οπτικού πομποδέκτη. Στη συνέχεια ο φοιτητής θα ασχοληθεί με: 1. Το σχεδιασμό βασικών λειτουργιών ενός πομποδέκτη όπως την παραγωγή, αποστολή και λήψη τυχαίων και προγραμματιζόμενων παλμοσειρών σε υψηλές ταχύτητες (20-28 Gbit/s) σε γλώσσα VHDL και με χρήση των διαθέσιμων προγραμμάτων ανάπτυξης. 2. Την υλοποίηση αυτών των λειτουργιών σε ένα Altera Stratix V GT FPGA, που υλοποιεί τους γρηγορότερους πομποδέκτες (transceivers) διαθέσιμους σε FPGA σήμερα, με δυνατότητα αποστολής και λήψης έως και 28 Gbit/s, καθώς και οπτικές διασυνδέσεις (interfaces) SFP και XFP. 3. Την διεξαγωγή πειραματικής διαδικασίας στο εργαστήριο οπτικών επικοινωνιών με πραγματική αποστολή και λήψη δεδομένων, καταγραφή και μέτρηση σε παλμογράφο, καθώς και μέτρηση λαθών (BER test). Για τη διπλωματική εργασία αυτή θα υπάρχει συν-επίβλεψη μεταξύ του Εργαστηρίου Φωτονικών Επικοινωνιών και του Εργαστηρίου Μικρουπολογιστών και Ψηφιακών Συστημάτων. Απώτερος σκοπός είναι ο φοιτητής να έρθει σε επαφή με δύο διαφορετικές τεχνολογίες (ψηφιακά ηλεκτρονικά και οπτικές επικοινωνίες) και να εργαστεί ώστε να αποκτήσει πολύτιμες γνώσεις και από τα δύο εργαστήρια, σε συνεργασία με τους υπευθύνους. Το εργαστήριο Μικροϋπολογιστών και Ψηφιακών Συστημάτων θα έχει την κύρια επίβλεψη για τον σχεδιασμό και την υλοποίηση σε FPGA των βασικών λειτουργιών του ευέλικτου οπτικού πομποδέκτη, ενώ στο εργαστήριο Φωτονικών Επικοινωνιών θα λάβει μέρος η πειραματική διαδικασία αποστολής και λήψης πραγματικών σημάτων. Ελάχιστος χρόνος εκπόνησης: 6 μήνες. Προαπαιτούμενα: - Ο/η υποψήφιος/α να μην χρωστάει πάνω από 7 μαθήματα. - Γνώσεις ψηφιακών ηλεκτρονικών, βασική γνώση VHDL και FPGA. - Γνώσεις τηλεπικοινωνιών. Επικοινωνία: - δρ. Παρασκευάς Μπακόπουλος, pbakop@mail.ntua.gr - δρ. Γιώργος Λεντάρης, glentaris@microlab.ntua.gr - καθ. Ηρακλής Αβραμόπουλος, hav@mail.ntua.gr - αν. καθ. Δημήτριος Σούντρης, dsoudris@microlab.ntua.gr
---------------------------------------------------------------------------------------------------------------- Development of Dynamic Memory Management for Multi-Accelerator FPGA Design Brief Description: This diploma thesis targets the field of multiple-accelerator FPGA synthesis. It has been foreseen that Cloud computing services can be benefited from the incorporation of FPGAs to accelerate the computation and memory intensive tasks. Multiple heterogeneous accelerators with differing memory demands are expected to be dynamically mapped onto FPGA devices incorporated within the cloud datacenter infrastructures. The scope of this thesis is to target the memory wall problem faced at FPGA devices serving multiple accelerator instantiations through the development of a dynamic memory management infrastructure that will enable higher accelerator densities to be achieved within the FPGA s specific area and power constraints Prerequisites: Good knowledge of C/HDL programming & and FPGA design; perception of HW/SW co-design principles. Keywords: FPGA accelerators, Dynamic Memory Management, High Level Synthesis. Contact Information: Dr. Sotirios Xydis (sxydis@microlab.ntua.gr) Dionysios Diamantopoulos (diamantd@microlab.ntua.gr) Dr. Kostas Siozios (ksiop@microlab.ntua.gr) Prof. Dimitrios Soudris (dsoudris@microlab.ntua.gr) ---------------------------------------------------------------------------------------------------------------- Υλοποίηση Αλγορίθμων για το Σχεδιασμό (3-D) Ενσωματωμένων Συστημάτων & Επαναδιαμορφούμενων Αρχιτεκτονικών Thesis Description: For decades, semiconductor manufacturers have been shrinking transistor size in Integrated Circuits (ICs) to achieve the yearly increases in performance described by Moores Law, which exists only because the RC delay was negligible, as compared to the signal propagation delay. For sub-micron technology, however, the RC delay becomes a dominant factor. Furthermore, previous studies showed that at 130nm technology node approximately 51% of the microprocessors power is consumed by interconnect fabric. This has generated many discussions concerning the end of device scaling as we know it, and has hastened the search for solutions beyond the perceived limits of current 2-D devices. Three dimensional (3-D) chip stacking is considered by many as the silver bullet technology that will accommodate for all the aforementioned requirements. Stacking multiple dies in the vertical axis and interconnecting them using very fine-pitch Through Silicon Vias (TSVs) enables the creation of chips with very diverse functionalities implemented in different process technologies in a very small form factor. Introducing locality along the z-axis enables on average shorter interconnections between system components, which in turn leads to reduced signal propagation delay compared to conventional (i.e. 2-D) architectures.
Objectives: Propose a methodology for performing architecture-level exploration of 3-D reconfigurable architectures. Develop CAD algorithm for supporting application mapping onto these 3-D architectures. Implement the algorithm as part of an existing open-source CAD tool. Prerequisite: Advanced knowledge of C/C++ Πληροφορίες: Δημήτριος Σούντρης, Κώστας Σιώζιος, {dsoudris, ksiop}@microlab.ntua.gr ---------------------------------------------------------------------------------------------------------------- Υλοποίηση αλγορίθμων ρομποτικής όρασης σε FPGA Περιγραφή θέματος: Οι αλγόριθμοι ρομποτικής όρασης χαρακτηρίζονται από αυξημένα επίπεδα πολυπλοκότητας, τα οποία καθιστούν την εκτέλεση τους μη ικανοποιητική σε επεξεργαστές γενικού σκοπού (π.χ. Pentium, AMD, κτλ). Χαρακτηριστικά παραδείγματα εφαρμογής τέτοιων αλγορίθμων αποτελούν τα αυτοκινούμενα ρομποτικά οχήματα διαστημικού ενδιαφέροντος. Σκοπός αναμενόμενα αποτελέσματα: Στα πλαίσια της συγκεκριμένης διπλωματικής εργασίας θα γίνει υλοποίηση ενός τέτοιου αλγορίθμου (ρομποτικής όρασης) σε επαναδιαμορφούμενο υλικό (FPGA). Για τους σκοπούς της εργασίας θα χρησιμοποιηθεί ως πλατφόρμα υλοποίησης το Xilinx Virtex-6. Το πλάνο εργασίας στη συγκεκριμένη διπλωματική περιλαμβάνει αρχικά την μελέτη και διερεύνηση του επιλεγμένου αλγορίθμου προκειμένου να εντοπιστούν τα κρίσιμα τμήματα που πρέπει να υλοποιηθούν σε υλικό, ενώ όπου αυτό κρίνεται απαραίτητο, θα χρησιμοποιηθούν τεχνικές συν-σχεδιασμού υλικού και λογισμικού. Σημείωση: Στα πλαίσια του συγκεκριμένου θέματος θα δοθούν έως πέντε διπλωματικές εργασίες. Προαπαιτούμενες γνώσεις: VHDL, Matlab, Λειτουργικά Συστήματα (Linux) Πληροφορίες: Δημήτριος Σούντρης, Κώστας Σιώζιος, Διονύσης Διαμαντόπουλος Περιγραφή θέματος: Σχεδιασμός και υλοποίηση μιας Virtual Machine σε Hardware To Virtualization είναι μια τεχνική που ουσιαστικά ``αποκολλά το λογισμικό από το πλατφόρμα εκτέλεσης της εφαρμογής. Αναλυτικότερα, το ίδιο το λογισμικό μπορεί να υποστηριχτεί από διαφορετικούς τύπους υλικού, επιτρέποντας κατ αυτό το τρόπο την εικόνα (image) της εφαρμογής να τρέξει σε ένα σύνολο από πλατφόρμες υλικού διαφορετικών μεταξύ τους. Μεταξύ των πλεονεκτημάτων που αντιμετωπίζει το Virtualization είναι το back-ward compatibility, η ασφάλεια συστημάτων, καθώς και η αποτελεσματικότερη φορητότητα του λογισμικού. Πρέπει να σημειωθεί πως ιδιαίτερα το τελευταίο χαρακτηριστικό (φορητοτητα λογισμικού) γίνεται ολοένα και μεγαλύτερο πρόβλημα με την υπάρχουσα τάση σχεδιασμού πολυπύρηνων ετερογενών υπολογιστικών συστημάτων, όπου τα δεδομένα του λογισμικού (εικόνα/βίντεο, (απο-)κρυπτογράφηση, τηλεπικοινωνίες, κ.τ.λ.)
για τέτοια συστήματα δεν μπορούν να χρησιμοποιηθούν σε διαφορετικές πλατφόρμες, αν προηγουμένως δεν τροποποιηθούν (κάτι που εισάγει μεγαλύτερο σχεδιαστικό κόστος). H λογική πολλών σύγχρονων Virtual Machines (όπως JAVA Virtual Machine, Microsoft.NET Common Language Runtime, κ.τ.λ.), είναι να δέχονται μία εφαρμογή σε μορφή bytecode και να την μεταφράζουν μέσω ενός JIT compiler ή ενός Interpreter, σε machine code του επεξεργαστή στον οποίο εκτελούνται. Στα πλαίσια της συγκεκριμένης διπλωματικής εργασίας θα πραγματοποιηθεί μελέτη και εξοικείωση με την δομή του LLVM bytecode καθώς και των εργαλείων για απεικόνιση εφαρμογών σε επαναδιαμορφουμενες αρχιτεκτονικές (FPGA). Στόχος είναι η ανάπτυξη αφενός μιας σχεδιαστικής μεθοδολογίας και αφετέρου η υλοποίηση μιας εικονικής μηχανής (virtual machine) σε επίπεδο υλικού, η οποία θα δέχεται bytecode από τον LLVM compiler και θα παράγει machine code για έναν συγκεκριμένο επεξεργαστή (Microblaze, ARM, Sparc, κ.τ.λ.). Σημείωση: Στα πλαίσια του συγκεκριμένου θέματος θα δοθούν έως δυο διπλωματικές εργασίες. Προαπαιτούμενες γνώσεις: C/C++ Βασικές γνώσεις για εργασία σε περιβάλλον Linux Βασικές γνώσεις για επαναδιαμορφούμενες αρχιτεκτονικές (FPGA) Γνώση VHDL Πληροφορίες: Δημήτριος Σούντρης, Κώστας Σιώζιος, Χάρης Σιδηρόπουλος Σχεδιασμός και υλοποίηση CAD εργαλείων για υποστήριξη ετερογενών FPGA αρχιτεκτονικών Περιγραφή θέματος: Τα FPGA είναι επαναδιαμορφούμενο hardware το οποίο καλύπτει το κενό ανάμεσα σε επεξεργαστές γενικού σκοπού (CPU) και σε εξειδικευμένο hardware (ASIC) στους τομείς της ευελιξίας, ταχύτητας και κατανάλωσης ενέργειας. Τα τελευταία χρόνια στην έρευνα και στη βιομηχανία το επαναδιαμορφούμενο hardware θεωρείται μέρος ετερογενών επεξεργαστικών συστημάτων αποτελούμενων από επεξεργαστές, μνήμες, ελεγκτές και όχι ως ένας ξεχωριστός επεξεργαστικός πόρος. Αυτή η τάση δημιουργεί την ανάγκη ανάπτυξης CAD εργαλείων που θα μπορούν να διαχειριστούν αποτελεσματικά την ετερογένεια ενός τέτοιου συστήματος. Στα πλαίσια της διπλωματικής εργασίας θα πραγματοποιηθεί μελέτη και ανάπτυξη αλγορίθμων για απεικόνιση αποτελεσματική υλοποίηση εφαρμογών σε επαναδιαμορφούμενες (FPGA) αρχιτεκτονικές. Σκοπός θα είναι να επεκταθούν αυτά τα εργαλεία έτσι ώστε να υποστηρίζουν επαναδιαμορφουμενες αρχιτεκτονικές, οι οποίες θα περιέχουν μεταξύ των άλλων ένα σύνολο ετερογενών στοιχείων υλικού (π.χ. CPUs, RAMs, DSPs, κ.α.). Εν συνεχεία, οι αλγόριθμοι αυτοί θα υλοποιηθούν στη γλώσσα C/C++, προκειμένου τα εργαλεία να είναι διαθέσιμα στην ευρύτερη ερευνητική κοινότητα. Όπου κρίνεται απαραίτητο, θα γίνει χρήση και εμπορικών εργαλείων σχεδιασμού (π.χ. Altera Quartus), τα οποία είναι διαθέσιμα στο εργαστήριο.
Προαπαιτούμενες γνώσεις: C/C++ Shell scripting ή κάποια scripting γλώσσα Βασικές γνώσεις για εργασία σε περιβάλλον Linux Βασικές γνώσεις για επαναδιαμορφούμενες αρχιτεκτονικές (FPGA) Βασική Γνώση VHDL Σημείωση: Στα πλαίσια του συγκεκριμένου θέματος θα δοθούν έως δυο διπλωματικές εργασίες. Πληροφορίες: Δημήτριος Σούντρης, Κώστας Σιώζιος, Χάρης Σιδηρόπουλος Βελτιστοποίηση Σχεδίασης Ενσωματωμένων Συστημάτων Πολλαπλών Επεξεργαστών σε Τεχνολογίες Πυριτίου τριών διαστάσεων(3-d) με χρήση Εξελικτικών Αλγορίθμων Περιγραφή θέματος: Οι αυξανόμενες απαιτήσεις των σύγχρονων εφαρμογών έχουν οδηγήσει την βιομηχανία ημιαγωγών σε νέες κατευθύνσεις τόσο σε επίπεδο αρχιτεκτονικής, όσο και σε επίπεδο τεχνολογιών πυριτίου. Οι πολυ-επεξεργαστικές αρχιτεκτονικές αποτελούν πρότυπο υλοποίησης για την βέλτιστη απόδοση των πολυ-νηματικών εφαρμογών. Αντίστοιχα στο πεδίο υλικού, οι τεχνολογίες 3-D (κάθετα διασυνδεδεμένα επίπεδα πυριτίου) υπόσχονται να μειώσουν το χάσμα παραγωγής (productivity gap) που επιφέρει η κλιμάκωση τεχνολογίας ολοκλήρωσης (process scaling). Οι παραπάνω τεχνολογίες παρέχουν σχεδιαστικές λύσεις που ικανοποιούν ένα αντικρουόμενο σύνολο αυστηρών λειτουργικών περιορισμών. Σκοπός αναμενόμενα αποτελέσματα: Στα πλαίσια της συγκεκριμένης διπλωματικής εργασίας θα αναπτυχθεί μεθοδολογία σχεδίασης που επιτρέπει εξερεύνηση του χώρου λύσεων κάνοντας χρήση γενετικών αλγορίθμων. Παράλληλα θα αναπτυχθούν εργαλεία σχεδίασης για αυτοματοποίηση αυτής της μεθοδολογίας. Σκοπός της Διπλωματικής Εργασίας είναι η υλοποίηση ενός αλγορίθμου βελτιστοποίησης με πολλαπλά κριτήρια, σε γλώσσα C/C++ και εφαρμογή αυτού του αλγορίθμου στο πρόβλημα 3-D χωροθέτησης των λειτουργικών συστημάτων πολλαπλών επεξεργαστών (MPSoC) και της ανάθεσης χαρακτηριστικών λειτουργίας σε αυτά. Ως αρχιτεκτονική πλατφόρμα μελέτης θα χρησιμοποιηθεί ο ανοικτού κώδικα επεξεργαστής OpenSparc (8 πυρήνες των 8 νημάτων εκτέλεσης). Σημείωση: Στα πλαίσια του συγκεκριμένου θέματος θα δοθούν έως δυο διπλωματικές εργασίες. Προαπαιτούμενες γνώσεις: Καλή γνώση προγραμματισμού C/C++ Γνώση γλωσσών HDL (VHDL/Verilog) Γνώση ψηφιακών κυκλωμάτων Εξοικείωση με το λειτουργικό σύστημα GNU/Linux Πληροφορίες: Δημήτριος Σούντρης, Κώστας Σιώζιος, Διονύσης Διαμαντόπουλος
Επιτάχυνση αλγορίθμων μηχανικής όρασης με χρήση τεχνικών Ηigh-level Synthesis σε FPGA Περιγραφή θέματος: Οι αλγόριθμοι μηχανικής όρασης χαρακτηρίζονται από αυξημένα επίπεδα πολυπλοκότητας, τα οποία καθιστούν την εκτέλεσή τους μη ικανοποιητική σε επεξεργαστές γενικού σκοπού. Η χρήση επαναδιαμορφούμενων αρχιτεκτονικών (FPGAs) καθιστά δυνατή την επιτάχυνση των αλγορίθμων αυτών προκειμένου να γίνει αποτελεσματική η χρήση τους σε εφαρμογές πραγματικού χρόνου. Προς τη κατεύθυνση αυτή, τα εργαλεία HLS βοηθούν τη γρήγορη ανάπτυξη των αλγορίθμων σε FPGA καθώς και τη συνσχεδίαση Υλικού-Λογισμικού για ενσωματωμένα συστήματα μηχανικής όρασης. Σκοπός αναμενόμενα αποτελέσματα Στα πλαίσια της συγκεκριμένης διπλωματικής εργασίας θα γίνει υλοποίηση ενός αλγορίθμου μηχανικής όρασης για ανίχνευση χαρακτηριστικών εικόνας σε επαναδιαμορφούμενη αρχιτεκτονική (FPGA). Για τους σκοπούς της εργασίας θα χρησιμοποιηθεί ως πλατφόρμα υλοποίησης το Xilinx Kintex7 καθώς και το εργαλείο Xilinx Vivado HLS. Προαπαιτούμενα: C/C++ και VHDL, βασικές γνώσεις FPGA και Linux Πληροφορίες: Διονύσης Διαμαντόπουλος, diamantd@microlab.ntua.gr, Γιώργος Λεντάρης, glentar@gmail.com, Κώστας Σιώζιος, ksiop@microlab.ntua.gr, Δημήτριος Σούντρης, dsoudris@microlab.ntua.gr EMBEDDED SYSTEMS AND CLOUD COMPUTING Τίτλος: Ενσωματωμένοι επεξεργαστές για Κέντρα Δεδομένων Χαμηλής κατανάλωσης ενέργειας (Cluster of Energy-efficient data centers based on embedded processors) Περιγραφή θέματος: Η ραγδαία αύξηση των υπολογιστών νέφους (cloud computing) έχει δημιουργήσει την ανάγκη για πιο ισχυρά κέντρα δεδομένων (data centers). Μέχρι τώρα τα περισσότερα κέντρα δεδομένων υποστηρίζονται από επεξεργαστές γενικού σκοπού υψηλής απόδοσης αλλά και υψηλής κατανάλωσης ενέργειας οι οποίοι δεν είναι βελτιστοποιημένοι για τις σύγχρονες εφαρμογές. Τον τελευταίο καιρό έχουν εμφανιστεί διακομιστείς που βασίζονται σε επεξεργαστές χαμηλής κατανάλωσης ενέργειας. Στόχος της εργασίας αυτής είναι να υλοποιηθούν εφαρμογές για κέντρα δεδομένων (e.g. MapReduce, search engines, etc.) σε πλατφόρμες οι οποίες περιέχουν ενσωματωμένους επεξεργαστές χαμηλής κατανάλωσης ενέργειας (όπως πχ. ARM processors). Συγκεκριμένα στην εργασία αυτή θα μετρηθεί η απόδοση σε ταχύτητα και κατανάλωση ενέργειας συγκεκριμένων αντιπροσωπευτικών εφαρμογών που τρέχουν στα κέντρα δεδομένων (π.χ. της Google, Facebook, etc.) πάνω σε ένα mini cluster από αναπτυξιακές πλατφόρμες με ενσωματωμένους επεξεργαστές. Σκοπός αναμενόμενα αποτελέσματα: Σκοπός της Διπλωματικής Εργασίας είναι η σύγκριση της απόδοσης και της κατανάλωσης ενέργειας τυπικών εφαρμογών που τρέχουν στα κέντρα δεδομένων με επεξεργαστές χαμηλής κατανάλωσης ενέργειας (π.χ. Google, Facebook data centers) προκειμένου να βρεθεί η καλύτερη αρχιτεκτονική συστήματος σε σχέση με την κατανάλωση ενέργειας και της απόδοσης.
Προαπαιτούμενες γνώσεις: Αρχιτεκτονική υπολογιστών, Τεχνολογία νέφους, Linux, προγραμματισμός. Πληροφορίες: Δημήτριος Σούντρης, Χριστόφορος Κάχρης Τίτλος: Προσομοίωση Επιταχυντών Υλικού για Διακομιστές Τεχνολογίας Νέφους (Simulation of Hardware accelerators for cloud computing servers) Περιγραφή θέματος: Η ραγδαία αύξηση των υπολογιστών νέφους (cloud computing) έχει δημιουργήσει την ανάγκη για πιο ισχυρά κέντρα δεδομένων (data centers). Μέχρι τώρα τα περισσότερα κέντρα δεδομένων υποστηρίζονται από επεξεργαστές γενικού σκοπού υψηλής απόδοσης αλλά και υψηλής κατανάλωσης ενέργειας οι οποίοι δεν είναι βελτιστοποιημένοι για τις σύγχρονες εφαρμογές. Στόχος της εργασίας αυτής είναι να σχεδιαστούν και να προσομοιωθούν επιταχυντές υλικού (hardware accelerators/coprocessors) οι οποίοι θα χρησιμοποιηθούν για να βελτιώσουν την απόδοση των διακομιστών στα κέντρα δεδομένων και παράλληλα θα βοηθήσουν στον περιορισμό της κατανάλωσης ενέργειας. Η συνολική πλατφόρμα με τους επιταχυντές θα αξιολογηθεί ως προς την απόδοση και την κατανάλωση ενέργειας με σκοπό την δημιουργία πιο ισχυρών και λιγότερο ενεργοβόρων διακομιστών. Σκοπός αναμενόμενα αποτελέσματα: Στόχος της εργασίας αυτής είναι να σχεδιαστούν επιταχυντές υλικού (hardware accelerators) σε επίπεδο προσομοίωσης (Simulators in C/C++) οι οποίοι θα χρησιμοποιηθούν για να βελτιώσουν την απόδοση των διακομιστών στα κέντρα δεδομένων και παράλληλα θα βοηθήσουν στον περιορισμό της κατανάλωσης ενέργειας. Η αξιολόγηση της απόδοσης θα γίνει σε επίπεδο προσομοίωσης (simulator: ) Προαπαιτούμενες γνώσεις: Αρχιτεκτονική υπολογιστών, Ψηφιακή σχεδίαση, C/C++, Linux. Πληροφορίες: Δημήτριος Σούντρης, Χριστόφορος Κάχρης Περιγραφή θέματος: Υλοποίηση Επαναδιαμορφούμενου Υπολογιστικού Νέφους To υπολογιστικό νέφος (Cloud computing) παρέχει ένα δυναμικό και ελαστικό περιβάλλον διάθεσης υπηρεσιών το οποίο μπορεί να είναι ανθεκτικό σε ραγδαίες και γιγαντιαίας κλίμακας μεταβολές των συνθηκών λειτουργίας. Πολυάριθμες υπηρεσίες, όπως τα κοινωνικά δίκτυα και το ηλεκτρονικό ταχυδρομείο στον Παγκόσμιο Ιστό, χρησιμοποιούν την τεχνολογία αυτή για την αποθήκευση φωτογραφιών, βίντεο και αρχείων κειμένων. Καθώς τα υπολογιστικά νέφη κερδίζουν συνεχώς έδαφος στις υποδομές υπολογιστικών κέντρων, αντίστοιχα κρίνεται απαραίτητη η αύξηση της ενεργειακής απόδοσης των υποδομών (energy efficiency), η μείωση της απαιτούμενης καταναλωμένης ενέργειας και των λειτουργικών εξόδων (Free-Cooling), εξασφαλίζοντας ταυτόχρονα υψηλότατη διαθεσιμότητα. Οι επαναδιαμορφούμενες αρχιτεκτονικές (FPGA) αποτελούν μια ιδανική λύση για τις υποδομές υπολογιστικού νέφους μέσω της ικανότητας επαναπρογραμματισμού, της πολύ χαμηλής κατανάλωσης ισχύος και της ικανότητας κλιμάκωσης στις απαιτήσεις εφαρμογών. Στα πλαίσια αυτής της διπλωματικής εργασίας θα αναπτυχθεί ένα πρότυπο υπολογιστικό νέφος κάνοντας χρήση επαναδιαμορφούμενων αρχιτεκτονικών α) ως επιταχυντών υλικού και β) ως ολοκληρωμένης αντικατάστασης κόμβου με FPGA. Θα χρησιμοποιηθεί υπάρχουσα