Computer Science Colloquia
Thursday, February 17, 2011
Advisor: Mary Lou Soffa; Jack Davidson; Kamin Whitehouse; Joanne Bechta Dugan
Chair: Westley Weimer
Olsson 228E, 15:30:00
A Ph.D. Proposal
Compiling to Mitigate Contention for QoS
To fully utilize current multicore processors, colocation of multiple applications on the same platform is necessary. However, contention for shared memory resources among colocated applications on a multicore can cause a great amount of performance degradation. The performance degradation poses a significant challenge for achieving an application’s quality of service (QoS) goal on multicore platforms. Applications with a high QoS priority may suffer a unacceptable amount of degradation due to their contentious co-running applications’ interference. Moreover, applications with a high QoS priority may even suffer more degradation than applications with lower QoS priorities, causing priority inversion. Because of the lack of QoS management, modern datacenters often resort to disallowing co-location of high priority applications with other applications, which translates to low machine utilization.
This work proposes a novel compilation approach to mitigate the resource contention for addressing the QoS challenges on modern multicore architectures. In essence, the proposed approach specializes and adapts code layouts to throttle an application’s memory accesses to enforce the QoS priorities. Specifically, our approach includes profiling techniques, static compilation techniques and an online system enabled by profiling and static compilation. The profiling techniques identify code regions that are contentious or sensitive to contention. The static compilation techniques specialize code layouts to reduce the contentious nature of code regions in low priority applications to guarantee the high priority application’s QoS. The static techniques also annotate code regions’ QoS priorities and applications’ QoS objectives. Finally the online system, enabled by the static code instrumentation and transformation, dynamically detects contention and QoS anomalies due to contention, adapts code and dynamically throttles memory accesses to mitigate contention and to achieve the system’s QoS goals. The proposed work will be evaluated using commodity multicore platforms. The success of our proposed research will provide an effective and deployable software approach to mitigate contention, enforce QoS priorities and guarantee QoS goals for diverse applications co-running on real multicore platforms.