Topic | Slides | Further Reading |
Introduction | pptx pdf | |
Migratable-Objects, Programming Model | pptx pdf | A short article about Charm |
Model Contd. + Basic Charm++ | ||
Task parallelism and grainsize | ||
Chare Arrays | Basic Chares Arrays | |
Structure Dagger(Message coordination) | LJdyanmics | |
Dynamic Load Balancing and PUP | ||
Static Assignment + Debugging Techniques | pptx | |
Load balancing, Basic Messages, LiveViz | LiveViz GreedyVsRefineLB |
|
Using Projections, and Charmdebug | Projections CharmDebug |
Projections Manual CharmDebug Manual |
Threaded Methods and blocking methods | pptx | |
Threads, futures, Cth calls, and explicit suspension | pptx | Threaded Methods |
Messages, Priorities, Groups and Nodegroups | pptx | Messages |
Array Sections | pptx | |
Shared Memory within a node: Basic Mechanisms, Conventions, Conditional Packing, Boom-arrays |
||
Shared Memory: Charm+OpenMP, CkLoop | ||
Adaptive MPI, MSA | ||
Writing your own load balancer | ||
State Space Search, Divide/Conquer apps, Seed balancer, Mixing data-parallel programs with task parallelism |
||
Writing your own load balancer | ||
Fault Tolerance | ||
Charisma, Charj | ||
Application Case studies: NAMD, ChaNGa | ||
Application Case studies: OpenAtom, CharmSimdemics Interoperability with MPI |