A lightweight incremental analysis and profiling framework for embedded devices

Abstract : Embedded systems such as mobile devices are currently ubiquitous. The performance potential of these devices is rapidly improving by incorporating multi-core and GPU technologies, and is rapidly catching up with the workstation platforms. Nevertheless, the heterogeneity of the underlying hardware as well as the low-power constraints severely limit performance portability. In this paper we consider the case of leveraging JIT compilers to provide portable parallelization while hiding the corresponding expensive runtime analysis. We propose a novel lightweight JIT framework that exploits the device idle time and the large storage space generally available on these devices. The framework performs 'incremental' analysis while the processor is idle (such as during charging time), and exploits the storage space to cache intermediate analysis results. Such approach requires reengineering existing complex optimization analysis methods. For this paper, we focus on the traditional loop parallelization analysis, and implement a working prototype into the LLVM framework, integrating a lightweight dynamic profiling method to identify hotspots. Initial results demonstrate the low overhead of our method for parallelizing simple loops on an embedded GPU.
Liste complète des métadonnées

Contributor : Erven Rohou <>
Submitted on : Tuesday, November 25, 2014 - 10:53:04 AM
Last modification on : Thursday, November 15, 2018 - 11:57:43 AM



Sara Elshobaky, Ahmed El-Mahdy, Erven Rohou, Layla El-Sayed, Mohamed Nazih Elderini. A lightweight incremental analysis and profiling framework for embedded devices. Proceedings of the 17th International Workshop on Software and Compilers for Embedded Systems, Jun 2014, Sankt-Goar, Germany. pp.60-68, ⟨10.1145/2609248.2609263⟩. ⟨hal-01086903⟩



Record views