Undergraduate Elective 1068: Διαφορά μεταξύ των αναθεωρήσεων
Από Περιγράμματα - Τμήμα Μαθηματικών
Χωρίς σύνοψη επεξεργασίας |
|||
| (2 ενδιάμεσες εκδόσεις από ένα χρήστη δεν εμφανίζονται) | |||
| Γραμμή 9: | Γραμμή 9: | ||
<div id="pills-gr" class="tab-pane fade show active" role="tabpanel" aria-labelledby="pills-gr-tab" style="text-align:left;"> | <div id="pills-gr" class="tab-pane fade show active" role="tabpanel" aria-labelledby="pills-gr-tab" style="text-align:left;"> | ||
<div align = center> | |||
== '''Κατανεμημένα και Παράλληλα Συστήματα''' == | |||
</div> | |||
=== Γενικά === | === Γενικά === | ||
| Γραμμή 39: | Γραμμή 44: | ||
|- | |- | ||
! Προαπαιτούμενα Μαθήματα | ! Προαπαιτούμενα Μαθήματα | ||
| | | | ||
|- | |- | ||
! Γλώσσα Διδασκαλίας και Εξετάσεων | ! Γλώσσα Διδασκαλίας και Εξετάσεων | ||
| Γραμμή 45: | Γραμμή 50: | ||
|- | |- | ||
! Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus | ! Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus | ||
| | | | ||
|- | |- | ||
! Ηλεκτρονική Σελίδα Μαθήματος (URL) | ! Ηλεκτρονική Σελίδα Μαθήματος (URL) | ||
| Γραμμή 71: | Γραμμή 76: | ||
* Αυτόνομη Εργασία | * Αυτόνομη Εργασία | ||
|} | |} | ||
=== Περιεχόμενο Μαθήματος === | === Περιεχόμενο Μαθήματος === | ||
| Γραμμή 88: | Γραμμή 92: | ||
* Μοντέλα και μηχανισμοί επικοινωνίας διεργασιών. | * Μοντέλα και μηχανισμοί επικοινωνίας διεργασιών. | ||
* Διανυσματική Επεξεργασία. Συστοιχίες και υπολογιστική πλέγματος. Παραδείγματα παραλληλοποίησης εφαρμογών. Θέματα συγχρονισμού. | * Διανυσματική Επεξεργασία. Συστοιχίες και υπολογιστική πλέγματος. Παραδείγματα παραλληλοποίησης εφαρμογών. Θέματα συγχρονισμού. | ||
ΕΡΓΑΣΤΗΡΙΟ: | </br>ΕΡΓΑΣΤΗΡΙΟ: | ||
* Εισαγωγικές έννοιες προγραμματισμού με το gcc. Δείκτες, κλάσεις, δυναμικές δομές. Δημιουργία διεργασιών σε Linux, διαχωρισμός των εννοιών user-space και kernel-space, γονικές διεργασίες και σχέσεις γονέα-παιδιού, Διαχείριση διεργασιών. | * Εισαγωγικές έννοιες προγραμματισμού με το gcc. Δείκτες, κλάσεις, δυναμικές δομές. Δημιουργία διεργασιών σε Linux, διαχωρισμός των εννοιών user-space και kernel-space, γονικές διεργασίες και σχέσεις γονέα-παιδιού, Διαχείριση διεργασιών. | ||
* Containers, Templates, STL (c++ standard templates library). | * Containers, Templates, STL (c++ standard templates library). | ||
| Γραμμή 97: | Γραμμή 101: | ||
* Διαχείριση και συγχρονισμός νημάτων, προστασία κρίσιμης περιοχής με χρήση mutex locks και semaphores. Παρουσίαση νημάτων εκτέλεσης υπό συνθήκη και φράγματα συγχρονισμού. | * Διαχείριση και συγχρονισμός νημάτων, προστασία κρίσιμης περιοχής με χρήση mutex locks και semaphores. Παρουσίαση νημάτων εκτέλεσης υπό συνθήκη και φράγματα συγχρονισμού. | ||
* Εισαγωγή στο MPI, ρυθμίσεις του MPI, παρουσίαση βασικών συναρτήσεων του MPI, τα πρώτα προγράμματα σε MPI. | * Εισαγωγή στο MPI, ρυθμίσεις του MPI, παρουσίαση βασικών συναρτήσεων του MPI, τα πρώτα προγράμματα σε MPI. | ||
* Παρουσίαση βασικών σύγχρονων μεθόδων αποστολής-λήψης μηνυμάτων σε MPI. | * Παρουσίαση βασικών σύγχρονων μεθόδων αποστολής-λήψης μηνυμάτων σε MPI. | ||
* Παρουσίαση ασύγχρονων μεθόδων αποστολής λήψης. Παραδείγματα. | * Παρουσίαση ασύγχρονων μεθόδων αποστολής λήψης. Παραδείγματα. | ||
* Χρήση συλλογικών μεθόδων του MPI (Gather-Scatter-Reduce-Broadcast) και παραδείγματα. | * Χρήση συλλογικών μεθόδων του MPI (Gather-Scatter-Reduce-Broadcast) και παραδείγματα. | ||
* Βασικές δομές οργάνωσης κατανεμημένων προγραμμάτων. Παραδείγματα κατανεμημένων υπολογισμών. Σύνθετοι τύποι δεδομένων με χρήση του MPI. | * Βασικές δομές οργάνωσης κατανεμημένων προγραμμάτων. Παραδείγματα κατανεμημένων υπολογισμών. Σύνθετοι τύποι δεδομένων με χρήση του MPI. | ||
* Δημιουργία σύνθετων δομών δεδομένων με το MPI και αποστολή μηνυμάτων δομών δεδομένων. | * Δημιουργία σύνθετων δομών δεδομένων με το MPI και αποστολή μηνυμάτων δομών δεδομένων. | ||
* Παράλληλος προγραμματισμός OpenMP και Epiphany-SDK, BSP. | * Παράλληλος προγραμματισμός OpenMP και Epiphany-SDK, BSP. | ||
| Γραμμή 113: | Γραμμή 117: | ||
|- | |- | ||
! Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών | ! Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών | ||
| Χρήση Εργαστηρίου | | Χρήση Εργαστηρίου Μικροϋπολογιστών | ||
|- | |- | ||
! Οργάνωση Διδασκαλίας | ! Οργάνωση Διδασκαλίας | ||
| Γραμμή 122: | Γραμμή 126: | ||
|- | |- | ||
| Διαλέξεις (13Χ3) | | Διαλέξεις (13Χ3) | ||
| 39 | | style="text-align: center;" |39 | ||
|- | |- | ||
| Αυτοτελής Μελέτη | | Αυτοτελής Μελέτη | ||
| 78 | | style="text-align: center;" |78 | ||
|- | |- | ||
| Επίλυση Ασκήσεων - εργασίες | | Επίλυση Ασκήσεων - εργασίες | ||
| 33 | | style="text-align: center;" |33 | ||
|- | |- | ||
| Σύνολο Μαθήματος | | Σύνολο Μαθήματος | ||
| 150 | | style="text-align: center;" |150 | ||
|} | |} | ||
|- | |- | ||
| Γραμμή 140: | Γραμμή 144: | ||
* Γραπτή εξέταση (50%) | * Γραπτή εξέταση (50%) | ||
|} | |} | ||
=== Συνιστώμενη Βιβλιογραφία === | === Συνιστώμενη Βιβλιογραφία === | ||
| Γραμμή 148: | Γραμμή 151: | ||
<div id="pills-en" class="tab-pane fade" role="tabpanel" aria-labelledby="pills-en-tab" style="text-align:left;"> | <div id="pills-en" class="tab-pane fade" role="tabpanel" aria-labelledby="pills-en-tab" style="text-align:left;"> | ||
<div align = center> | |||
== '''Distributed and Parallel Systems''' == | |||
</div> | |||
=== General === | === General === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| Γραμμή 189: | Γραμμή 198: | ||
|} | |} | ||
=== Learning Outcomes === | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| Γραμμή 199: | Γραμμή 208: | ||
* Understanding of the basic functional parts of a parallel and a distributed system. | * Understanding of the basic functional parts of a parallel and a distributed system. | ||
* Understanding of the basic concepts and techniques / programming, communication, and transparency techniques used in both parallel and distributed systems. | * Understanding of the basic concepts and techniques / programming, communication, and transparency techniques used in both parallel and distributed systems. | ||
* Programming parallel tasks using parallel programming libraries such as OpenMP and distributed programming tools such as MPI. | * Programming parallel tasks using parallel programming libraries such as OpenMP and distributed programming tools such as MPI. | ||
* Parallel algorithms, Parallel architectures, Parallel algorithm development, Parallel Selection, Parallel Merge, Parallel Classification, Parallel Search, Parallel Algorithms of Computational Geometry. Parallel iterative methods for solving Linear problems. | * Parallel algorithms, Parallel architectures, Parallel algorithm development, Parallel Selection, Parallel Merge, Parallel Classification, Parallel Search, Parallel Algorithms of Computational Geometry. Parallel iterative methods for solving Linear problems. | ||
* Parallel and Distributed Systems and Architectures. Performance of Parallel and Distributed Systems and Applications. | * Parallel and Distributed Systems and Architectures. Performance of Parallel and Distributed Systems and Applications. | ||
| Γραμμή 208: | Γραμμή 217: | ||
* Data search, analysis and synthesis using Information Technologies | * Data search, analysis and synthesis using Information Technologies | ||
* Decision making | * Decision making | ||
* Project design and | * Project design and implementation | ||
* Working independently | * Working independently | ||
|} | |} | ||
=== Syllabus === | === Syllabus === | ||
| Γραμμή 240: | Γραμμή 248: | ||
=== Teaching and Learning Methods - Evaluation === | === Teaching and Learning Methods - Evaluation === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| Γραμμή 255: | Γραμμή 264: | ||
|- | |- | ||
| Lectures | | Lectures | ||
| 39 | | style="text-align: center;" |39 | ||
|- | |- | ||
| Working Independently | | Working Independently | ||
| 78 | | style="text-align: center;" |78 | ||
|- | |- | ||
| Exercises-Homework | | Exercises-Homework | ||
| 33 | | style="text-align: center;" |33 | ||
|- | |- | ||
| Course | | Course total | ||
| 150 | | style="text-align: center;" |150 | ||
|} | |} | ||
|- | |- | ||
| Γραμμή 273: | Γραμμή 282: | ||
* Semester written examination (50%) | * Semester written examination (50%) | ||
|} | |} | ||
=== Attached Bibliography === | === Attached Bibliography === | ||
| Γραμμή 281: | Γραμμή 289: | ||
<div style="text-align:left;"> | <div style="text-align:left;"> | ||
* Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation, G.M. Karniadakis and R.M. Kirby, 2003, Cambridge University press, ISBN: 0-521-81754- | * Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation, G.M. Karniadakis and R.M. Kirby, 2003, Cambridge University press, ISBN: 0-521-81754-4 | ||
* Using OpenMP, Portable Shared Memory Parallel Programming., B. Chapman, G. Jost and R. Pas, 2008, MIT press, ISBN: | * Using OpenMP, Portable Shared Memory Parallel Programming., B. Chapman, G. Jost and R. Pas, 2008, MIT press, ISBN: 9780262533027 | ||
* Learning Boost C++ libraries, A. Mukherjee, 2015, PACKT, ISBN:978-1-78355-121-7 | * Learning Boost C++ libraries, A. Mukherjee, 2015, PACKT, ISBN:978-1-78355-121-7 | ||
* Boost C++ Application Development Cookbook - Second Edition: Recipes to simplify your application development, 2 Edition, A. Polukhin, 2017, PACKT, ISBN:978-1-78728-224-7 | * Boost C++ Application Development Cookbook - Second Edition: Recipes to simplify your application development, 2 Edition, A. Polukhin, 2017, PACKT, ISBN:978-1-78728-224-7 | ||
Τελευταία αναθεώρηση της 22:45, 3 Απριλίου 2026
Κατανεμημένα και Παράλληλα Συστήματα
Γενικά
| Σχολή | Σχολή Θετικών Επιστημών |
|---|---|
| Τμήμα | Τμήμα Μαθηματικών |
| Επίπεδο Σπουδών | Προπτυχιακό |
| Κωδικός Μαθήματος | MAE840 |
| Εξάμηνο | 8 |
| Τίτλος Μαθήματος | Κατανεμημένα και Παράλληλα Συστήματα |
| Αυτοτελείς Διδακτικές Δραστηριότητες | Διαλέξεις και Εργαστηριακές Ασκήσεις (Εβδομαδιαίες Ώρες Διδασκαλίας: 3, Πιστωτικές Μονάδες: 6) |
| Τύπος Μαθήματος | Ειδίκευσης |
| Προαπαιτούμενα Μαθήματα | |
| Γλώσσα Διδασκαλίας και Εξετάσεων | Ελληνική |
| Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus | |
| Ηλεκτρονική Σελίδα Μαθήματος (URL) | Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων. |
Μαθησιακά Αποτελέσματα
| Μαθησιακά Αποτελέσματα | Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής:
|
|---|---|
| Γενικές Ικανότητες |
|
Περιεχόμενο Μαθήματος
|
ΘΕΩΡΙΑ:
|
Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση
| Τρόπος Παράδοσης | Στην τάξη | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών | Χρήση Εργαστηρίου Μικροϋπολογιστών | ||||||||||
| Οργάνωση Διδασκαλίας |
| ||||||||||
| Αξιολόγηση Φοιτητών |
|
Συνιστώμενη Βιβλιογραφία
Δείτε την υπηρεσία Εύδοξος. Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:
Distributed and Parallel Systems
General
| School | School of Science |
|---|---|
| Academic Unit | Department of Mathematics |
| Level of Studies | Undergraduate |
| Course Code | MAE840 |
| Semester | 8 |
| Course Title | Distributed and Parallel Systems |
| Independent Teaching Activities | Lectures-Laboratory (Weekly Teaching Hours: 3, Credits: 6) |
| Course Type | Special Background |
| Prerequisite Courses | - |
| Language of Instruction and Examinations | Greek |
| Is the Course Offered to Erasmus Students | Yes(in English) |
| Course Website (URL) | See eCourse, the Learning Management System maintained by the University of Ioannina. |
Learning Outcomes
| Learning outcomes |
Students knowledge acquisition of:
|
|---|---|
| General Competences |
|
Syllabus
|
Teaching and Learning Methods - Evaluation
| Delivery | Classroom | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Use of Information and Communications Technology | Use of Micro-computers Laboratory | ||||||||||
| Teaching Methods |
| ||||||||||
| Student Performance Evaluation |
|
Attached Bibliography
See the official Eudoxus site. Books and other resources, not provided by Eudoxus:
- Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation, G.M. Karniadakis and R.M. Kirby, 2003, Cambridge University press, ISBN: 0-521-81754-4
- Using OpenMP, Portable Shared Memory Parallel Programming., B. Chapman, G. Jost and R. Pas, 2008, MIT press, ISBN: 9780262533027
- Learning Boost C++ libraries, A. Mukherjee, 2015, PACKT, ISBN:978-1-78355-121-7
- Boost C++ Application Development Cookbook - Second Edition: Recipes to simplify your application development, 2 Edition, A. Polukhin, 2017, PACKT, ISBN:978-1-78728-224-7
- C++17 STL Cookbook, J. Galowicz, PACKT,978-1-78712-049-5, 2017