Reflex: Using low-power processors in smartphones without knowing them

Felix Xiaozhu Lin, Zhen Wang, Robert LiKamWa, Lin Zhong

Research output: Chapter in Book/Report/Conference proceedingConference contribution

40 Citations (Scopus)

Abstract

To accomplish frequent, simple tasks with high efficiency, it is necessary to leverage low-power, microcontroller-like processors that are increasingly available on mobile systems. However, existing solutions require developers to directly program the low-power processors and carefully manage inter-processor communication. We present Reflex, a suite of compiler and runtime techniques that significantly lower the barrier for developers to leverage such low-power processors. The heart of Reflex is a software Distributed Shared Memory (DSM) that enables shared memory objects with release consistency among code running on loosely coupled processors. In order to achieve high energy efficiency without sacrificing performance much, the Reflex DSM leverages (i) extreme architectural asymmetry between low-power processors and powerful central processors, (ii) aggressive compile-time optimization, and (iii) a minimalist runtime that supports efficient message passing and event-driven execution. We report a complete realization of Reflex that runs on a TI OMAP4430-based development platform as well as on a custom tri-processor mobile platform. Using smartphone sensing applications reported in recent literature, we show that Reflex supports a programming style very close to contemporary smartphone programming. Compared to message passing, the Reflex DSM greatly reduces efforts in programming heterogeneous smartphones, eliminating up to 38% of the source lines of application code. Compared to running the same applications on existing smartphones, Reflex reduces the average system power consumption by up to 81%.

Original languageEnglish (US)
Title of host publicationASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems
Pages13-24
Number of pages12
DOIs
StatePublished - 2012
Externally publishedYes
Event17th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2012 - London, United Kingdom
Duration: Mar 3 2012Mar 7 2012

Other

Other17th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2012
CountryUnited Kingdom
CityLondon
Period3/3/123/7/12

Fingerprint

Smartphones
Data storage equipment
Message passing
Computer programming
Microcontrollers
Energy efficiency
Electric power utilization
Communication

Keywords

  • distributed shared memory
  • energy-efficiency
  • heterogeneous systems
  • mobile systems

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture

Cite this

Lin, F. X., Wang, Z., LiKamWa, R., & Zhong, L. (2012). Reflex: Using low-power processors in smartphones without knowing them. In ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems (pp. 13-24) https://doi.org/10.1145/2150976.2150979

Reflex : Using low-power processors in smartphones without knowing them. / Lin, Felix Xiaozhu; Wang, Zhen; LiKamWa, Robert; Zhong, Lin.

ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems. 2012. p. 13-24.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Lin, FX, Wang, Z, LiKamWa, R & Zhong, L 2012, Reflex: Using low-power processors in smartphones without knowing them. in ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems. pp. 13-24, 17th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2012, London, United Kingdom, 3/3/12. https://doi.org/10.1145/2150976.2150979
Lin FX, Wang Z, LiKamWa R, Zhong L. Reflex: Using low-power processors in smartphones without knowing them. In ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems. 2012. p. 13-24 https://doi.org/10.1145/2150976.2150979
Lin, Felix Xiaozhu ; Wang, Zhen ; LiKamWa, Robert ; Zhong, Lin. / Reflex : Using low-power processors in smartphones without knowing them. ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems. 2012. pp. 13-24
@inproceedings{e93757e879cb4c0996224f38878c2657,
title = "Reflex: Using low-power processors in smartphones without knowing them",
abstract = "To accomplish frequent, simple tasks with high efficiency, it is necessary to leverage low-power, microcontroller-like processors that are increasingly available on mobile systems. However, existing solutions require developers to directly program the low-power processors and carefully manage inter-processor communication. We present Reflex, a suite of compiler and runtime techniques that significantly lower the barrier for developers to leverage such low-power processors. The heart of Reflex is a software Distributed Shared Memory (DSM) that enables shared memory objects with release consistency among code running on loosely coupled processors. In order to achieve high energy efficiency without sacrificing performance much, the Reflex DSM leverages (i) extreme architectural asymmetry between low-power processors and powerful central processors, (ii) aggressive compile-time optimization, and (iii) a minimalist runtime that supports efficient message passing and event-driven execution. We report a complete realization of Reflex that runs on a TI OMAP4430-based development platform as well as on a custom tri-processor mobile platform. Using smartphone sensing applications reported in recent literature, we show that Reflex supports a programming style very close to contemporary smartphone programming. Compared to message passing, the Reflex DSM greatly reduces efforts in programming heterogeneous smartphones, eliminating up to 38{\%} of the source lines of application code. Compared to running the same applications on existing smartphones, Reflex reduces the average system power consumption by up to 81{\%}.",
keywords = "distributed shared memory, energy-efficiency, heterogeneous systems, mobile systems",
author = "Lin, {Felix Xiaozhu} and Zhen Wang and Robert LiKamWa and Lin Zhong",
year = "2012",
doi = "10.1145/2150976.2150979",
language = "English (US)",
isbn = "9781450307598",
pages = "13--24",
booktitle = "ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems",

}

