- Practical aspects of threads, the sequential “atoms” of parallel programs.
- Closed constructs to create parallelism.
- Possible bugs.
- The structure of the software environment that surrounds parallel programs.
- The extension of C scoping rules to support private variables and local memory accesses.
- The semantics of parallelism.
- The discrepancy between the limited number of physical processors and the much larger number of parallel threads used in a program.