Μετάβαση στο περιεχόμενο

Λογισμικό & Προγραμματισμός Συστημάτων Υψηλής Επίδοσης

Μάθημα επιλογής που συνεχίζει την Παράλληλη Επεξεργασία: η μετάβαση από τον σειριακό στον παράλληλο υπολογισμό με OpenMP, MPI, διανυσματικές εντολές (SIMD/AVX) και επιταχυντές γραφικών (CUDA/OpenACC), μαζί με μετρικές απόδοσης (scaling, roofline) και βελτιστοποίηση κώδικα. Ο κορμός της βαθμολογίας είναι εργαστηριακές ασκήσεις σε C/C++ και υπάρχει και γραπτή εξέταση. Παρακολουθείται από φοιτητές που τους ενδιέφερε το αντικείμενο (και από Ηλεκτρολόγους, λόγω παλιάς συνδιδασκαλίας).

Θέματα Τι λένε οι φοιτητές Περίγραμμα ⬇ Κατέβασε για AI

Με μια ματιά

Κωδικός CEID_NE5407
Εξάμηνο / τύπος Χειμερινό, μάθημα επιλογής Κατάλογος
ECTS 5 Κατάλογος
Ώρες / εβδομάδα 2 θεωρία + 1 φροντιστήριο + 2 εργαστήριο Κατάλογος
Τομέας ΛΥ Κατάλογος
Διδάσκων 2025-26 Π. Χατζηδούκας Κατάλογος
Αξιολόγηση (κανονισμός 2025-26) 60% εργαστηριακές ασκήσεις + 40% τελική εξέταση eClass Κανονισμός (διαθέσιμο στο πλήρες πακέτο)
Συνιστώμενα προαπαιτούμενα Παράλληλη Επεξεργασία (κατά φοιτητές) Discord 2024-09 (διαθέσιμο στο πλήρες πακέτο)

Τι θα μάθεις

Το επίσημο περίγραμμα περιγράφει τη μετάβαση από σειριακό σε παράλληλο υπολογισμό και την αξιοποίηση παράλληλων συστημάτων για ταχύτερη εκτέλεση Περίγραμμα. Συγκεκριμένα:

  • Κατηγορίες παράλληλων συστημάτων, αρχιτεκτονικές μνήμης, multithreading με POSIX threads eClass (διαθέσιμο στο πλήρες πακέτο).
  • Παραλληλοποίηση κώδικα κοινής μνήμης με OpenMP (regions, worksharing, reduction, tasks) eClass (διαθέσιμο στο πλήρες πακέτο).
  • Κατανεμημένη μνήμη με MPI (point-to-point, collectives, master-worker, παράλληλο I/O) eClass (διαθέσιμο στο πλήρες πακέτο).
  • Βελτιστοποίηση κώδικα, μέτρηση απόδοσης και το μοντέλο roofline (scaling, memory bandwidth) eClass (διαθέσιμο στο πλήρες πακέτο).
  • Διανυσματικές εντολές SIMD (SSE/AVX), στοίχιση μνήμης και αυτόματη διανυσματοποίηση eClass (διαθέσιμο στο πλήρες πακέτο).
  • Επιταχυντές γραφικών με CUDA (πυρήνες, shared memory, streams) και αναφορά σε OpenACC eClass (διαθέσιμο στο πλήρες πακέτο).
  • Παραλληλισμός εργασιών σε Python (multiprocessing, concurrent.futures) και σύνδεση με μηχανική μάθηση / βελτιστοποίηση παραμέτρων eClass (διαθέσιμο στο πλήρες πακέτο).

Στην πράξη οι ασκήσεις ζητούν βελτιστοποίηση και παραλληλοποίηση σειριακών προγραμμάτων σε C/C++ (βλ. «Εργασίες & εργαστήρια») Discord 2024-09 (διαθέσιμο στο πλήρες πακέτο).

