Changes

Jump to: navigation, search

GPU621/DPS921

1,119 bytes removed, 22:07, 9 September 2018
no edit summary
{{GPU621/DPS921 Index | 2014120187}}
Please help make this page resourceful for all GPU621/DPS921 students to use!
= 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://ict.senecacollege.ca/course/gpu621 GPU621 Course Outline]<td>* [https://ict.senecacollege.ca/course/dps921 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 =Instructor =<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~chris.jpgszalwinski Chris Szalwinski]]</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 ProfilePlatforms]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w2.html BLASFalse Sharing]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w3.html Device Query and SelectionPrefix Scan]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w4.html cuBLASConvolution]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w5.html ThrustThreading Building Blocks]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w6.html A Simple KernelVectorization]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w7.html ReductionFork Join]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w8.html Thread DivergenceData Decomposition]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w9.html Coalesced Memory AccessScatter Gather]*# [https://scs.senecac.on.ca/~gpu610gpu621/pages/workshops/w10.html CUDA to OpenCLOptimization]* Grading - The due date for each workshop is noted in [https://open.senecac.on.ca/cms/course/view.php?id=438 Moodle]MySeneca. The penalty for late submission is 5030% of the workshop mark. == Assignments ==# [https://scs.senecac.on.ca/~gpu610/pages/assignments/a1.html Select and Assess]# [https://scs.senecac.on.ca/~gpu610/pages/assignments/a2.html Parallelize]# [https://scs.senecac.on.ca/~gpu610/pages/assignments/a3.html Optimize]
== Evaluation ==
* Assignments and Presentation Project 20%* Workshops 30%* Workshops 20Tests without Final Exam 50%* Test 20Tests with Final Exam 35%* Final Exam 30(optional) 15%
= Resources =
* Current Software Support** [http:Matrix*** Cilk Plus - /usr/developerlocal/gcc/gcc-cilk/bin/g++ - version 4.nvidia9.com/cuda-downloads CUDA Toolkit]0 experimental** Get [https:* TBB - /usr/inside.senecacollege.calocal/itsgcc/software/indextbb - version 4.1 update 4 (20130613)** T2108*** Matrix Image (as above)*** CUDA 5.html 5 July 2013 - supports Visual Studio 2012 Ultimate] | Select Software Downloads | Go To Visual Studio 2012 Ultimate 1.49GB | Download iso | Burn, if error burn again | Finally, install 
<!--

Navigation menu