Περίληψη
Οι υπολογιστικές πλατφόρμες ενσωματώνουν ολοένα και περισσότερο ετερογενείς τεχνολογίες υλικού μνήμης, ως τρόπο βελτίωσης της απόδοσης της εφαρμογής, της χωρητικότητας της μνήμης και της επίτευξης οικονομικής αποδοτικότητας. Ωστόσο, αυτή η ετερογένεια, μαζί με την ευρύτερη ανομοιογένεια στη συμπεριφορά των σύγχρονων εφαρμογών, καθιστούν αναποτελεσματικές τις υπάρχουσες μεθόδους διαχείρισης υβριδικής μνήμης, απαιτώντας πιο ευφυείς λύσεις. Για τον σκοπό αυτό, η παρούσα διατριβή συνεισφέρει νέες ιδέες, αναπτύσσει νέες μεθόδους και μηχανισμούς σε επίπεδο λειτουργικού συστήματος για την πρακτική ενσωμάτωση της μηχανικής μάθησης στη διαχείριση υβριδικής μνήμης, ενισχύοντας την απόδοση των εφαρμογών και την αποδοτική λειτουργία των πόρων του συστήματος. Οι συγκεκριμένες συνεισφορές της παρούσας διατριβής είναι οι ακόλουθες.Πρώτον, αυτή η διατριβή δημιουργεί το Kleio, έναν μηχανισμό διαχείρισης υβριδικής μνήμης με τεχνητή νοημοσύνη. Το Kleio αναπτύσσει επαναλαμβανόμενα νευρωνικά δίκτυα για να ...
Οι υπολογιστικές πλατφόρμες ενσωματώνουν ολοένα και περισσότερο ετερογενείς τεχνολογίες υλικού μνήμης, ως τρόπο βελτίωσης της απόδοσης της εφαρμογής, της χωρητικότητας της μνήμης και της επίτευξης οικονομικής αποδοτικότητας. Ωστόσο, αυτή η ετερογένεια, μαζί με την ευρύτερη ανομοιογένεια στη συμπεριφορά των σύγχρονων εφαρμογών, καθιστούν αναποτελεσματικές τις υπάρχουσες μεθόδους διαχείρισης υβριδικής μνήμης, απαιτώντας πιο ευφυείς λύσεις. Για τον σκοπό αυτό, η παρούσα διατριβή συνεισφέρει νέες ιδέες, αναπτύσσει νέες μεθόδους και μηχανισμούς σε επίπεδο λειτουργικού συστήματος για την πρακτική ενσωμάτωση της μηχανικής μάθησης στη διαχείριση υβριδικής μνήμης, ενισχύοντας την απόδοση των εφαρμογών και την αποδοτική λειτουργία των πόρων του συστήματος. Οι συγκεκριμένες συνεισφορές της παρούσας διατριβής είναι οι ακόλουθες.Πρώτον, αυτή η διατριβή δημιουργεί το Kleio, έναν μηχανισμό διαχείρισης υβριδικής μνήμης με τεχνητή νοημοσύνη. Το Kleio αναπτύσσει επαναλαμβανόμενα νευρωνικά δίκτυα για να μάθει τα μοτίβα με τα οποία οι εφαρμογές χρησιμοποιούν τη μνήμη σε επίπεδο σελίδας, και να βελτιώσει την επιλογή των σελίδων που θα ανακατανεμηθούν δυναμικά ανάμεσα στις διαθέσιμες τεχνολογίες μνήμης. Το Kleio εστιάζει έξυπνα τη μηχανική εκμάθηση στο υποσύνολο σελίδων του οποίου η έγκαιρη ανακατανομή θα φέρει τη μεγαλύτερη βελτίωση στην απόδοση της εφαρμογής, διατηρώντας παράλληλα τη γρήγορη διαχείριση των υπόλοιπων σελίδων με βάση το ιστορικό των προσβάσεων. Με αυτόν τον τρόπο, το Kleio γεφυρώνει κατά μέσο όρο το 80% του σχετικού υφιστάμενου χάσματος απόδοσης εφαρμογών, ενώ θέτει τις βάσεις για την ευφυή αλλά και πρακτική διαχείριση δεδομένων με αποδεκτό κόστος μηχανικής εκμάθησης.Δεύτερον, αυτή η διατριβή συνεισφέρει το Cori, ένα μηχανισμό σε επίπεδο λειτουργικού συστήματος για τον συντονισμό της συχνότητας λειτουργίας των μεθόδων διαχείρισης υβριδικής μνήμης που λειτουργούν περιοδικά. Το Cori συνθέτει πληροφορίες σχετικά με την επαναχρησιμοποίηση των δεδομένων των εφαρμογών για να προσδιορίσει σωστά τις συχνότητες ανακατανομής δεδομένων που πρόκειται να δοκιμαστούν, μειώνοντας κατά 5 φορές τον αριθμό των δοκιμών συντονισμού σε σύγκριση με τις υπάρχουσες εμπειρικές προσεγγίσεις συντονισμού. Με αυτόν τον τρόπο, το Cori προσφέρει επίπεδα απόδοσης εφαρμογής εντός 3% από την περίπτωση της βέλτιστα επιλεγμένης συχνότητας, εξαλείφοντας το 10%-100% χάσμα απόδοσης εφαρμογών που δημιουργείται όταν χρησιμοποιούνται συχνότητες που υιοθετούνται επί του παρόντος από σχετικές λύσεις. Τέτοιες βελτιώσεις είναι συμπληρωματικές με τη χρήση της μηχανικής εκμάθησης και ενισχύουν περαιτέρω την επίδρασή της στην απόδοση της εφαρμογής.Τρίτον, αυτή η διατριβή συνεισφέρει στο Coeus, έναν μηχανισμό ομαδοποίησης σελίδων για μηχανισμούς διαχείρισης υβριδικής μνήμης με τεχνητή νοημοσύνη, όπως το Kleio. Το Coeus αξιοποιεί τις πληροφορίες επαναχρησιμοποίησης δεδομένων που αποκάλυψε το Cori για να ρυθμίσει το επίπεδο στο οποίο ερμηνεύονται τα μοτίβα με τα οποία οι εφαρμογές χρησιμοποιούν τη μνήμη σε επίπεδο σελίδας, με τέτοιο τρόπο ώστε να αυξάνεται η ομοιότητα των μοτίβων μεταξύ των σελίδων. Στη συνέχεια, το Coeus ομαδοποιεί τις σελίδες που μοιράζονται το ίδιο μοτίβο πρόσβασης, επιτρέποντας την εκπαίδευση ενός μεμονωμένου επαναλαμβανόμενου νευρωνικού δικτύου ανά ομάγα σελίδων. Ως αποτέλεσμα, το Coeus μειώνει σχεδόν κατά 3 φορές το σχετικό κόστος μηχανικής εκμάθησης σε σύγκριση με το Kleio. Επιπλέον, το Coeus επιτυγχάνει 3 φορές υψηλότερη απόδοση εφαρμογών, λόγω του συνδυασμού της χρήσης μηχανικής εκμάθησης σε περισσότερες σελίδες και του αποτελεσματικού συντονισμού λειτουργίας του μηχανισμού διαχείρισης της υβριδικής μνήμης. Τέλος, αυτή η διατριβή συνεισφέρει στο Cronus, έναν επιλογέα σελίδων που βασίζεται σε εικόνες για μηχανισμούς διαχείρισης υβριδικής μνήμης με τεχνητή νοημοσύνη, όπως το Kleio. Το Cronus χρησιμοποιεί μεθόδους απεικόνισης για να επιταχύνει τη διαδικασία επιλογής των μοτίβων σελίδας που θα πρέπει να διαχειρίζονται με μηχανική εκμάθηση. Η απεικόνιση αποκαλύπτει χωρικούς και χρονικούς συσχετισμούς μεταξύ των σελίδων, που το Kleio δεν μπορεί να βρει κατά τη διαδικασία επιλογής σελίδων. Αντίθετα, το Kleio χρησιμοποιεί περίπλοκα μοντέλα εκτίμησης απόδοσης που συνοδεύονται από χρονοβόρα εκτέλεση. Το Cronus χρησιμοποιεί μια αλληλουχία από μεθόδους απεικόνισης και όρασης υπολογιστών που εντοπίζει ποια μοτίβα πρόσβασης σελίδας πρέπει να διαχειριστούν με μηχανική εκμάθηση. Η ποιότητα των επιλεγμένων σελίδων είναι συγκρίσιμη με αυτή του Kleio και προσφέρει παρόμοια επίπεδα απόδοσης της εφαρμογής, με αντάλλαγμα τη μείωση του χρόνου επιλογής κατά 75 φορές. Το Cronus θέτει τα θεμέλια για μελλοντική χρήση μεθόδων απεικόνισης και όρασης υπολογιστή στη διαχείριση μνήμης, όπως η ταξινόμηση, η αναγνώριση και η πρόβλεψη μοτίβων πρόσβασης στη μνήμη βάσει εικόνας.
περισσότερα
Περίληψη σε άλλη γλώσσα
Computing platforms increasingly incorporate heterogeneous memory hardware technologies, as a way to scale application performance, memory capacities and achieve cost-effectiveness. However, this heterogeneity, along with the greater irregularity in the behavior of emerging workloads, render existing hybrid memory management approaches ineffective, calling for more intelligent methods. To this end, this thesis reveals new insights, develops novel methods and contributes system-level mechanisms towards the practical integration of machine learning into hybrid memory management, boosting application performance and system resource efficiency. The specific contributions of this thesis are as follows.First, this thesis builds Kleio, a hybrid memory page scheduler with machine intelligence. Kleio deploys Recurrent Neural Networks to learn memory access patterns at a page granularity and improve upon the selection of dynamic page migrations across the memory hardware components. Kleio clever ...
Computing platforms increasingly incorporate heterogeneous memory hardware technologies, as a way to scale application performance, memory capacities and achieve cost-effectiveness. However, this heterogeneity, along with the greater irregularity in the behavior of emerging workloads, render existing hybrid memory management approaches ineffective, calling for more intelligent methods. To this end, this thesis reveals new insights, develops novel methods and contributes system-level mechanisms towards the practical integration of machine learning into hybrid memory management, boosting application performance and system resource efficiency. The specific contributions of this thesis are as follows.First, this thesis builds Kleio, a hybrid memory page scheduler with machine intelligence. Kleio deploys Recurrent Neural Networks to learn memory access patterns at a page granularity and improve upon the selection of dynamic page migrations across the memory hardware components. Kleio cleverly focuses the machine learning on the page subset whose timely movement will reveal most application performance improvement, while preserving history-based lightweight management for the rest of the pages. In this way, Kleio bridges on average 80% of the relative existing performance gap, while laying the grounds for practical machine intelligent data management with manageable learning overheads.Second, this thesis contributes Cori, a system-level solution for tuning the operational frequency of periodic page schedulers for hybrid memories. Cori synthesizes information on data reuse to properly identify the data movement frequencies to be tested, reducing by 5× the number of tuning trials compared to existing empirical or insight-less tuning approaches. In this way, Cori delivers application performance levels within 3% from the case of optimally selected frequency, eliminating the 10%-100% performance gap created when using frequencies currently adopted by related works. Such improvements are complimentary to the use of machine learning and further boost its effect on application performance. Third, this thesis contributes Coeus, a page grouping mechanism for hybrid memory page schedulers with machine intelligence, such as Kleio. Coeus leverages the data reuse insights revealed by Cori to fine-tune the granularity at which patterns are interpreted by the page scheduler, increasing the pattern similarity across pages. Then, Coeus groups together the pages that share the same access behavior, enabling the training of a single Recurrent Neural Network per page cluster. As a result, Coeus reduces by almost 3 times the associated learning overheads compared to Kleio. In addition, Coeus achieves 3 times higher application performance, by the combined effects of applying machine learning to more pages and by performing management operations at a fine-tuned granularity.Finally, this thesis contributes Cronus, an image-based page selector for hybrid memory page schedulers with machine intelligence, such as Kleio. Cronus uses visualization to accelerate the process of selecting which page patterns should be managed with machine learning. The visualization reveals spatial and temporal correlations across pages, that Kleio cannot capture during its page selection process. Instead, Kleio uses elaborate performance estimation models that come with non-trivial operational overheads. Cronus builds a lightweight visualization pipeline that detects page access patterns for machine learning-based management. The quality of the selected pages is comparable to Kleio’s and delivers similar levels of application performance, in return for 75 times reduction in the selection time. Cronus lays the foundations for future use of visualization and computer vision methods in memory management, such as image-based memory access pattern classification, recognition and prediction.
περισσότερα