Πώς βαθμολογείται

  • Κανονισμός μαθήματος και εργαστηρίου 2025-26 (Έκδοση 1, 1/10/25): ο τελικός βαθμός προκύπτει κατά 60% από τις εργαστηριακές ασκήσεις και κατά 40% από την τελική εξέταση, και ο βαθμός πρέπει να είναι προβιβάσιμος (≥5) και στις δύο συνιστώσες eClass Κανονισμός (διαθέσιμο στο πλήρες πακέτο).
  • Προϋπόθεση συμμετοχής στις εξετάσεις είναι η εμπρόθεσμη υποβολή τουλάχιστον 2 από τις 3 εργαστηριακές ασκήσεις eClass Κανονισμός (διαθέσιμο στο πλήρες πακέτο).
  • Το παλαιότερο περίγραμμα (PDF 2024-07) έδινε γραπτή εξέταση 30% και εργαστηριακές ασκήσεις 70%, με γλώσσα αξιολόγησης ελληνική ή αγγλική· ο κατάλογος 2025-26 συμφωνεί σε ECTS και ώρες Περίγραμμα, Κατάλογος.
  • Ακούσματα (2024-10): «αν θυμάμαι καλά 70% προτζεκτ και εξέταση 30% σε πολύ βασικά κονσεπτς» Discord 2024-10 (διαθέσιμο στο πλήρες πακέτο).
  • Πιο πρόσφατα (2026-03), αναφέρεται κατανομή 40% εξέταση + 30% πρώτη άσκηση + 30% δεύτερη άσκηση (κατά φοιτητή) — συμβατή με το 60/40 του κανονισμού Discord 2026-03 (διαθέσιμο στο πλήρες πακέτο).
  • Για να συμμετάσχει κανείς στις εξετάσεις, κατά φοιτητή χρειάζεται να έχει παραδώσει τουλάχιστον 2 ασκήσεις Discord 2025-01 (διαθέσιμο στο πλήρες πακέτο).
  • Παλαιότερα (2022) φοιτητής αναφέρει ότι το μάθημα δεν είχε τελική εξέταση, μόνο ασκήσεις Discord 2022-09 (διαθέσιμο στο πλήρες πακέτο).
  • Τα αποτελέσματα περνούν στο Progress· τον Μάρτιο 2025 φοιτητές είδαν βαθμούς με καθυστέρηση Discord 2025-03 (διαθέσιμο στο πλήρες πακέτο).
  • Για τη γραπτή, το 2025-01 αναφέρθηκε ότι θα είναι πολλαπλής επιλογής «πάνω σε απλά πράγματα» Discord 2025-01 (διαθέσιμο στο πλήρες πακέτο).

Εργασίες & εργαστήρια

Ο κατάλογος δίνει 2 ώρες εργαστηρίου εβδομαδιαίως Κατάλογος, αλλά στην πράξη αυτές αφορούν τις εργαστηριακές ασκήσεις.

  • Δεν λειτουργεί ξεχωριστό εργαστήριο· «ασκήσεις μόνο», που υποβάλλονται μέσω eClass Discord 2025-10 (διαθέσιμο στο πλήρες πακέτο).
  • Οι ασκήσεις γίνονται ατομικά ή σε ομάδες έως 2 ατόμων Discord 2025-10 (διαθέσιμο στο πλήρες πακέτο).
  • Το 2024-25 δόθηκαν δύο ασκήσεις: η 1η OpenMP + MPI και η 2η CUDA + SIMD· είχε προγραμματιστεί και 3η (OpenMP) που δεν εκδόθηκε Discord 2024-11 (διαθέσιμο στο πλήρες πακέτο), Discord 2025-01 (διαθέσιμο στο πλήρες πακέτο).
  • Το 2025-26 η 1η εργασία βγήκε αρχές Δεκεμβρίου 2025 και η 2η (πρώτο μέρος SIMD, δεύτερο CUDA) ανακοινώθηκε μέσα στις διακοπές Discord 2025-12 (διαθέσιμο στο πλήρες πακέτο).
  • Για CUDA/MPI παρέχεται υπολογιστικός server του τμήματος (scgroup3.ceid.upatras.gr), εκτός αν στηθεί το περιβάλλον τοπικά Discord 2026-01 (διαθέσιμο στο πλήρες πακέτο).
  • Το περιεχόμενο των ασκήσεων βασίζεται στις διαφάνειες και σε σειριακά προγράμματα προς βελτιστοποίηση: Set 1 — OpenMP, MPI, Python (διαθέσιμο στο πλήρες πακέτο), Set 2 — SIMD, CUDA (διαθέσιμο στο πλήρες πακέτο).
  • Οι εργασίες βγαίνουν αργά και οι προθεσμίες μετακινούνταν· παλαιότερα δεχόταν και εκπρόθεσμη παράδοση μέχρι το τέλος του εξαμήνου Discord 2025-11 (διαθέσιμο στο πλήρες πακέτο).

