Design methodologies and tools for energy-aware iot-based applications
Authors: Μάραντος Χαράλαμπος 
Published: November 2022

Η ενεργειακή αποδοτικότητα των υπολογιστικών πόρων που εκφράζεται συχνά με τους όρους Green και Sustainable computing κερδίζει όλο και μεγαλύτερη προσοχή τα τελευταία χρόνια. Καθώς ο αριθμός των υπολογιστικών συσκευών σε εφαρμογές Διαδικτύου των Αντικειμένων (ΙοΤ) συνεχίζει να αυξάνεται, η μείωση της ενέργειας των εφαρμογών αποτελεί πλέον μια σημαντική απαίτηση που επιβάλλει νέες προκλήσεις στους προγραμματιστές. Οι υπάρχουσες λύσεις ποικίλλουν σημαντικά, ανάλογα με το επίπεδο στο οποίο εξετάζεται η ενεργειακή αποδοτικότητα. Από τη μία πλευρά, πιο κοντά στο λογισμικό, υπάρχουν ερευνητικές εργασίες που προτείνουν βέλτιστες πρακτικές και δίνουν κατευθυντήριες γραμμές βασιζόμενες σε εμπειρικές μελέτες. Από την άλλη πλευρά, οι ερευνητές στον τομέα των ενσωματωμένων συστημάτων μειώνουν την ενέργεια είτε με βελτιστοποιήσεις στο ίδιο το υλικό, είτε μετασχηματίζοντας τον κώδικα της εφαρμογής, χρησιμοποιώντας εμπειρικές τεχνικές, π.χ. για την βελτιστοποίηση της διαχείρισης μνήμης. Καθώς οι εφαρμογές εξελίσσονται, δημιουργείται η ανάγκη αντιμετώπισης της αυξημένης ενεργειακής κατανάλωσης στο επίπεδο του πηγαίου κώδικα της εφαρμογής από τους ίδιους τους προγραμματιστές. Ως εκ τούτου, η δημιουργία εργαλείων λογισμικού ικανών να παρέχουν εκτιμήσεις κατανάλωσης ενέργειας και να προτείνουν βελτιστοποιήσεις, είναι πλέον εξαιρετικά σημαντική, προκειμένου να παρέχεται βοήθεια στους προγραμματιστές σε όλες τις φάσεις ανάπτυξης ΙοΤ εφαρμογών. Στόχος της παρούσας διατριβής είναι η σχεδίαση εργαλείων ανάλυσης εφαρμογών που στοχεύουν στην ενεργειακή αποδοτικότητα. Οι προτεινόμενες λύσεις, οι οποίες συνδυάζονται και με λεπτομέρειες υλοποίησης, παρέχουν εκτιμήσεις της αναμενόμενης κατανάλωσης ενέργειας των εφαρμογών πριν αυτές εκτελεστούν στις συσκευές. Τα προτεινόμενα εργαλεία παρέχουν προτάσεις βελτιστοποιήσεων στον χρήστη με ιδιαίτερη έμφαση στην εκτίμηση των πιθανών ενεργειακών κερδών από την επιτάχυνση της εφαρμογής σε GPU. Επιπλέον, εξετάζεται η επέκταση τους στην δημιουργία ενός συστήματος αποφάσεων ενεργειακά αποδοτικών τοποθετήσεων των επιμέρους συναρτήσεων των εφαρμογών στις διαθέσιμες συσκευές του δικτύου. Η μεθοδολογία που παρουσιάζεται στην διατριβή, έχει πολλά καινοτόμα χαρακτηριστικά, όπως τον συνδυασμό στατικής και δυναμικής ανάλυσης προκειμένου να αξιοποιούνται τα πλεονεκτήματα και των δύο τεχνικών. Επιπλέον, παρουσιάζεται μια ειδική μελέτη της επίδρασης των προτεινόμενων βελτιστοποιήσεων στην ανάπτυξη λογισμικού, όπως π.χ. η εκτίμηση της προσπάθειας που πρέπει να καταβληθεί για να εφαρμοστούν. Η πρόσφατη αύξηση της ζήτησης για νέες εφαρμογές ΙοΤ, όπως για παράδειγμα για τον έλεγχο της ενέργειας και του κλιματισμού στα σύγχρονα έξυπνα κτίρια, κινητοποίησε τη μελέτη μιας ειδικής περίπτωσης. Τα συστήματα αυτά παρουσιάζουν αυξημένη πολυπλοκότητα και η λειτουργία τους βασίζεται λιγότερο στην ανθρώπινη λήψη αποφάσεων και περισσότερο στην υπολογιστική νοημοσύνη. Σε αυτή τη διατριβή εισάγονται νέες λύσεις των οποίων τα πειραματικά αποτελέσματα δείχνουν συγκρίσιμες επιδόσεις με παρόμοιους ελεγκτές τελευταίας τεχνολογίας, χωρίς όμως την ανάγκη προηγούμενης λεπτομερούς μοντελοποίησης των κτιρίων και απαιτώντας πολύ χαμηλότερους υπολογιστικούς πόρους.