Compiler Support for Application Migration in Heterogeneous-ISA Platforms

Robert Lyerly, Christopher Jelesnianski, Antonio Barbalace, Binoy Ravindran

Research output: Contribution to conferencePosterpeer-review

Abstract

In recent years there has been a proliferation of heterogeneous-ISA systems ranging from mobile devices to warehouse-scale computers. These systems, which couple together processors with unique execution characteristics, seek to accommodate many different types of applications. Additionally, many of these architectures are OS-capable, meaning they are able to run an operating system. With this ability comes a number of benefits (e.g. I/O capabilities, scheduling, etc.). However, current OSes are unable to fully exploit these systems as individual architectures within the system are loosely coupled, preventing the OS from being able to manage the entire system. Additionally, programming these systems is challenging, as the developer must write inflexible and tedious boiler plate code that handles low-level device and memory management. As these systems become increasingly ubiquitous, new OS and compiler tools must reduce the barrier to entry in order to maximize full-system performance and enable developer productivity.

In this work we seek to exploit emerging heterogeneous-ISA platforms to gain energy efficiency and high performance with minimal programmer effort. In particular, our approach lets developers utilize existing applications written using the shared-memory programming model in a heterogeneous-ISA context. This is in contrast to existing programming practices, which require refactoring portions of applications into offloadable sections. With our approach, migration execution can occur at arbitrary function boundaries, allowing applications to utilize the OS scheduler for several types of benefits (e.g. fairness, isolation). Indeed, the Linux scheduler migrates execution between cores at arbitrary points to balance load and improve performance. OS schedulability provides benefits over the queue-and-execute approach favored in current GPU programming models, which prevents OS scheduling optimization.
Original languageEnglish
Number of pages2
Publication statusPublished - 24 Apr 2015
EventTenth European Conference on Computer Systems 2015 - Bordeaux, France
Duration: 21 Apr 201524 Apr 2015
https://eurosys2015.labri.fr/

Conference

ConferenceTenth European Conference on Computer Systems 2015
Abbreviated titleEuroSys 2015
CountryFrance
CityBordeaux
Period21/04/1524/04/15
Internet address

Fingerprint Dive into the research topics of 'Compiler Support for Application Migration in Heterogeneous-ISA Platforms'. Together they form a unique fingerprint.

Cite this