Εξετάσεις

Συνοπτικά, με τα δεδομένα του Εξετάσεις (3 συνεδρίες, καμία με λύσεις):

  • 2024-02: ενδεικτικά θέματα με τίτλο «Παράλληλη Επεξεργασία» — δείγμα, όχι εξέταση του μαθήματος· το έγγραφο φέρει την ένδειξη «δεν έγινε η εξέταση» και περιέχει ερωτήσεις πολλαπλής επιλογής και ασκήσεις κώδικα (pthreads, OpenMP, MPI) Εξετάσεις 2024-02.
  • 2025-sample: ενδεικτικά θέματα 2025-26 από το eClass, μίγμα πολλαπλής επιλογής και ανοιχτών (OpenMP reduction, MPI scan/allreduce, SSE/AVX, CUDA) Εξετάσεις 2025-sample.
  • Ιανουάριος 2026: ανοιχτού τύπου, «17 ερωτήσεις», πάνω από τις μισές κώδικας (κατά φοιτητές)· θέματα weak scaling, roofline, reductions, MPI allreduce, SIMD και CUDA Εξετάσεις 2026-01, Discord 2026-02 (διαθέσιμο στο πλήρες πακέτο).
  • Σεπτέμβριος 2026: «20 θέματα», μερικά πολλαπλής χωρίς αιτιολόγηση· τρία θεωρητικά για FMA/SIMD με float/double που δεν υπήρχαν τον Φεβρουάριο (κατά φοιτητές) Discord 2026-09 (διαθέσιμο στο πλήρες πακέτο).
  • Επαναλαμβανόμενα μοτίβα: OpenMP reductions/worksharing, MPI reduce/scan/broadcast, SIMD/AVX, CUDA kernels Εξετάσεις.
  • Παλαιότερα (2020-21) το μάθημα είχε προόδους και τελική μέσα στην εξεταστική, με γραπτές ερωτήσεις Discord 2021-02 (διαθέσιμο στο πλήρες πακέτο).

Δυσκολίες & παγίδες

  • Απαιτείται εξοικείωση με C/C++· κατά φοιτητές, με λίγη τριβή στην C και στα σφάλματα των MPI/OpenMP «θα ναι σίγουρο 8+» Discord 2025-09 (διαθέσιμο στο πλήρες πακέτο).
  • Άλλος φοιτητής χαρακτήρισε το μάθημα «εύκολο» με βαθμολογικό κέρδος, αλλά τα διαδικαστικά ήταν ρευστά και ο κορμός είναι C/C++ και CUDA Discord 2024-09 (διαθέσιμο στο πλήρες πακέτο).
  • Δεν χρειάζεται απαραίτητα παρακολούθηση — οι διαφάνειες καλύπτουν την ύλη — αλλά ο ρυθμός του μαθήματος είναι αργός Discord 2025-11 (διαθέσιμο στο πλήρες πακέτο).
  • Η δομή αλλάζει από έτος σε έτος (πρόοδοι + τελική παλιά· μόνο ασκήσεις το 2022· εργασίες + γραπτή πρόσφατα) Discord 2022-09 (διαθέσιμο στο πλήρες πακέτο).
  • Τα αποτελέσματα αργούν· το 2025 φοιτητές περίμεναν περίπου ένα μήνα Discord 2025-03 (διαθέσιμο στο πλήρες πακέτο).
  • Δεν είναι «εύκολη» επιλογή χωρίς δουλειά: «δεν είναι σε καμία περίπτωση free επιλογής… θέλουν δουλειά», αλλά αξίζει αν ενδιαφέρει το αντικείμενο Discord 2023-10 (διαθέσιμο στο πλήρες πακέτο).
  • Το OpenMP με GPU έτρεχε πολύ πιο αργά από το αντίστοιχο CUDA σε κάποιους φοιτητές (2025-02) Discord 2025-02 (διαθέσιμο στο πλήρες πακέτο).

