This chapter covers general topics in parallel performance but occasionally refers to API-specific issues.
1-1 - Predicting and Measuring Parallel Performance
1-2 - Loop Modifications to Enhance Data-Parallel Performance
1-3 - Granularity and Parallel Performance
1-4 - Load Balance and Parallel Performance
1-5 - Expose Parallelism by Avoiding or Removing Artificial Dependencies
1-6 - Using Tasks Instead of Threads
1-7 - Exploiting Data Parallelism in Ordered Data Streams
1-8 - Using AVX Without Writing AVX Code - New
The topics in this chapter discuss techniques to mitigate the negative impact of synchronization on performance.
2-1 - Managing Lock Contention- Large and Small Critical Sections
2-2 - Use Synchronization Routines Provided by the Threading API Rather than Hand-Coded Synchronization
2-3 - Choosing Appropriate Synchronization Primitives to Minimize Overhead
2-4 - Use Non-blocking Locks When Possible
Threads add another dimension to memory management that should not be ignored. This chapter covers memory issues that are unique to multithreaded applications.
Page viewed 359 times since Wed 26 Oct 2011, 21:41.