Abstract
The recent possibility of integrating multiple-OS-capable, high-core-count, heterogeneous-ISA processors in the same platform poses a question: given the tight integration between system components, can a shared memory programming model be adopted, enhancing programmability? If this can be done, an enormous amount of existing code written for shared memory architectures would not have to be rewritten to use a new programming paradigm (e.g., code offloading) that is often very expensive and error prone. We propose a new software architecture that is composed of an operating system and a compiler framework to run ordinary shared memory applications, written for homogeneous machines, on OS-capable heterogeneous-ISA machines. Applications run transparently amongst different ISA processors while exploiting the most optimized instruction set for each code block. We have implemented and tested our system, called Popcorn, on a multi-core Intel Xeon machine with a PCIe Intel Xeon Phi to demonstrate the viability of our approach. Application execution on Popcorn demonstrates tobe up to 52% faster than the most performant native execution on Linux, on either Xeon or Xeon Phi, while removing the burden of the programmer having to adopt a different programming model than shared memory on a heterogeneous system. When compared to an offloading programming model, Popcorn is shown to be up to 6.2 times faster.
Original language | English |
---|---|
Title of host publication | Proceedings of the Tenth European Conference on Computer Systems |
Place of Publication | New York, NY, USA |
Publisher | Association for Computing Machinery (ACM) |
Pages | 29:1-29:16 |
Number of pages | 16 |
ISBN (Print) | 978-1-4503-3238-5 |
DOIs | |
Publication status | Published - 17 Apr 2015 |
Event | Tenth European Conference on Computer Systems 2015 - Bordeaux, France Duration: 21 Apr 2015 → 24 Apr 2015 https://eurosys2015.labri.fr/ |
Conference
Conference | Tenth European Conference on Computer Systems 2015 |
---|---|
Abbreviated title | EuroSys 2015 |
Country/Territory | France |
City | Bordeaux |
Period | 21/04/15 → 24/04/15 |
Internet address |