Υλικό & τρόπος μελέτης

  • Ευρετήριο όλου του υλικού eClass: eClass (διαθέσιμο στο πλήρες πακέτο). Διαλέξεις 2025-26: Multithreading (διαθέσιμο στο πλήρες πακέτο), OpenMP (διαθέσιμο στο πλήρες πακέτο), MPI (διαθέσιμο στο πλήρες πακέτο), Roofline (διαθέσιμο στο πλήρες πακέτο), SIMD (διαθέσιμο στο πλήρες πακέτο), CUDA 2 (διαθέσιμο στο πλήρες πακέτο).
  • Εκφωνήσεις ασκήσεων: Set 1 — OpenMP, MPI, Python (διαθέσιμο στο πλήρες πακέτο) και Set 2 — SIMD, CUDA (διαθέσιμο στο πλήρες πακέτο), με τον κώδικα-βάση στους αντίστοιχους φακέλους των Παραδειγμάτων (διαθέσιμο στο πλήρες πακέτο).
  • Κανονισμός μαθήματος και εργαστηρίου 2025-26: eClass (διαθέσιμο στο πλήρες πακέτο).
  • Ενδεικτικά και παλιά θέματα: Εξετάσεις και ανακλήσεις discord_recalls.
  • Παραδείγματα κώδικα (MPI, OpenMP, SIMD/AVX, CUDA, pthreads) στον φάκελο eclass/ (διαθέσιμο στο πλήρες πακέτο) — χρήσιμα για εξάσκηση πάνω στα μοτίβα των ασκήσεων.
  • Σημειώσεις OpenMP που πρότειναν φοιτητές για επανάληψη: openmp-4.5 (διαθέσιμο στο πλήρες πακέτο) και openmp-examples-4.5.0 (διαθέσιμο στο πλήρες πακέτο) Discord 2021-01 (διαθέσιμο στο πλήρες πακέτο).
  • Βιβλιογραφία περιγράμματος: Pacheco, «Εισαγωγή στον Παράλληλο Προγραμματισμό» (Κλειδάριθμος 2015) και Kirk & Hwu, «Προγραμματισμός Μαζικά Παράλληλων Επεξεργαστών» (Κλειδάριθμος 2010) Περίγραμμα.

