Αναπαράσταση προγραμμάτων ως ακυκλικά κατευθυνόμενα γραφήματα και χρονοπρογραμματισμός τους από τον πυρήνα του Linux

Program representation as directed acyclic graphs and implementation of scheduling algorithms in Linux kernel (english)

  1. MSc thesis
  2. Σιμάτος, Διονύσιος
  3. Μεταπτυχιακή Εξειδίκευση στα Πληροφοριακά Συστήματα (ΠΛΣ)
  4. 18 September 2021 [2021-09-18]
  5. Ελληνικά
  6. 68
  7. Αλεφραγκής, Παναγιώτης
  8. Καρούσος, Νικόλαος | Κωτσιάντης, Σωτήριος
  9. Λειτουργικά Συστήματα | Operating Systems | Χρονοπρογραμματισμός Διεργασιών | Process Scheduling | Γραφήματα | Graphs | Παράλληλη Επεξεργασία | Parallel Processing | Βελτιστοποίηση | Optimization
  10. 6
  11. 26
  12. Κυρίως κείμενο, πίνακες, εικόνες
    • Δίνουμε μια προτεινόμενη μέθοδο για την εκτέλεση προγραμμάτων σε Linux με βελτιωμένο και σχεδόν προβλέψιμο χρόνο εκτέλεσης. Δίνουμε όλη την απαραίτητη τεκμηρίωση για κατευθυνόμενα ακυκλικά γραφήματα (DAGs), τη σχετική ιστορική έρευνα στον τομέα χρονοπρογραμματισμού και τις γνώσεις σχετικά με τις δυνατότητες προγραμματισμού του πυρήνα Linux. Εμφανίζουμε όλα τα ενδιάμεσα στάδια από DAG γενικά, DAG για την αναπαράσταση προγραμμάτων Linux, τον αλγόριθμο προγραμματισμού HEFT και τα εργαλεία για τη μέτρηση του μετροπρογράμματος μας για χρόνο εκτέλεσης, τοπικότητα δεδομένων, μνήμη και χρήση CPU. Εμφανίζουμε τα τελικά συγκεντρωτικά αποτελέσματα για να δείξουμε βελτιώσεις στις περιγραφόμενες περιοχές. Περαιτέρω έρευνα απαιτείται για την αυτοματοποίηση αυτών των βελτιώσεων με τη συνεργασία μεταγλωττιστών και τη χρήση πληροφοριών από τον προγραμματιστή του πυρήνα Linux.
    • A proposed method for running programs in Linux with improved and almost predictable execution time is given. We give all the necessary documentation for directed acyclic graphs (DAGs), the relevant historical research in the scheduling field and the knowledge around Linux kernel scheduling capabilities. We show all the intermediate stages from DAGs in general, to DAGs for Linux programs representation, to HEFT scheduling algorithm and the tools to measure our benchmark program for execution time, data locality, memory and CPU utilization. We show final aggregated results to show improvements in described areas. Further investigation needed to automate improvements by collaboration of compilers and use of information by Linux kernel scheduler.
  13. Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές