The Conjunction of Asymmetric Hardware and Managed Software for Efficiency
Ting Cao (Research School of Computer Science, ANU)
COMPUTER SYSTEMS SEMINARDATE: 2013-09-06
TIME: 15:15:00 - 16:00:00
LOCATION: Ian Ross Seminar Room
CONTACT: JavaScript must be enabled to display this email address.
ABSTRACT:
Two significant revolutions are underway in computing. (1) On the hardware side, exponentially growing transistor counts in the same area, limited power budget and the breakdown of MOSFET voltage scaling are forcing power to be the first order constraint of computer architecture design. Data center electricity costs are billions of dollars each year in the U.S. alone. To address power constraints and energy cost, industry and academia propose asymmetric multicore processors (AMP) that integrate general-purpose big (fast, high power) cores and small (slow, low power) cores. They promise to improve both single-thread performance and multi-thread throughput with lower power and energy consumption. (2) On the software side, managed languages, such as Java and C#, and an entirely new software landscape of web applications have emerged. This has revolutionized how software is deployed, is sold, and interacts with hardware, from mobile devices to large servers. Managed languages abstract over hardware using Virtual Machine (VM) services (garbage collection, interpretation, and/or just-in-time compilation) that together impose substantial power and performance overheads. Thus, hardware support for managed software and managed software utilization of available hardware are critical and pervasive problems.
However, hardware and software researchers often examine the changes arising from these on going revolutions in isolation. Architects mostly grapple with microarchitecture design through the narrow software context of native sequential SPEC CPU benchmarks, while language researchers mostly consider microarchitecture in terms of performance alone. My work is to explore the confluence of the two trends.
My thesis statement is that there exists a synergy between managed software and AMPs that can be automatically exploited to reduce VM overhead and deliver the efficiency promise of AMPs while abstracting the hardware complexity.
We identify a synergy between AMP and managed software, and addresses the challenge of exploiting it through the following three steps. (1) It first systematically measures and analyzes the power, performance, and energy characteristics of managed software compared to native software on current mainstream symmetric hardware, which motivates the next part of the thesis. (2) It next demonstrates that VM services fulfil the AMP workload requirements and tailored small cores for VM services deliver improvements in performance and energy. (3) Finally, it introduces a dynamic scheduling algorithm in the VM that manages parallelism, load balance and core sensitivity for efficiency.
This work is the first to quantitatively study measured power and performance at the chip level across hardware generations using managed and native workloads, revealing previously unobserved hardware and software trends. This work proposes solutions to the 40% overhead of VM services by using tailored small cores in AMPs. This work introduces a new dynamic VM scheduler that offers transparency from AMP heterogeneity hardware and substantial performance and energy improvements.
Those contributions show that the opportunities and challenges of AMPs and managed software are complementary. The conjunction provides a win-win opportunity for hardware and software communities now confronted with performance and power challenges in an increasingly complex computing landscape.
BIO:
Ting Cao is a PhD student in the Computer System Group. She received
her Bachelor's degree from National University of Defence Technology in China.