Συχνές ερωτήσεις

  • Χρειάζεται παρακολούθηση; Όχι απαραίτητα· οι διαφάνειες καλύπτουν την ύλη, αλλά ο ρυθμός είναι αργός Discord 2025-11 (διαθέσιμο στο πλήρες πακέτο).
  • Είναι ατομικές οι εργασίες; Ατομικά ή σε ομάδες έως 2 ατόμων Discord 2025-10 (διαθέσιμο στο πλήρες πακέτο).
  • Πότε βγαίνουν οι εργασίες; Ιστορικά αργά, με ανακοίνωση στο μάθημα ή στο eClass Discord 2025-10 (διαθέσιμο στο πλήρες πακέτο), Discord 2025-11 (διαθέσιμο στο πλήρες πακέτο).
  • Υπάρχουν παλιά θέματα; Ναι, ενδεικτικά θέματα στο eClass και μεταγραφές στο Εξετάσεις Discord 2026-01 (διαθέσιμο στο πλήρες πακέτο).
  • Πρέπει να παραδώσω εργασίες για να δώσω εξέταση; Ναι· ο κανονισμός 2025-26 απαιτεί εμπρόθεσμη υποβολή τουλάχιστον 2 από τις 3 ασκήσεις eClass Κανονισμός (διαθέσιμο στο πλήρες πακέτο), όπως ανέφεραν και φοιτητές Discord 2025-01 (διαθέσιμο στο πλήρες πακέτο).
  • Χρειάζομαι GPU ή server; Παρέχεται server του τμήματος για CUDA/MPI, αν δεν έχεις ή δεν θες να το στήσεις στο pc σου Discord 2026-01 (διαθέσιμο στο πλήρες πακέτο).
  • Πότε βγαίνουν οι βαθμοί; Στο Progress· το 2025 υπήρξε καθυστέρηση Discord 2025-03 (διαθέσιμο στο πλήρες πακέτο).
  • Είναι δύσκολο; Οι γνώμες ποικίλλουν, από «εύκολο» (2024-09) έως «πιο δύσκολα» τον Σεπτέμβριο 2026 Discord 2024-09 (διαθέσιμο στο πλήρες πακέτο), Discord 2026-09 (διαθέσιμο στο πλήρες πακέτο).

Πηγές & αξιοπιστία

  • Κατάλογος 2025-26: ECTS 5, ώρες 2+1+2, τομέας ΛΥ και διδάσκων Π. Χατζηδούκας Κατάλογος· το Περίγραμμα (PDF 2024-07) συμφωνεί στα ECTS.
  • Discord: 1453 μηνύματα, 2020-10 έως 2026-09· η πυκνότερη περίοδος είναι το 2020-21 (913 μηνύματα, εποχή συνδιδασκαλίας με το αντίστοιχο των Ηλεκτρολόγων) Discord 2020-10 (διαθέσιμο στο πλήρες πακέτο). Όλα είναι ανεπίσημες γνώμες, εκτός από ανακοινώσεις που αναδημοσιεύτηκαν.
  • Εξετάσεις: τρεις μεταγραφές (2024-02, 2025-sample, 2026-01) και καμία λύση· λείπουν παλιότερα θέματα Εξετάσεις.
  • Κατανομή βαθμού: ο κανονισμός 2025-26 δίνει 60% ασκήσεις + 40% εξέταση eClass Κανονισμός (διαθέσιμο στο πλήρες πακέτο), συμβατός με τα ακούσματα 2026-03 (40% εξέταση + 30% + 30%) Discord 2026-03 (διαθέσιμο στο πλήρες πακέτο)· το παλαιότερο περίγραμμα 2024-07 έδινε 30/70 Περίγραμμα.
  • Δεν βρέθηκαν πληροφορίες για ποσοστά επιτυχίας, αναλυτική κατανομή βαθμών ανά εργασία 2025-26 ή επίσημη λίστα ύλης ανά εξεταστική.

Αρχεία του φακέλου

Παράγεται αυτόματα από tools/render_readmes.py — αλλαγές εδώ χάνονται στην επόμενη εκτέλεση.

Φάκελος Περιεχόμενο
discord/ (διαθέσιμο στο πλήρες πακέτο) 11 περίοδοι συζητήσεων Discord · 1453 μηνύματα
Previous Exams/ 3 συνεδρίες εξετάσεων · 2 πρωτότυπα αρχεία (2 εικόνες) · 2 μεταγραφές · ανακλήσεις από Discord
eclass/ (διαθέσιμο στο πλήρες πακέτο) 240 αρχεία · 15 κείμενα (sidecar)
other/ 18 αρχεία (12 εικόνες)