Difference between revisions of "GPU621/DPS921"

From CDOT Wiki
Jump to: navigation, search
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{GPU621/DPS921 Index | 20141}}
+
{{GPU621/DPS921 Index | 20187}}
  
 
Please help make this page resourceful for all GPU621/DPS921 students to use!
 
Please help make this page resourceful for all GPU621/DPS921 students to use!
Line 7: Line 7:
 
== GPU621/DPS921 - Parallel Algorithms and Programming Techniques ==
 
== GPU621/DPS921 - Parallel Algorithms and Programming Techniques ==
 
*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.
 
*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.
* [https://secure.senecac.on.ca/ssos/findWithoutSemester/GPU6921/SICT GPU621 Course Outline]
+
* [https://ict.senecacollege.ca/course/gpu621 GPU621 Course Outline]
* [https://secure.senecac.on.ca/ssos/findWithoutSemester/DPS921/SICT DPS921 Course Outline]
+
* [https://ict.senecacollege.ca/course/dps921 DPS921 Course Outline]
  
 +
== Instructor ==
 +
* [https://scs.senecac.on.ca/~chris.szalwinski Chris Szalwinski]
  
 
== External Links ==
 
== External Links ==
Line 18: Line 20:
 
* 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].
 
* 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
 
* Detail Specifications
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w1.html Programming Models]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w1.html Platforms]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w2.html Debugging]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w2.html False Sharing]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w3.html Map-Reduce]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w3.html Prefix Scan]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w4.html Map-Scan]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w4.html Convolution]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w5.html Convolution]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w5.html Threading Building Blocks]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w6.html Fork-Join]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w6.html Vectorization]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w7.html Pipeline]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w7.html Fork Join]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w8.html Bin]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w8.html Data Decomposition]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w9.html MPI]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w9.html Scatter Gather]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w10.html Fortran]
+
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w10.html Optimization]
*# [https://scs.senecac.on.ca/~gpu621/pages/workshops/w11.html Matlab]
+
* Grading - The due date for each workshop is noted in MySeneca.  The penalty for late submission is 30% of the workshop mark.
* 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/~gpu621/pages/assignments/a1.html Prefix Sum Analysis]
 
# [https://scs.senecac.on.ca/~gpu621/pages/assignments/a2.html MPI Project]
 
  
 
== Evaluation ==
 
== Evaluation ==
  
* Assignments and Presentation 30%
+
* Project 20%
* Workshops 20%
+
* Workshops 30%
* Test 20%
+
* Tests without Final Exam 50%
* Exam 30%
+
* Tests with Final Exam 35%
 +
* Final Exam (optional) 15%
  
 
= Resources =
 
= Resources =
* Software Support
+
* Current Software Support
** [http://developer.nvidia.com/cuda-downloads CUDA Toolkit]
+
** Matrix
** Get [https://inside.senecacollege.ca/its/software/index.html Visual Studio 2012 Ultimate] | Select Software Downloads | Go To Visual Studio 2012 Ultimate 1.49GB | Download iso | Burn, if error burn again | Finally, install
+
*** Cilk Plus - /usr/local/gcc/gcc-cilk/bin/g++ - version 4.9.0 experimental
 +
*** TBB - /usr/local/gcc/tbb - version 4.1 update 4 (20130613)
 +
** T2108
 +
*** Matrix Image (as above)
 +
*** CUDA 5.5 July 2013 - supports Visual Studio 2012
 +
 
  
 
<!--
 
<!--

Revision as of 22:07, 9 September 2018


GPU621/DPS921 | Participants | Groups and Projects | Resources | Glossary

Please help make this page resourceful for all GPU621/DPS921 students to use!

Course Material

GPU621/DPS921 - Parallel Algorithms and Programming Techniques

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

Instructor

External Links

Workshops

Evaluation

  • Project 20%
  • Workshops 30%
  • Tests without Final Exam 50%
  • Tests with Final Exam 35%
  • Final Exam (optional) 15%

Resources

  • Current Software Support
    • Matrix
      • Cilk Plus - /usr/local/gcc/gcc-cilk/bin/g++ - version 4.9.0 experimental
      • TBB - /usr/local/gcc/tbb - version 4.1 update 4 (20130613)
    • T2108
      • Matrix Image (as above)
      • CUDA 5.5 July 2013 - supports Visual Studio 2012