Τα υπολογιστικά συστήματα μεγάλης κλίμακας είναι πλέον ευρέως διαδεδομένα και κερδίζουν συνεχώς έδαφος στην επίλυση προβλημάτων στον χώρο της βιομηχανίας, της ακαδημαϊκής κοινότητας και της κυβερνητικής έρευνας. Όσο εξαπλώνεται όμως η χρήση τους, τόσο εντείνεται η ανάγκη για γρήγορη, αποτελεσματική χρήση και εξοικονόμηση στην κατανάλωση ενέργειας. Επιπλέον, η ταυτόχρονη εκτέλεση εργασιών στον ίδιο κόμβο εγείρει θέματα ανταγωνισμού για τους μοιραζόμενους πόρους, με αποτέλεσμα την επιδείνωση της επίδοσης. Οι μέθοδοι που έχουν προταθεί για την επίλυση αυτών των προβλημάτων αφορούν τόσο στο υλικό όσο και στο λογισμικό.
Η χρονοδρομολόγηση των εργασιών αποτελεί μία ακόμα ελκυστική λύση στην προσπάθεια επίλυσης του ανταγωνισμού των εργασιών για τους μοιραζόμενους πόρους και της εξοικονόμησης της ενέργειας του συστήματος, καθώς δεν απαιτεί επιπλέον υλικό και είναι σχετικά εύκολο να ενσωματωθεί σε ένα σύστημα.
Σκοπός της παρούσας διπλωματικής εργασίας είναι η μελέτη αλγορίθμων χρονοδρομολόγησης και προηγμένων αλγοριθμικών τεχνικών σε συστήματα μεγάλης κλίμακας, όπου οι χρήστες υποβάλλουν εργασίες προς εκτέλεση, και η ανάπτυξη μιας καινούριας πολιτικής χρονοδρομολόγησης, που θα αντιμετωπίσει το πρόβλημα του ανταγωνισμού του διαύλου μνήμης και θα οδηγήσει σε βελτιστοποίηση του συστήματος. Για την αξιολόγησή της, εισάγαμε την καινούρια μας πολιτική στον χρονοδρομολογητή Maui και πραγματοποιήσαμε μετρήσεις, χρησιμοποιώντας 3 διαφορετικά εργασιακά φορτία.
The large-scale computing systems are widely known and continuously gain appreciation in solving problems in the fields of industry, academia and governmental research. However, as their usage expands, the need for faster, more efficient use and reduction of energy consumption becomes a necessity. Moreover, the concurrent execution of tasks on the same node raises issues of competition for shared resources, resulting in deterioration of performance. The methods which have been proposed to solve these problems concern both hardware and software.
Job scheduling is an another attractive tool in solving the problem of competition for shared resources and reduction of system energy consumption, because it does not require extra hardware and is relatively easy to integrate into the system.
The purpose of this thesis is the study of scheduling algorithms and advanced algorithmic techniques in large scale system, where users submit jobs for execution, and the development of a new scheduling policy, which will address the problem of competition of the memory bus and will lead to the optimization of the system. For its evaluation, we inserted our new policy in the Maui scheduler and took measurements using 3 different workloads.