Resources
This page contains links to third-party resources that you may find helpful. If you have suggestions for other resources that your fellow students may find helpful, please let me know.
Cluster Use
- JMU cluster reference
- Slurm: Tutorials | Quickstart | QuickRef | srun | sbatch | squeue | scancel
Tutorials and References
- CS 261 coding standards
- CS 261 C function quick reference
- Code review guidelines and rubric
- VS Code + stu Tutorial
- VS Code + CS 261 Tutorial (also relevant for CS 470)
- Performance analysis: Scaling tutorial
- Pthreads: LLNL tutorial | Randu.org tutorial | API standard
- OpenMP: LLNL tutorial | QuickRef | API standard
- MPI: LLNL tutorial | QuickRef | API standard
- CUDA: Intro blog posts: 1 2 | Longer tutorial | Docs | QuickRef
- Git: QuickRef | Tutorial | Visual Cheatsheet
- Perf: Cheadsheet | Examples
Online Textbooks & References
- An Introduction to Parallel Programming by Peter Pacheco and Matthew Malensek
This is our course textbook, available through JMU Libraries and Elsevier ScienceDirect (access from campus or sign in using your institution)
- Introduction to Parallel Computing by Blaise Barney (LLNL)
- Designing and Building Parallel Programs by Ian Foster
- Programming on Parallel Machines by Norm Matloff (PDF)
- The System Design Primer by Donne Martin
- Youtube video playlist
Technical Writing References
- JMU Writing Center
- GitLab Style Guide
- Utah State Technical Writing Standards
- Draft.dev Technical Style Guide
- ANL Guide to Effective Poster Design
Fun & Games
- The Deadlock Empire - Concurrency puzzle game