Institute for Communication Technologies and Embedded Systems

Parallelism Extraction in Embedded Software for Android Devices

Aguilar, M. A. ,  Eusse, J. F. ,  Ray, P. ,  Leupers, R.Ascheid, G. ,  Sheng, W. ,  Sharma, P.
Book Title:
Proceedings of the XV International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation (SAMOS)
Jul. 2015
In the last years the presence of embedded devices in every day life has grown exponentially. The market of these devices imposes conflicting requirements such as cost, performance and energy. The use of Multiprocessor Systems on Chip (MPSoCs) is a widely accepted solution to provide a trade-off between these requirements. However, programming MPSoCs is still a cumbersome task. Several research efforts have addressed this challenge in two complementary directions: paradigms for parallel programming and tools for automatic parallelism extraction. However, most of these efforts are focused on the high performance domain and they do not consider the characteristics of the underlying device, which is required in the embedded domain. In this paper we present a methodology to extract multiple forms of parallelism from sequential C code, which is applied to widespread Android mobile devices. We evaluate our approach by parallelizing relevant embedded benchmarks on a Nexus 7 tablet. Results show that we are able to speedup sequential benchmarks in average by a factor up to 2.3x and in the best case up to 3.8x on the quad-core MPSoC of the tablet.