TY - GEN

T1 - Reflex

T2 - Using low-power processors in smartphones without knowing them

AU - Lin, Felix Xiaozhu

AU - Wang, Zhen

AU - LiKamWa, Robert

AU - Zhong, Lin

PY - 2012

Y1 - 2012

N2 - To accomplish frequent, simple tasks with high efficiency, it is necessary to leverage low-power, microcontroller-like processors that are increasingly available on mobile systems. However, existing solutions require developers to directly program the low-power processors and carefully manage inter-processor communication. We present Reflex, a suite of compiler and runtime techniques that significantly lower the barrier for developers to leverage such low-power processors. The heart of Reflex is a software Distributed Shared Memory (DSM) that enables shared memory objects with release consistency among code running on loosely coupled processors. In order to achieve high energy efficiency without sacrificing performance much, the Reflex DSM leverages (i) extreme architectural asymmetry between low-power processors and powerful central processors, (ii) aggressive compile-time optimization, and (iii) a minimalist runtime that supports efficient message passing and event-driven execution. We report a complete realization of Reflex that runs on a TI OMAP4430-based development platform as well as on a custom tri-processor mobile platform. Using smartphone sensing applications reported in recent literature, we show that Reflex supports a programming style very close to contemporary smartphone programming. Compared to message passing, the Reflex DSM greatly reduces efforts in programming heterogeneous smartphones, eliminating up to 38% of the source lines of application code. Compared to running the same applications on existing smartphones, Reflex reduces the average system power consumption by up to 81%.

AB - To accomplish frequent, simple tasks with high efficiency, it is necessary to leverage low-power, microcontroller-like processors that are increasingly available on mobile systems. However, existing solutions require developers to directly program the low-power processors and carefully manage inter-processor communication. We present Reflex, a suite of compiler and runtime techniques that significantly lower the barrier for developers to leverage such low-power processors. The heart of Reflex is a software Distributed Shared Memory (DSM) that enables shared memory objects with release consistency among code running on loosely coupled processors. In order to achieve high energy efficiency without sacrificing performance much, the Reflex DSM leverages (i) extreme architectural asymmetry between low-power processors and powerful central processors, (ii) aggressive compile-time optimization, and (iii) a minimalist runtime that supports efficient message passing and event-driven execution. We report a complete realization of Reflex that runs on a TI OMAP4430-based development platform as well as on a custom tri-processor mobile platform. Using smartphone sensing applications reported in recent literature, we show that Reflex supports a programming style very close to contemporary smartphone programming. Compared to message passing, the Reflex DSM greatly reduces efforts in programming heterogeneous smartphones, eliminating up to 38% of the source lines of application code. Compared to running the same applications on existing smartphones, Reflex reduces the average system power consumption by up to 81%.

KW - distributed shared memory

KW - energy-efficiency

KW - heterogeneous systems

KW - mobile systems

UR - http://www.scopus.com/inward/record.url?scp=84863345817&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84863345817&partnerID=8YFLogxK

U2 - 10.1145/2150976.2150979

DO - 10.1145/2150976.2150979

M3 - Conference contribution

AN - SCOPUS:84863345817

SN - 9781450307598

SP - 13

EP - 24

BT - ASPLOS XVII - 17th International Conference on Architectural Support for Programming Languages and Operating Systems

ER -