Other Impediments to Scalability
- the time to complete a parallel execution of a code segment is determined by the longest running thread
- unequal work load distribution leads to some processors being idle, while others work too much
with coarse grain parallelization, more opportunities for load
Too many synchronization points
- compiler will put synchronization points at the start and exit of each parallel region
- if too many small loops have been made parallel, synchronization overhead will compromise scalability.