Computer systems with multicore processors can increase performance by running applications in parallel, thus increasing the throughput that the computer system is able to attain. However, contention for caches, memory controllers, and interconnections may hinder performance and create deadlocks for resources. Read the paper “ Managing Contention for Shared Resources on Multicore Processors”, located in Week 8 of the online course shell. This case study proposes using contention-aware scheduling algorithms to alleviate the contention problems.
– Examine the authors’ findings. (The authors ran three (3) applications (Soplex, Sphinx, and Namd) to test memory contention problems when different pairings of these applications were used.) The current and future trend is to increase processing performance by using multicore systems.
– Analyze the schedule that the authors used to test the applications using a distributed architecture. Identify which schedule they believed was the best.
– Evaluate the authors’ findings with regard to cache contention. Explain what causes contention for the cache.
– Analyze the contention avoidance methods proposed by the authors for the cache, memory controller, front-side bus (FSB), and prefetching hardware in the distributed architecture.