...
- Primitive constructs for task creation & termination, collective & point-to-point synchronization, task and data distribution, and data parallelism
- Abstract models of parallel computees computations and computation graphs
- Parallel algorithms and data structures including lists, strings, trees, graphs, matrices
- Common parallel programming patterns including task parallelism, undirected and directed synchronization, data parallelism, divide-and-conquer parallelism, map-reduce, concurrent event processing including graphical user interfaces.
...