Please ensure Javascript is enabled for purposes of website accessibility

Παρουσίαση/Προβολή

Εικόνα επιλογής

Παράλληλα Συστήματα

(ΘΠ04) -  Βασίλειος Καρακώστας

Περιγραφή Μαθήματος

Το μάθημα καλύπτει την αρχιτεκτονική παράλληλων συστημάτων καθώς επίσης και τον προγραμματισμό τους, μέσω της σχεδίασης, της ανάπτυξης και της αξιολόγησης παράλληλων εφαρμογών. Εισαγωγή στην παράλληλη υπολογιστική (ανάγκη και προκλήσεις). Παράλληλο υλικό (συστήματα SIMD, MIMD, GPUs, δίκτυα διασύνδεσης, συνοχή και συνέπεια κρυφής μνήμης, συστήματα κοινόχρηστης και κατανεμημένης μνήμης). Παράλληλο λογισμικό (διεργασίες, πολυεργασίες, νήματα, συγχρονισμός και επικοινωνία σε κοινό χώρο διευθύνσεων και μέσω ανταλλαγής μηνυμάτων). Μέτρα επιτάχυνσης, επίδοσης, κλιμάκωσης. Ανάπτυξη παράλληλων προγραμμάτων (μεθοδολογία σχεδιασμού και αξιολόγησης παράλληλων εφαρμογών.) Παραλληλία  δεδομένων (data parallelism) και εργασιών (task parallelism). Προγραμματισμός συστημάτων κοινόχρηστης μνήμης με Pthreads και OpenMP, προγραμματισμός συστημάτων κατανεμημένης μνήμης με MPI, προγραμματισμός για κάρτες γραφικών (CUDA),  και υβριδικός συνδυασμός τους.

Ημερομηνία δημιουργίας

Δευτέρα 26 Σεπτεμβρίου 2022

  • Περιεχόμενο μαθήματος

    Το μάθημα καλύπτει την αρχιτεκτονική παράλληλων συστημάτων καθώς επίσης και τον προγραμματισμό τους, μέσω της σχεδίασης, της ανάπτυξης και της αξιολόγησης παράλληλων εφαρμογών. Εισαγωγή στην παράλληλη υπολογιστική (ανάγκη και προκλήσεις). Παράλληλο υλικό (συστήματα SIMD, MIMD, GPUs, δίκτυα διασύνδεσης, συνοχή και συνέπεια κρυφής μνήμης, συστήματα κοινόχρηστης και κατανεμημένης μνήμης). Παράλληλο λογισμικό (διεργασίες, πολυεργασίες, νήματα, συγχρονισμός και επικοινωνία σε κοινό χώρο διευθύνσεων και μέσω ανταλλαγής μηνυμάτων). Μέτρα επιτάχυνσης, επίδοσης, κλιμάκωσης. Ανάπτυξη παράλληλων προγραμμάτων (μεθοδολογία σχεδιασμού και αξιολόγησης παράλληλων εφαρμογών.) Παραλληλία δεδομένων (data parallelism) και εργασιών (task parallelism). Προγραμματισμός συστημάτων κοινόχρηστης μνήμης με Pthreads και OpenMP, προγραμματισμός συστημάτων κατανεμημένης μνήμης με MPI, προγραμματισμός για κάρτες γραφικών (CUDA), και υβριδικός συνδυασμός τους.

    Μαθησιακοί στόχοι

    Να εισάγει τους φοιτητές και τις φοιτήτριες στις παράλληλες αρχιτεκτονικές και στον παράλληλο προγραμματισμό.

    Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής/φοιτήτρια θα είναι σε θέση να:

    • Αναφέρει τις σημαντικές σύγχρονες τεχνικές αύξησης της απόδοσης των μικροεπεξεργαστών μέσω παραλληλίας εντολών και δεδομένων, καθώς επίσης και τα πλεονεκτήματα και μειονεκτήματα που προσφέρουν.
    • Περιγράφει την ιδέα και τις βασικές λεπτομέρειες υλοποίησης της πολυνημάτωσης (fine-grain, coarse-grain, simultaneous multithreading), των διανυσματικών αρχιτεκτονικών, των εντολών SIMD, των μονάδων επεξεργασίας γραφικών, των πολυπύρηνων επεξεργαστών, και των δικτύων διασύνδεσης.
    • Ορίζει και χρησιμοποιεί τα μέτρα της επιτάχυνσης, αποδοτικότητας ως κριτήρια επιδόσεων παράλληλων εφαρμογών
    • Χρησιμοποιεί τους διάφορους μηχανισμούς συγχρονισμού λαμβάνοντας υπόψη την υλοποίηση τους και τον αντίκτυπό τους στην επίδοση παράλληλων εφαρμογών
    • Σχεδιάζει, αναπτύσσει και αξιολογεί παράλληλες εφαρμογές σε Pthreads, OpenMP, MPI και CUDA, καθώς και με υβριδικό συνδυασμό τους

    Βιβλιογραφία

    Η διδασκαλία του μαθήματος βασίζεται στο βιβλίο "Εισαγωγή στον Παράλληλο Προγραμματισμό", του Peter S. Pacheco, (μετάφραση και επιστημονική επιμέλεια στα ελληνικά: Δ.Γκιζόπουλος), Εκδόσεις Κλειδάριθμος, 2015. (τίτλος πρωτότυπου: "An introduction to Parallel Programming", 1st Edition, Elsevier/Morgan Kaufmann).

    Επίσης, θα χρησιμοποιηθεί υλικό από το βιβλίο "Παράλληλα συστήματα και προγραμματισμός", του Βασιλείου Δημακόπουλου, Εκδόσεις Κάλλιπος (http://hdl.handle.net/11419/3209), καθώς επίσης και από το βιβλίο "Προγραμματισμός Μαζικά Παράλληλων Επεξεργαστών", των David B. Kirk και Wen-mei W. Hwu, Εκδόσεις Κλειδάριθμος, 2010.

    Σημειώσεις και διαφάνειες για παράλληλο προγραμματισμό στα περιβάλλοντα Pthreads, OpenMP, MPI, CUDA.

    Διδάσκοντες

    Βασίλειος Καρακώστας, Επίκουρος Καθηγητής (https://cgi.di.uoa.gr/~vkarakos/)

    Ώρες Γραφείου

    Δευτέρα 12:00-14:00