DocumentCode
710173
Title
How to stop under-utilization and love multicores
Author
Ailamaki, Anastasia ; Liarou, Erietta ; Tozun, Pinar ; Porobic, Danica ; Psaroudakis, Iraklis
Author_Institution
Ecole Polytech. Fed. de Lausanne, Lausanne, Switzerland
fYear
2015
fDate
13-17 April 2015
Firstpage
1530
Lastpage
1533
Abstract
Hardware trends oblige software to overcome three major challenges against systems scalability: (1) taking advantage of the implicit/vertical parallelism within a core that is enabled through the aggressive micro-architectural features, (2) exploiting the explicit/horizontal parallelism provided by multicores, and (3) achieving predictively efficient execution despite the variability in communication latencies among cores on multisocket multicores. In this three hour tutorial, we shed light on the above three challenges and survey recent proposals to alleviate them. The first part of the tutorial describes the instruction- and data-level parallelism opportunities in a core coming from the hardware and software side. In addition, it examines the sources of under-utilization in a modern processor and presents insights and hardware/software techniques to better exploit the micro-architectural resources of a processor by improving cache locality at the right level of the memory hierarchy. The second part focuses on the scalability bottlenecks of database applications at the level of multicore and multisocket multicore architectures. It first presents a systematic way of eliminating such bottlenecks in online transaction processing workloads, which is based on minimizing unbounded communication, and shows several techniques that minimize bottlenecks in major components of database management systems. Then, it demonstrates the data and work sharing opportunities for analytical workloads, and reviews advanced scheduling mechanisms that are aware of non-uniform memory accesses and alleviate bandwidth saturation.
Keywords
multiprocessing systems; parallel processing; communication latencies; data level parallelism; database applications; database management systems; explicit-horizontal parallelism; hardware-software techniques; implicit-vertical parallelism; instruction level parallelism; memory hierarchy; microarchitectural features; microarchitectural resources; multicores; multisocket multicore architectures; multisocket multicores; online transaction processing workloads; systems scalability; Database systems; Hardware; Multicore processing; Parallel processing; Scalability; Tutorials;
fLanguage
English
Publisher
ieee
Conference_Titel
Data Engineering (ICDE), 2015 IEEE 31st International Conference on
Conference_Location
Seoul
Type
conf
DOI
10.1109/ICDE.2015.7113419
Filename
7113419
Link To Document