Difference between revisions of "GPU610/DPS915"

From CDOT Wiki
Jump to: navigation, search
(The Project)
Line 19: Line 19:
 
* [https://cs.senecac.on.ca/~gpu610/pages/timeline.html Course Web Site – Timeline]
 
* [https://cs.senecac.on.ca/~gpu610/pages/timeline.html Course Web Site – Timeline]
 
* [svn://zenit.senecac.on.ca/dpsgpu/trunk Class Samples]
 
* [svn://zenit.senecac.on.ca/dpsgpu/trunk Class Samples]
 +
 +
== The 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=342 Moodle].
 +
* Detail Specifications
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w1.html Initial Assessment]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w2.html Linear Algebra using BLAS]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w3.html Device Query and Selection]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w4.html A Simple Device Operation]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w5.html Dot Product]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w6.html Matrix Product]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w7.html Matrix Product using Thrust]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w8.html Matrix Product using cuBlas]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w9.html Matrix Product using Streams]
 +
*# [https://scs.senecac.on.ca/~gpu610/pages/workshops/w10.html CUDA to OpenCL]
 +
  
 
== The Project  ==
 
== The Project  ==

Revision as of 11:36, 31 August 2012


GPU610/DPS915 | Student List | Group and Project Index | Student Resources | Glossary

Please help make this page resourceful for all GPU610/DPS915 students to use!

Course Descriptions

GPU610 - Parallel Programming Fundamentals

  • 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.
  • Course Outline

DPS915 - Introduction to Parallel Programming

  • 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.

Common Material

External Links

The Workshops


The Project

  • The course project is a three-stage, team assignment. Each team consists of 3 members. In the first stage your team evaluates 6 applications and selects 3 for continued work. The evaluation includes profiling to identify the hot spots in each application. Each team member is responsible for 2 of the candidate applications. The second stage refactors the applications to use the GPU, including shared memory. The third and final stage optimizes the performance. Each team presents the results of its work during the final week of the semester.
  • Detail Specifications
    1. Selection and Assessment
    2. GPU Programming
    3. Optimization
  • Grading

The penalty for late submission is 30% of the assignment mark. The penalty for resubmission, in the event that the original submission was not workable is 50%. The due dates are posted in Moodle. All submissions are to be made through Moodle

NV CUDA Teaching Center Small.jpg

Evaluation

  • Assignment 30%
  • Workshops 20%
  • Test 20%
  • Exam 30%

Final Submission Requirements

  • Under construction

Resources

Archives