Previous:
Acknowledgements
Up:
No Title
Next:
List of Figures
Contents
Acknowledgements
Contents
List of Figures
Introduction
The CC++ Programming Language
This Tutorial
Creating Parallel Threads of Control
Structured Parallel Blocks:
par
Introduction
Structuring
Sharing Data
Definition
paragraph2.5.1.3.0.2.html
Nesting
Pitfalls
Examples
Hello World
Finding a Minimum Element
Structured Parallel Loops:
parfor
Introduction
Sharing Data
Loop Unraveling
Pitfalls
Examples
Array Initialization
Scientific Mesh Computation
Unstructured Parallelism:
spawn
Introduction
Argument Copying
Unstructured Termination
Sharing Data
Pitfalls
Examples
Atomicity
Introduction
Controlled Nondeterminism
Deadlock
Inheritance
Pitfalls
Examples
Hello World
Finding the Minimum Element
Multiple-Reader Multiple-Writer Linked List
Synchronization
Introduction
Data Dependencies and Flow of Control
Single-Assignment Arguments and Return Values
Type Conversions
Synchronizing Spawned Functions
Memory Management
Pitfalls
Examples
All-Pairs Shortest Paths
Synchronizing Single-Reader Single-Writer Stream
Distributed Hello World
Introduction to Distributed Computing
Distributed Hello World
Global Pointers
Introduction
Dereferencing Global Pointers
Invoking Functions Through Global Pointers
Casting Global Pointers
Pitfalls
Examples
A Distributed List
Producer and Consumer
Processor Objects
Introduction
Declaring Processor Object Types
Defining Processor Object Types
Allocating Processor Objects
Using Processor Object Pointers
Deallocating Processor Objects
CC++ Computations
The ::this Pointer
Pitfalls
Examples
MergeSort
Data Transfer Functions
Introduction
Building Transfer Functions
Structures with Local Pointers
Automatic Transfer Function Generation
Pitfalls
Examples
Linked List
Linked List with global pointers
Tree
About this document ...