=====Journal of Lessons, SPD year 2009-2010==== ====Journal==== * 23/02/2010 ** Introduction to the course** --- Aim and purpose, program, structure, rules and kind of final tests. * 24/02/2010 ** Grid computing, (I) ** --- Large-scale problems in research and prodution environments. How to approach these problems. Preliminary definitions: resources, protocols, services, APIs and SDKs. A simple example: web services and their protocols. * 26/02/2010 ** Grid Computing, (II) ** --- Virtual Organizations. The Grid vision and its requirements. The Grid architecture: fabric, connectivity, resource, collective and application layers. Using the Grid: scenarios and examples. Open Grid Service Architecture and its capabilities. The eight fallacies of Grid computing. * 02/03/2010 ** Message Passing Interface, Part 1 ** --- The MPI standard, brief history and purpose. Message Passing programming and portability, functional and performance portability. The library approach of MPI. MPI basic concepts: communicators, point to point primitives, collective primitives, datatypes; communication semantics in MPI: envelopes, local/global completion, (non)blocking operations, communication modes. Opaque Objects. Primitive datatypes. * 03/03/2010 ** MPI, Part 2 ** * 05/03/2010 ** MPI, Part 3 ** * 09/03/2010 ** Grid Computing (III) ** --- The Globus Project; Public Key Infrastructure (concepts). Grid Security Infrastructure. Certificates. Single Sign On and Delegation. * 10/03/2010 ** Grid Computing (IV) ** --- Grid Information Services. Lightweight Directory Access Protocol (concepts). Monitoring and Discovery Service. IP, GRIS and GIIS. Grid Information Models: MDS-2 and GLUE schemata * 12/03/2010 ** MPI, Part 4 ** * 16/03/2010 ** Virtualization technology (I) ** --- Basics of virtualization at the program language, operating system and machine level. Quick survey of Pascal P-code, Java bytecode and .Net CLI. Hardware virtualization by emulation. //Read papers by J.E.Smith listed in the course bibliography// * 17/03/2010 ** Virtualization technology (II), MPI lab ** --- Quick tour of full-system virtualization: hosted and bare-metal hypervisors; protection rings in the x86 architecture; virtualization and paravirtualization, hardware-assisted virtualization; containers and hosted virtualization. Elementary programs in MPI. * 19/03/2010 ** Grid Computing (V) ** --- HPC Resource Management; Grid Resource Management; Gatekeeper and Job Manager; Data Management; GASS and GridFTP; Replica Catalog and Replica Management Services * 23/03/2010 ** Map & reduce: the programming model ** --- Problem characterization; Map Fold in LISP; Programming model: mappers and reducers; Programming model: partitioners and combiners; Example and data flow * 24/03/2010 ** Distributed File Systems: GFS and HDFS ** --- Problem characterization; Blocks, Name nodes and Data Nodes; Master/server architecture; Master Server (namenode), Chunk Servers (datanode) protocols and responsabilities; Anatomy of a read; Anatomy of a write; Benchmarks * 26/03/2010 ** Hadoop Lab ** --- Hadoop installation and setup; Single mode and pseudodistributed mode configuration; Grep application * //Electoral break, Easter break// * 09/04/2010 ** MPI Lab ** * 13/04/2010 ** Hadoop Lab ** --- Word Count application, versions with both old and new Hadoop APIs; API usage; using a large number of files * 14/04/2010 * 16/04/2010 ** MPI Lab ** --- Simple examples: buffer ping pong, square and triangular matrices with transpose on send/receive. * 20/04/2010 ** Application Examples ** Mandelbrot; brief survey of KDD and Data Mining; the K-means algorithm * 21/04/2010 ** K-means + MPI Lab ** * 23/04/2010 ** MPI Lab ** * 27/04/2010 **XtreemOS part I** * 28/04/2010 * 30/04/2010 * 04/05/2010 //(see the CPA course page)// * 05/05/2010 //(see the CPA course page)// * 07/05/2010 //(see the CPA course page)// * 11/05/2010 //(see the CPA course page)// * 12/05/2010 //(see the CPA course page)// * 14/05/2010 ** The ASSIST environment, part I** --- relationship with other skeleton-based parallel programming tools; basic concepts, flexible-skeletons, multi-language support and heterogeneous platforms; sequential code encapsulation, stream-oriented communication, generic graphs, the parmod as an abstract "wildcard" skeleton * 18/05/2010 ** The ASSIST environment, part II** --- parmod semantics and usage rationale; structure and semantic options available to the programmer: input and output section, virtual processes, distribution, collection; mapping of VPs over concrete architectures. * 19/05/2010 ** The ASSIST environment, part III** --- support of heterogeneity and dynamic adaptivity at run-time; structure and performance contract directed deployment. * 21/05/2010 Presentation of project proposals ====Slides and Notes==== ^ Date ^ Slides ^ Student notes ^ Other information | | Tu 23/02 | {{:magistraleinformaticanetworking:spd:spd09-intro.pdf|Introductory Slides}} | | | | We 24/02, Fri 25/02 | {{:magistraleinformaticanetworking:cpa:grid.pdf|Slides on Grids}} | {{:magistraleinformaticanetworking:cpa:grid_notes.pdf|Student Notes on Grids}} | | | Tu 02/03, We 03/03 | {{:magistraleinformaticanetworking:spd:mpi-lesson1.pdf|MPI, lesson 1 slides}} | {{:magistraleinformaticanetworking:spd:studentnotes_mpi_1_rev1.pdf|Student Notes on MPI part 1}} | | | Tu 09/03, We 10/3, Fr 19/3 | {{:magistraleinformaticanetworking:cpa:globus.pdf|Globus-Slides}} | {{:magistraleinformaticanetworking:cpa:globus_notes.pdf|Student Notes on Globus}} | | | Fr 05/03, Fr 12/03 | | {{:magistraleinformaticanetworking:spd:studentnotes_mpi_note.pdf|Student Notes on MPI}} | | | Tu 16/03 | | {{:magistraleinformaticanetworking:spd:studentnotes_virtualization1.pdf| Student Notes on Virtualization}} | | | We 17/03 | {{:magistraleinformaticanetworking:spd:virtual_lesson2_mpi-practical-1.pdf|Virt2-Slides}} | | The slides include exercises for the MPI Lab session | | Tu 23/03 | {{:magistraleinformaticanetworking:cpa:mapreduce.pdf|Map&Reduce Slides}} | {{:magistraleinformaticanetworking:cpa:mapreduce_hdfs_notes.pdf|Student Notes}} | | | We 24/03 | {{:magistraleinformaticanetworking:cpa:dfs.pdf|Slides}} | {{:magistraleinformaticanetworking:cpa:mapreduce_hdfs_notes.pdf|Student Notes}} | | | Fr 26/03 | ** Hadoop Lab ** | {{:magistraleinformaticanetworking:cpa:note_1.pdf|Notes}} | {{:magistraleinformaticanetworking:cpa:data.zip|Data}} | | Tu 13/04 | ** Hadoop Lab ** | {{:magistraleinformaticanetworking:cpa:note_2.pdf|Notes}} | {{:magistraleinformaticanetworking:cpa:snippets.zip|snippets Data}} | | We 14/04 | | | | | Fr 16/04 | | | | | Tu 20/04 | | {{:magistraleinformaticanetworking:spd:studentnotes_lessonmandelbrot.pdf|Notes}} | | | We 21/04 | {{:magistraleinformaticanetworking:spd:mpi-practical-2.pdf|MPI Lab slides}} | | | | Fr 23/04 | | | | | | XtreemOS introduction slides | | | | Fr 14/05 | {{:magistraleinformaticanetworking:spd:assist-2010.part1.pdf|Slides about ASSIST, part I}} | {{:magistraleinformaticanetworking:spd:assist_2010_lesson1_notes_v1.pdf|Note lezione 1}}|[[magistraleinformaticanetworking:spd:ASSISTexamples|Assist coding examples]] | | Tu 18/05 | {{:magistraleinformaticanetworking:spd:assist-v2010.part2.pdf|Slides about ASSIST, part II}} | | | | We 19/05 | {{:magistraleinformaticanetworking:spd:assist-2010.part3.pdf|Slides about ASSIST, part III}} {{:magistraleinformaticanetworking:spd:assist-2010-marcod.part3b.pdf|Slides on ASSIST, part III B}} | | |