CSE4163: Parallel Algorithm Analysis & Design, Spring 2020
Course moving to online instruction. We will still also use this web site to deliver some material so check both here and on canvas.
- Instructor: Ed Luke
- Office: Butler 330 (or HPCC Building, Office 220)
- Office Hours: 9:00am-10:30am T Th (Or by appointment)
- Meeting Place: Bowen 160
- Meeting Time: 2:00pm-3:15pm T TH
- Web Site: http://web.cse.msstate.edu/~luke/Courses/sp20/CSE4163
- Instructor E-Mail: luke@cse.msstate.edu
- Course Topics:
- Parallel Programming and Performance Models
- Amdahl's Law
- PRAM (CREW and EREW)
- Network Models (Hypercube, Mesh, Fat Trees, Crossbar, Ring)
- Bulk Models (LogP and BSP)
- Parallel Programming Patterns
- Bag of Tasks
- Data Parallel
- Reduction (global and local)
- Pipelining
- Divide and Conquer
- Scalability Metrics
- Isoefficiency
- Cost Optimality
- Optimal Effectiveness
- Parallel Programming Algorithms
- Matrix Operations
- Sorting
- Sorting Networks
- Bubble Sort and variants
- Quicksort
- Bucket Sort
- Radix Sort
- Convex Hull
- Required Text: Introduction to Parallel Computing: Second Edition by Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar
- Text and References
- Class Notes
- Grading:
-
Classroom Participation: 3%
- Theoretical Assignments: 7%
Each missed theoretical assignment will drop 1 point.
- Programming Projects : 30%
- First Project: Search for Intelligent Puzzles (SIP) [ project1.tar] Due Tuesday, March 3rd, turn in report in class, email source code before class.
- Second Project: Parallel Communication Primitives [ project2.tar ] Due Thursday, April 9th, turn in report in class, email source code before class.
- Project Report:
This is a research project, not just a programming assignment. I
expect to receive, in addition to any program source developed, a
comprehensive report that documents:
- Background Material Researched in Support of the Project
- Techniques and Methods used in the Report
- Results presented in sufficient detail that the results are reproduce-able from the description
- Analysis: What are the lessons learned. What general principles can be observed from the results.
- ALL NON-ORIGINAL work must be cited!
- No mercy will be given to students that submit plagiarized
material. Any student that submits the work of others represented as
their own will face disciplinary sanctions!
- 2 Partial Exams: 40% (Final exam substitutes lowest test grade)
- First Partial Exam: Covers Parallel Architectures, Programming Models, MPI, and BSP communication algorithms [ Get Outline ] Tuesday, February 18th
- Second Partial Exam: Covers Parallel Communication Algorthms and Performance and Scalability [ Get Outline], Tuesday, April 7th, Take home exam, 24hrs
- Comprehensive Final Exam: 20%
- COMPREHENSIVE FINAL:
-
Final Examination: [ Get Outline ], April 27th (Monday) 3:00pm-6:00pm
-
Programming Project Grading Policy:
-
Difficulty: Undergraduates get a break ! Easier options/algorithms.
-
Individual Efforts: Team participation is not encouraged, unless otherwise stated.
-
Submission: E-mail attachments sent to instructor
-
Submit all source and include files and makefiles
-
Do not submit binaries PLEASE !!!. Repeat offenders will face penalties.
-
Partial credit given to non-functional programs
- MSU Honor Code :
- The University Wide Honor Code Policy is a must-read for all students:
Upon accepting admission to Mississippi State University, a student immediately assumes a commitment to uphold the Honor Code, to accept responsibility for learning, and to follow the philosophy and rules of the Honor Code. Students will be required to state their commitment on examinations, research papers, and other academic work. Ignorance of the rules does not exclude any member of the MSU community from the requirements of the processes of the Honor Code. For more information visit the above link.
luke@cse.msstate.edu