Module also offered within study programmes:
General information:
Name:
Parallel and Distributed Systems
Course of study:
2015/2016
Code:
BIT-2-103-GE-s
Faculty of:
Geology, Geophysics and Environmental Protection
Study level:
Second-cycle studies
Specialty:
Geoinformatics
Field of study:
Applied Computer Science
Semester:
1
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr hab. inż. Danek Tomasz (danek9@geol.agh.edu.pl)
Academic teachers:
dr hab. inż. Danek Tomasz (danek9@geol.agh.edu.pl)
Module summary

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence
M_K001 Student rozumie potrzebę ciągłego dokształcania się oraz ma świadomość odpowiedzialności za pracę własną oraz w zespole IT2A_K02, IT2A_K06, IT2A_K01 Execution of a project
Skills
M_U001 Student potrafi modyfikować, uruchamiać i śledzić wykonanie programów wykorzystujących podstawowe, aktualne narzędzia do tworzenia systemów równoległych i rozproszonych IT2A_U06 Test,
Report,
Execution of laboratory classes
M_U002 Student umie tworzyć proste systemy równoległe i rozproszone w wybranych technikach oraz środowiskach tworzenia oprogramowania IT2A_U09, IT2A_U05, IT2A_U06 Execution of a project
Knowledge
M_W001 Student zna podstawowe oraz wybrane zaawansowane idee i pojęcia związane z systemami równoległymi i rozproszonymi, w tym rozproszonymi systemami operacyjnymi IT2A_W10, IT2A_W05, IT2A_W02, IT2A_W06 Examination
M_W002 Student zna podstawowe oraz wybrane zaawansowane narzędzia tworzenia systemów równoległych i rozproszonych IT2A_W10, IT2A_W05 Examination
M_W003 Student zna zasady i metody przeprowadzania podstawowej analizy poprawności i wydajności systemów równoległych i rozproszonych IT2A_W02, IT2A_W06 Examination
M_W004 Student rozumie podstawowe problemy projektowe w systemach równoległych i rozproszonych oraz zna wybrane sposoby ich rozwiązywania IT2A_W05, IT2A_W02, IT2A_W14, IT2A_W06 Examination
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Social competence
M_K001 Student rozumie potrzebę ciągłego dokształcania się oraz ma świadomość odpowiedzialności za pracę własną oraz w zespole - - - - - - + - - - -
Skills
M_U001 Student potrafi modyfikować, uruchamiać i śledzić wykonanie programów wykorzystujących podstawowe, aktualne narzędzia do tworzenia systemów równoległych i rozproszonych + - - - - - + - - - -
M_U002 Student umie tworzyć proste systemy równoległe i rozproszone w wybranych technikach oraz środowiskach tworzenia oprogramowania + - - - - - + - - - -
Knowledge
M_W001 Student zna podstawowe oraz wybrane zaawansowane idee i pojęcia związane z systemami równoległymi i rozproszonymi, w tym rozproszonymi systemami operacyjnymi + - - - - - - - - - -
M_W002 Student zna podstawowe oraz wybrane zaawansowane narzędzia tworzenia systemów równoległych i rozproszonych + - - - - - + - - - -
M_W003 Student zna zasady i metody przeprowadzania podstawowej analizy poprawności i wydajności systemów równoległych i rozproszonych + - - - - - + - - - -
M_W004 Student rozumie podstawowe problemy projektowe w systemach równoległych i rozproszonych oraz zna wybrane sposoby ich rozwiązywania + - - - - - + - - - -
Module content
Lectures:

1. Systemy równoległe i rozproszone – wprowadzenie
2. Zrównoleglenie programów na poziomie zadań w środowisku OpenMP
3. Systemy równoległe z pamięcią rozproszoną – tryby komunikacji w środowisku MPI
4. Przesyłanie złożonych struktur danych w komunikatach MPI
5. Dynamiczne zarządzanie procesami oraz równoległe operacje wejścia-wyjścia
6. Algorytmy równoległe i miary efektywności zrównoleglenia
7. Podstawowe mechanizmy komunikacji w systemach rozproszonych
8. Klastry z perspektywy administratora i użytkownika
9. Systemy kolejkowe
10. OpenCL

Practical classes:

1. Tworzenie programów z równoległością na poziomie zadań w środowisku OpenMP
2. Tworzenie programów MPI z przesyłaniem danych i dynamicznym zarządzaniem procesami
3. Tworzenie programów równoległych wykorzystujących karty graficzne i specyfikację OpenCL (4h)
4. Obliczenia w środowiskach heterogenicznych

Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 116 h
Module ECTS credits 4 ECTS
Participation in lectures 28 h
Participation in laboratory classes 28 h
Realization of independently performed tasks 35 h
Completion of a project 25 h
Additional information
Method of calculating the final grade:

Ocena końcowa = 50% oceny z egzaminu + 50% oceny z ćwiczeń, po uzyskaniu co najmniej 3.0 z każdej z nich

Prerequisites and additional requirements:

Programowanie w językach C

Recommended literature and teaching resources:

Andrzej Karbowski, Ewa Niewiadomska-Szynkiewicz [red.], „Obliczenia Równoległe i Rozproszone”, Politechnika Warszawska 2001
G. Coulouris et al., “Distributed Systems. Concepts and Design” (4th ed.), Addison Wesley, 2005 (wydanie polskie “Systemy rozproszone. Podstawy i projektowanie”, WNT 1998)
S. Tanenbaum, “Distributed Systems. Principles and Paradigms” (2nd ed.), Prentice Hall 2002
M. Herlihy, N. Shavit „The Art of Multiprocessor Programming” Elsevier, 2008 (wydanie polskie „Sztuka programowania wieloprocesorowego”, PWN 2010)
Michael J. Quinn, “Parallel Programming in C with MPI and OpenMP”, McGraw–Hill 2004
William Gropp, Ewing Lusk, Anthony Skjellum, “Using MPI: Portable Parallel Programming with the Message–Passing Interface”, MIT Press 1999
Ian Foster, “Designing and Building Parallel Programs”, Addison–Wesley 1995,
http://www–unix.mcs.anl.gov/dbpp/ ]
Marc Snir, Steve Otto, Steven Huss–Lederman, David Walker, Jack Dongarra, MPI:” The Complete Reference”, MIT Press 1998
Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar, “Introduction to Parallel Computing”, Addison–Wesley / Pearson Education 2003

Scientific publications of module course instructors related to the topic of the module:

Creation and application of heterogeneous grid environment for seismic modeling — Opis utworzenia i zastosowania heterogenicznego środowiska gridowego do modelowań sejsmicznych, Jacek Strzelczyk, Tomasz Danek, Geoinformatica Polonica,2009

Additional information:

Wymagane od student samodzielne opracowanie algorytmów i ich zaimplementowanie oraz przetestowanie według dostarczonej listy algorytmów (39 prostych algorytmów)

Zaliczenie w pierwszym terminie na podstawie zaliczonych programów + dodatkowe 2 terminy zaliczenia (przed drugim i trzecim terminem egzaminu),

udział „praktycznych” punktów ECTS: 2,5
udział „teoretycznych” punktów ECTS: 1,5