154
edits
Changes
no edit summary
= Course Material =
== GPU621 /DPS921 - Parallel Algorithms and Programming Techniques ==<table>*Large data and compute-intensive problems benefit from parallel solutions. Modern hardware has parallel processing capabilities in varying degrees. Students study a set of industry-standard parallel patterns and learn how to implement parallel algorithms on multi-processor accelerators, shared memory systems and distributed systems using a range of programming models.<tr valign=top>* [https://secure.senecac.on.ca/ssos/findWithoutSemester/GPU6921/SICT GPU621 Course Outline]<td>* [https://secure.senecac.on.ca/ssos/findWithoutSemester/DPS921/SICT DPS921 Course Outline]
== External Links ==
* [https://scs.senecac.on.ca/~gpu610gpu621/pages/content/index.html Course Web Site – Lecture Notes]* [https://cs.senecac.on.ca/~gpu610gpu621/pages/timeline.html Course Web Site – Timeline]<!--* [svn://zenit.senecac.on.ca/dpsgpu/trunk Class Samples]-->
== Workshops ==
* The workshops provide timely opportunities to implement some of the material covered during the lectures. Each workshop is graded and all submissions are through [https://open.senecac.on.ca/cms/course/view.php?id=438 Moodle].
* Detail Specifications
*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w1.html Initial ProfileProgramming Models]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w2.html BLASDebugging]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w3.html Device Query and SelectionMap-Reduce]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w4.html cuBLASMap-Scan]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w5.html ThrustConvolution]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w6.html A Simple KernelFork-Join]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w7.html ReductionPipeline]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w8.html Thread DivergenceBin]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w9.html Coalesced Memory AccessMPI]*# [https://scs.senecac.on.ca/~gpu610GPU621/pages/workshops/w10.html CUDA to OpenCLFortran]*# [https://scs.senecac.on.ca/~GPU621/pages/workshops/w11.html Matlab]
* Grading - The due date for each workshop is noted in [https://open.senecac.on.ca/cms/course/view.php?id=438 Moodle]. The penalty for late submission is 50% of the workshop mark.
== Assignments ==
# [https://scs.senecac.on.ca/~gpu610GPU621/pages/assignments/a1.html Select and AssessPrefix Sum Analysis]# [https://scs.senecac.on.ca/~gpu610GPU621/pages/assignments/a2.html Parallelize]# [https://scs.senecac.on.ca/~gpu610/pages/assignments/a3.html OptimizeMPI Project]
== Evaluation ==