1 |
A parallel language provides an executable notation for implementing a parallel algorithm.
|
2 |
Design criteria:
-
How are parallel operations defined?
-
static tasks vs. dynamic tasks vs. implicit operations
-
How is data shared between tasks?
-
explicit communication/synchronization vs. shared memory
-
How is the language implemented?
-
low-overhead runtime systems vs. optimizing compilers
|
3 |
Usually a language reflects a particular style of expressing parallelism.
|
4 |
Data parallel expresses concept of identical algorithm on different parts of array
|
5 |
Message parallel expresses fact that at low level parallelism implies information is passed between different concurrently executing program parts
|