Στόχοι Μαθήματος: Το μάθημα της Αρχιτεκτονικής Υπολογιστών παρέχει μια ολοκληρωμένη εισαγωγή στις θεμελιώδεις αρχές της αρχιτεκτονικής υπολογιστών, εστιάζοντας στον σχεδιασμό και τη συμπεριφορά (σε υψηλό επίπεδο) των συστημάτων υπολογιστών. Το μάθημα απαντά στα «Τί» αποτελεί ένα υπολογιστικό σύστημα και «Γιατί», και επικεντρώνεται στις διάφορες τεχνικές που αυξάνουν την επίδοση ενός υπολογιστικού συστήματος. Το μάθημα δίνει έμφαση στη σχέση μεταξύ αρχιτεκτονικής και επίδοσης λογισμικού, καθώς και στις τρέχουσες τάσεις και προκλήσεις στην έρευνα αρχιτεκτονικής υπολογιστών. Το μάθημα διδάσκει τον παραλληλισμό εντολών (ILP), τον παραλληλισμό δεδομένων (DLP) και το παραλληλισμό υπολογισμό (TLP). Διδάσκει επίσης τελευταίες τεχνολογίες όπως Cloud Computing (στο επίπεδο της αρχιτεκτονικής) και τους τελευταίους επιταχυντές ειδικών τομέων (Domain-specific Accelerators), συμπεριλαμβανομένων GPU και AI accelerators. Σε κάθε ενότητα θα εξετάζονται οι πιο σημαντικές τεχνικές που χρησιμοποιούνται σήμερα σε υπάρχον συστήματα αλλά και σε ερευνητικά προγράμματα.
Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Κατανοούν και να εφαρμόζουν τη σύγχρονη μεθοδολογία αξιολόγησης και σύγκρισης επίδοσης υπολογιστικών συστημάτων. (2) Περιγράφουν και να εξηγούν τις βασικές και προχωρημένες αρχές που διέπουν την αρχιτεκτονική διαφορών ειδών μοντέρνων επεξεργαστών και τον αντίκτυπο τους στην επίδοση. (3) Να αξιολογούν τις σύγχρονες τάσεις και προκλήσεις στην περιοχή της αρχιτεκτονικής υπολογιστών. (4) Να απαντούν στα ερωτήματα «Τί» και «Γιατί» υλοποιεί ένα υπολογιστικό σύστημα για να αυξήσει την επίδοση του.
Περιεχόμενο Μαθήματος: Βασικές αρχές ποσοτικού σχεδιασμού και ανάλυσης υπολογιστικών συστημάτων, Παραλληλισμός στο επίπεδο των εντολών, Branch Prediction, Dynamic Scheduling, Hardware Speculation, Παραλληλισμός στο επίπεδο των δεδομένων, GPUs, Παράλληλα συστήματα, Multiprocessors, Shared memory and Cache coherence, Memory Consistency, Παραλληλισμός στο επίπεδο των αιτημάτων, Cloud Computing, Ειδικοί Επιταχυντές, Domain-specific Accelerators, AI and DNN Accelerators. Επιπλέον ερευνητικά/πρακτικά θέματα βάση της εξέλιξης της τεχνολογίας (π.χ. Processor Security, Quantum Computing).