Εκτίμηση κατανάλωσης ενέργειας σε cloud computing
Abstract
To cloud computing τα τελευταία χρόνια είναι ευρέως διαδεδομένο και ένα ση-
μαντικό κομμάτι σε αυτό είναι η κατανάλωση ενέργειας. Η παρούσα διπλωματική
εργασία στοχεύει στην εκτίμηση της κατανάλωσης ενέργειας των υπολογιστικών
συστημάτων σε cloud computing. Προκειμένου να πραγματοποιηθεί αυτός ο στό-
χος, χρησιμοποιούνται οκτώ αλγόριθμοι μηχανικής μάθησης, με απώτερο σκοπό την
χρήση έξυπνων μηχανισμών δρομολόγησης εργασιών, ώστε να επιτευχθεί μείωση
της ενεργειακής κατανάλωσης. Για τη διεξαγωγή του πειράματος χρησιμοποιήθη-
καν δύο συστοιχίες υπολογιστών (ένας μονονηματικός και ένας πολυνηματικός) και
δέκα χαρακτηριστικά (π.χ. αξιοποίηση επεξεργαστή και μνήμης), με όλους τους δυ-
νατούς συνδυασμούς τους. Στην πειραματική διαδικασία γίνεται η σύγκριση όλων
των αλγορίθμων, στα υπολογιστικά αποτελέσματα των δύο εξυπηρετητών. Τα απο-
τελέσματα δείχνουν ότι η πιο σημαντική παράμετρος είναι η αξιοποίηση του επε-
ξεργαστή. Ωστόσο, εάν η αξιοποίηση του επεξεργαστή συνδυαστεί με άλλες πα-
ραμέτρους, οι περισσότεροι αλγόριθμοι εξάγουν καλύτερα αποτελέσματα. Τέλος,
ένα ακόμα συμπέρασμα που προκύπτει από την σύγκριση των δυο εξυπηρετητών
είναι ότι στον εξυπηρετητή όπου ο επεξεργαστής είναι μονονηματικός οι αλγόριθ-
μοι παράγουν πιο ακριβή αποτελέσματα σε αντίθεση με τον εξυπηρετητή που ο
επεξεργαστής του είναι πολυνηματικός.
Cloud computing has become widespread over the last few years and an important
part of its energy consumption. This thesis aims to evaluate the energy consumption
of cloud computing systems. To accomplish this, eight machine learning algorithms
are used, with the ultimate aim of using smart task scheduling techniques to achieve
a reduction in energy consumption. In order to carry the project out we used two
computer servers (a singlethreaded and a multithreaded) and ten features (e.g., CPU
and memory utilization) with all possible combinations. All algorithms are compared
in both systems. The results show that the most important parameter is the CPU
utilization. However, if the CPU utilization is combined with other parameters, most
of the algorithms produce better results. Finally, another conclusion that emerges
from the comparison of the two servers is that the algorithms produce more accurate
results in the singlethreaded server than in the multithreaded one.