CS 475 / 575 -- Parallel Programming Handouts

Spring Quarter 2020

http://cs.oregonstate.edu/~mjb/cs575/handouts.html


This page was last updated: May 20, 2020


Handouts

The notes in this top list have been recently updated and finalized. Go ahead and use them!

  1. Course Introduction for Ecampus Students 1pp, 2pp, 4pp, 6pp
  2. Course Introduction for On-campus Students 1pp, 2pp, 4pp, 6pp
  3. Project Notes 1pp, 2pp, 4pp 6pp
  4. Windows Powershell Scripting 1pp, 2pp, 4pp 6pp
  5. Simple OpenMP 1pp, 2pp, 4pp 6pp
  6. Parallel Programming: Background Information 1pp, 2pp, 4pp 6pp
  7. OpenMP 1pp, 2pp, 4pp 6pp
  8. OpenMP 4.0 Quick Reference Card: http://openmp.org/mp-documents/OpenMP-4.0-C.pdf
  9. Trapezoid Intergration with OpenMP 1pp, 2pp, 4pp 6pp
  10. Speedups and Amdahl's Law 1pp, 2pp, 4pp 6pp
  11. Moore's Law and Multicore: 1pp, 2pp, 4pp 6pp
  12. Hyperthreading and "Almost Amdahl" 1pp, 2pp, 4pp 6pp
  13. Tree Traversal using Tasks 1pp, 2pp, 4pp 6pp
  14. Caching Issues in Multicore Performance 1pp, 2pp, 4pp 6pp
  15. Functional Decomposition 1pp, 2pp, 4pp 6pp
  16. Data Decomposition 1pp, 2pp, 4pp 6pp
  17. SIMD Vector Parallel Programming 1pp, 2pp, 4pp 6pp
  18. Prefetching 1pp, 2pp, 4pp 6pp
  19. GPU 101 1pp, 2pp, 4pp 6pp
  20. CUDA 1pp, 2pp, 4pp 6pp
  21. CUDA Quick Reference Card PDF
  22. DGX System 1pp, 2pp, 4pp 6pp
  23. CUDA Array Multiplication 1pp, 2pp, 4pp 6pp
  24. CUDA ArrayMult .cu program arrayMul.cu
  25. CUDA Linux Makefile (works on the DGX systems) Makefile
  26. CUDA ArrayMult Visual Studio Solution Folder NewCudaArrayMul2019.zip
  27. Just the CUDA part of the array multiplication code JustTheCuda.txt
  28. Just the CUDA part of the array multiplication + reduction code JustTheReduceCuda.txt
  29. CUDA Matrix Multiplication 1pp, 2pp, 4pp 6pp
  30. OpenCL 1pp, 2pp, 4pp 6pp
  31. first.cpp C++ source
  32. first.cl OpenCL source
  33. OpenCL 2.0 Quick Reference Card: PDF.
  34. OpenCL Events 1pp, 2pp, 4pp 6pp
  35. OpenCL Reduction 1pp, 2pp, 4pp 6pp
  36. Looking At OpenCL Assembly language 1pp, 2pp, 4pp 6pp
  37. OpenCL / OpenGL Vertex Buffer Interoperability 1pp, 2pp, 4pp 6pp
  38. Message Passing Interface 1pp, 2pp, 4pp 6pp
  39. Finding More Information on Parallel Programming PDF
  40. Using Kaltura to record turn-in videos for class assignments. 1pp, 2pp, 4pp 6pp


Other Notes You Might Enjoy!

University Classes
Introduction to Computer Graphics
Computer Graphics Shaders
Scientific Visualization
CS Skills for Simulation and Game Programming
Vulkan

Grades 4-12 Outreach
Scratch
SketchUp
Blender
TinkerCad
Processing