Indice
Strumenti di programmazione per sistemi paralleli e distribuiti
Teacher: Dr. Massimo Coppola
This page concerns the SPD course for the academic year 2009-2010 |
---|
For this first year, the course is co-organized with
Complementi di piattaforme abilitanti distribuite taught by Dr. Nicola Tonellotto
Contact info
e-mail : massimo.coppola@isti.cnr.it
Phone : 050 315 2992
Office : CNR Reseach Area, ISTI-CNR, Building C, room 25a
Lessons Timetable
Tuesday | 11.30-13.30 | Room 10B |
---|---|---|
Wednesday | 16-18 | Room 10B |
Friday | 9.30-11.30 | Room 10B |
Teaching room: Room 10B, S.Anna/CNIT building in CNR Research Area, ground floor.
In addition to normal hours, additional hours on Friday morning (in the range 11.30-13.30) will be added as necessary in order to compensate for lessons skipped due to external reasons.
Occasionally we might use rooms within the Polo Fibonacci, or other rooms in the CNR buildings of the CNR Research Area.
In case of these exceptions, notice will be given in the News section below in this page.
Question time Students should contact the teacher in advance by phone / e-mail. A different time can be agreed upon if needed.
Tuesday | 15.30-17 | ISTI-CNR room 25a or C.S. Dept. Room 385 |
---|
News and Updates
- 20/04/2010 time changed for the lesson of Wed May 5th : only for that day, lesson will be 14 - 16, same room.
- 20/04/2010 tomorrow 21/4 and on Friday 23/4 there will be practicals, students should bring their laptops.
- 9/04/2010 NEXT LESSONS : Tuesday 13/4 there will be lesson. The students should bring their laptops for a Hadoop Lab session. Wednesday 14/4 there is regular lesson. MPI-lab time is rescheduled to Friday 16/4, please bring laptops and complete exercises from previous MPI lab.
We remind everybody that Lab work is part of the course expected workload, and prerequisite to the final projects: the students are expected to participate and complete the exercises discussed, eventually on their own. - 8/04/2010
the two lessons tomorrow and next Tuesday will be laboratories : MPI Lab on Friday 9/04 andHadoop Lab on Tuesday. The lab is not available, we will have lesson in the normal room, students are reminded to bring their laptop and, if they cannot access the wifi network, adviced to bring a network cable. - 5/03/2010 the lesson on Friday 5th of March will be from 9.30 to 12.30, same room.
- 24/02/2010 second lesson to be held in Room 10B, S.Anna/CNIT building in CNR Research Area, ground floor.
- 23/02/2010 first lesson held in Room R1, Fibonacci area
Course Journal
The course journal is a separate page in this wiki.
Aim of the Course
The course will provide a description and analysis of a few key parallel and distributed programming platforms and models, starting from their theoretical foundations, where not overed by previous courses, and focusing on (1) existing standards for platforms and programming systems and (2) State-of-the-art solutions. The course will include practical use of those systems to develop simple applications.
Overall Program
The course will cover the following topics.
- Foundation, Technologies
- Elementary mechanisms to distribute computation
- Virtualization
- Basics of scheduling algorithms and resource management
- Basics of Service Oriented Architectures SOA
- Platforms
- Grids
- Clouds
- XtreemOS
- Programming systems/frameworks
- MPI (the core part of the MPI 2.2 standard)
- ASSIST
- Map&Reduce
- Example Applications
Further details are given in the first lesson (see online slides in the course journal).
Teaching material
Books
- Standard MPI 2.2 Only those parts that we will specify during the lessons.
On the MPI forum web site you will find alternate formattings and some translations; version 2.2 of the MPI standard collects all the material from previous versions of the standard (1.0, 1.1, 2.0 and so on) within a single document. - B. Wilkinson, M. Allen Parallel Programming, 2nd edition. 2005, Prentice-Hall. This book will be also used; at least the 1st edition is available in the University Library of Math/Comp.Sc./Physiscs, under code C.1.2 w74 INF .
- Tutorial di utilizzo del compilatore Assist. Contattare il docente per la versione aggiornata a febbraio 2008. Vecchia versione:Tutorial ASSIST Febbraio 2007
Tutorial del server di esecuzione GEA, versione Novembre 2006.
Papers and reading material
Virtualization
- An Overview of Virtual Machine Architectures J. E. Smith and Ravi Nair
- The architecture of virtual machines J.E. Smith, Ravi Nair. IEEE Computer Vol. 38, Issue 5, 2005, Pages 32 - 38.
Data Mining Algorithms
- Dhillon & Modha Technical Report su K-means parallelo A Data-Clustering Algorithm On Distributed Memory Multiprocessors. I.S. Dhillon, D.S.Modha, LNAI 1759, pag 245. Nota: la versione disponibile online via LNCS riporta un algoritmo errato, il technical report è corretto.
- Ottimizzazioni sequenziali e parallele per K-means Large-Scale Parallel Data Clustering. Dan Judd, Philip K. Mckinley, Anil K. Jain. Ieee Transaction On Pattern Analysis And Machine Intelligence, Vo. 20, No. 8 August 1998.
Prerequisites
Final test
Final test: Project + short colloquium to be held during one of the exam sessions. Topic to be previously agreed with the teacher.
Individual projects are assigned to the students by the teacher. For difficult projects, 2 students, no more than that, can work on the same project. The projects can be assigned during the second half of the lesson period, or later on, during the academic year, when the student ask for it. Project can be experimental (coding + testing + written relation) and discussed with the teacher, or seminarial (relation and public talk about assigned papers) to be presented during one exam session. The same project cannot be discussed/presented twice unless substantial changes are made.
Assigned projects
Project | Person(s) | Status |
---|---|---|
Extension of a generic D&C skeleton support to deal with irregular problems | Anardu | |
Evaluation of parallel sorting algorithms on large data sets w.r.t. varying processor and core numbers | Luporini, Giangrandi, Desogus | |
Extension of a source to source compiler for high-level stencil-based parallel programs | Lottarini | Agreed, gathering documentation & writing proposal |
D&C parallelisation of tridiagonal matrix eigenvalue computation with a Macro-dataflow approach in MPI | Farruggia | First proposal accepted with some revisions |