CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love, , 4

advertisement
CIS4930/CDA5125: Parallel and
Distributed Systems
Instructor: Xin Yuan, 168 Love, xyuan@cs.fsu.edu, 4-9133
• Office hour: 1:00pm-2:00pm Monday/Wednesday, or by appointment
TA: Surjyendu Ray, 101MCH, surjray.ta@gmail.com,
• Office hour: 10:00am-12:00pm, Thursday
Course website:
http://www.cs.fsu.edu/~xyuan/cis4930-cda5125/index.html
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Course objectives
• Systematically introduce parallel and distributed systems (PDS)
and programming
• Expose contemporary PDS technologies
 Processors, networking, system software, and programming
paradigms
• Study the trends of technology advances in PDS.
• At the end of the course, the students are expected to
 Explain general concepts and important issues in parallel architectures,
programming, and algorithms.
 Understand the challenges in parallel and distributed computing
 Program with different programming paradigms for different
architectures.
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Topics covered
• Architecture
– Architecture classification
– SIMD, MIMD, shared memory (SMP, multicore, SMT, heterogeneous multi-core,
many-core), distributed memory (cluster, massively parallel, grid and cloud).
• Programming
– Vector programming (SSE), Thread, OpenMP, MPI, CUDA, and OpenCL
• Algorithm
– PRAM, BSP
• Advanced
– Power and others
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Textbok
• Required: none
• Reference books:
– D. E. Culler and J. P. Singh, "Parallel Computer Architecture, A
Hardware/Software Approach," Morgan Kaufmann, 1999.
– Maurice Herlihy and Nir Shavit, "The Art of Multiprocessor Programming,"
Morgan Kaufmann, 2008.
• A significant portion of the course materials come
from online resources.
–
–
–
–
MPI: http://www-unix.mcs.anl.gov/mpi/
OpenMP: http://www.openmp.org
CUDA: NVIDIA CUDA Programming Guide
OpenCL: OpenCL Programming Guide for the CUDA Architecture
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Course schedule (tentative)
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Week 1: Introduction and architectures classification
Week 2: Performance
Week 3: SIMD/Vector architectures, SSE and SIMD intrinsics
Week 4: Shared memory architectures
Week 5: Shared memory programming, thread
Week 6: Shared memory programming, OpenMP
Week 7: MIMD, distributed memory architectures, MPI
Week 8: communication hardware and Interconnection networks
Week 9: Stream architectures, CUDA/OpenCL
Week 10: CUDA/OpenCL
Week 11: CUDA/OpenCL
Week 12: Performance monitoring and Optimization
Week 13: PRAM and BSP
Week 14: Advanced topics
Week 15: Project presentations
Week 16: Final exam
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Prerequisite
• COP 4610: Operating systems
– No requirement for background knowledge of
parallel and distributed computing
– The class is designed to minimized the
dependence on COP4610.
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Grading
• 25 % - homework, programming assignment, class participation.
– Homework includes paper critics
– Programming assignments can be done by groups of two.
• 25% - course project
– Research or development
– Groups of two
– End product: report, software, and presentation.
• 20% - Midterm
• 30% - Final
• Final target letter grade: half A’s and half B’s.
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Course project
• Development projects
– Parallelizing a fairly significant application (preferably some well known
efficient sequential code).
• Evaluation projects
– E.g. Evaluating SSE performance on different processors, evaluate
different synchronization algorithms on one or more processors
• Research projects
– Survey an emerging area (e.g. techniques to improve power efficiency in
multi-core machines, emerging programming models for multi-core
systems).
– Develop new techniques in any area of PDS (e.g. new communication
algorithms, new synchronization algorithms, new scheduling schemes,
etc)
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Course policies
• Attendance: required.
• Late assignments: not accepted without a valid
excuse.
• Missed exam: following the university rules.
– Let me know when you need to miss an exam ASAP.
• Incomplete grade:
– Miss the final with an accepted excuse
– Due to extraordinary circumstances with appropriate
documentation.
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
• Academic Integrity
– No copying from anywhere
– Don’t ask others for solutions and don’t give
solutions to others.
• Violation
– The university requires all violations to be
reported.
– First violation with level 1 agreement:
• 0 for the particular assignment/exam and the lowering of
one letter (A->B) for course final grade.
– Second violation: resolved through the office of the
Dean and the Faculties
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
• Accommodation for Disabilities
1.Register with and provide documentation to the
Student Disability Resource Center (SDRC).
2.Bring a letter to me from the SDRC `indicating you
need academic accomodations. This should be done
within the first week of class
CIS4930/CDA5125 Parallel and Distributed Systems
Florida State University
Download