|
Office Hours: Wednesdays from 10am-12pm and by appointment Office: ENB 334 Email: anda at cse TAs: Colin Arnold and Josh Finnis |
Announcements:
|
| syllabus | schedule | notes |
projects |
This course introduces the basics of parallel and distributed computing with an experimental focus on online social network analysis. The analysis of online social networks has been chosen as the target class of applications for applying the knowledge introduced in lectures because of several factors: it is an active research topic in computer science; the scale challenges of very large social networks require parallel computing approaches; and parallelizing graph algorithms is not trivial.
The course is
project-oriented.
Class time will be spent on a combination of lectures on topics in
parallel
programming and models, in-class discussions of research papers,
mini-lectures
on Social Network Analysis (SNA), brainstorming sessions on
parallelizing some
SNA-relevant algorithms, and interdisciplinary team project meetings. There are no tests. Final evaluation will be
based on class participation (20%), programming projects (40%), and
final
project and presentation (40%). Lectures, readings and class
discussions will
introduce the design of parallel programs, performance metrics,
distributed
systems architectures, time and global state, coordination and
agreement,
distributed transactions and web services. Programming projects will
introduce
the practice of parallel and distributed programming with threads, MPI,
Google’s MapReduce framework, and Amazon Web Services. The final
project will
be an interdisciplinary team project that involves graduate students
enrolled
in the Social Network Analysis course
(SYA 6933.904) taught by Professor Skvoretz from the Department of
Sociology.
The course is intended for advanced undergraduate students and graduate students in CSE.
| Week |
Topics |
Notes | Reading |
Scribes
(S) Discussion Leaders (LD) |
|---|---|---|---|---|
| 1 (01/10) |
Introduction |
|||
| 2
(01/17) |
Holiday | |||
| 3 (01/24) |
Parallel Architectures: Flyn
Taxonomy Reasoning about Performance |
Top500 highlights [ppt] [pdf] |
S: Clayton and Nick [notes] |
|
| 4 (01/31) |
Dependences, Granularity,
Locality. Performance metrics. |
Implementing and evaluating multithreaded triad census algorithms on the Cray XMT. George Chin, Andres Marquez, Sutanay Choudhury, and Kristyn Maschhoff. In Proceedings of the 2009 IEEE International Symposium on Parallel &Distributed Processing (IPDPS '09) | S: Ramanuja and Josh Ki [notes] DL: Josh Ku and Anda |
|
| 5 (02/07) |
Meeting with the SNA class. Basics
of SNAs; basics of parallel computation;
reading discussions; final project rules and ideas. |
Motivation [ppt] Final projects [ppt] |
Measuring social dynamics in a
massive
multiplayer online game. HMichael SzellH, HStefan
ThurnerH. Social Networks, Vol. 32, No. 4.
(October 2010), pp. 313-329. Optional: Structure and tie strengths in mobile communication networks. HJ. P. OnnelaH, HJ. SaramäkiH, HJ. HyvönenH, HG. SzabóH, HD. LazerH, HK. KaskiH, HJ. KertészH, HA. L. BarabásiH. Proceedings of the National Academy of Sciences, Vol. 104, No. 18. (1 May 2007), pp. 7332-7336. |
|
| 6 (02/14) |
Basics of MPI . In-class work. |
Intro to MPI [ppt] Get started with circe [pdf] |
||
| 7 (02/21) |
Introduction to distributed
systems |
Unstructured P2P Systems [ppt] Botnets definition [ppt] |
|
Robert: [notes] |
| 8 (02/28) |
MapReduce and its use. |
Could computing overview |
BotGraph: Large Scale Spamming Botnet Detection. Yao Zhao, Yinglian Xie, Fang Yu, Qifa Ke, and Yuan Yu, Yan Chen, Eliot Gillum (.mp3 conference presentation), NSDI 2009. MapReduce: Simplified Data Processing on Large Clusters, Jeffrey Dean and Sanjay Ghemawat, OSDI 2004. [slides] |
Nick |
| 9 (03/07) |
Hadoop on the USF Reseach
Cluster (presentation by Josh Finnis) |
Hadoop [ppt] |
||
| 10 (03/14) |
Spring Break |
|||
| 11 (03/21) |
Cloud and Grid Computing |
[ppt] |
Graph
Twiddling in a
MapReduce World, Jonathan Cohen, Computing in Science and
Engineering, July/August 2009 (vol. 11 no. 4, pp.
29-41) A View of Cloud Computing, Michael Armbrust, Armando Fox, Rean Griffith, Anthony D. Joseph, Randy Katz, Andy Konwinski, Gunho Lee, David Patterson, Ariel Rabkin, Ion Stoica, Matei Zaharia, Communications of the ACM Vol. 53 No. 4, Pages 50-58 |
|
| 12 (03/28) |
Distributed Hash Tables |
[ppt] |
||
| 13 (04/04) |
Distributed Coordination-based
Systems |
|||
| 14 (04/11) |
Time to work on final projects (no class) |
|||
| 15 (04/18) |
||||
| 16 (04/25) |
Final project presentations. |
|||