December 2002
Intermediate to advanced
288 pages
9h 46m
English
Design parallelism into the application wherever possible. Identify what cannot be parallelized. Watch out for too much parallelism. There are diminishing returns from parallelism overheads.
Balance workloads. Unbalanced parallel activities can limit the performance of the system.
Split up the data among many different files (preferably on separate disks).
Support asynchronous communications.
Decouple activities so that no activity is unnecessarily blocked by another activity.
Minimize points where parallel activities are forced to converge.