Changes

Jump to: navigation, search

GPU621/DPS921

904 bytes removed, 11:51, 13 January 2014
no edit summary
= Course Material =
== GPU621 /DPS921 - Parallel Algorithms and Programming Techniques ==<table>*Large data and compute-intensive problems benefit from parallel solutions.&nbsp; Modern hardware has parallel processing capabilities in varying degrees.&nbsp; 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]
*Modern GPU (Graphics Processing Unit) technology supports massively parallel computations, which complements the serial processing capabilities of CPU technology. This course teaches students how to read, write, and debug programs that use both CPU and GPU technology. Students learn to reorganize existing programs into serial code that runs on the CPU and parallel code that runs on the GPU. Students also study cases that have benefited from CPU+GPU programming.
* [https://scs.senecac.on.ca/course/GPU621 Course Outline]
</td>
<td>
[[Image:NV_CUDA_Teaching_Center_Small.jpg]]
</td>
</tr>
</table>
 
== DPS915 - Introduction to Parallel Programming ==
<table>
<tr valign=top>
<td>
 
*Modern GPU (Graphics Processing Unit) technology supports massively parallel computations, which complements the serial processing capabilities of CPU technology. This course teaches students how to read, write, and debug programs that use both CPU and GPU technology. Students learn to reorganize existing programs into serial code that runs on the CPU and parallel code that runs on the GPU. Students also study cases that have benefited from CPU+GPU programming and develop a CPU+GPU application for a client.
 
* [https://scs.senecac.on.ca/course/dps915 Course Outline]
</td>
<td>
[[Image:NV_CUDA_Teaching_Center_Small.jpg]]
</td>
</tr>
</table>
== 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 ==

Navigation menu