Accelerating Linux and Android applications on low-power devices through remote GPGPU offloading

Low-power devices are usually highly constrained in terms of CPU computing power, memory, and GPGPU resources for real-time applications to run. In this paper, we describe RAPID, a complete framework suite for computation offloading to help low-powered devices overcome these limitations. RAPID suppo...

Descripción completa

Detalles Bibliográficos
Autores: Montella, Raffaele, Kosta, Sokol, Oro García, David, Vera, Javier, Fernández, Carles, Palmieri, Carlo, Di Luccio, Diana, Giunta, Giulio, Lapegna, Marco, Laccetti, Giuliano
Tipo de recurso: artículo
Fecha de publicación:2017
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/192756
Acceso en línea:https://hdl.handle.net/2117/192756
https://dx.doi.org/10.1002/cpe.4286
Access Level:acceso abierto
Palabra clave:Distributed operating systems (Computers)
Android
CUDA
GPGPU
Mobile cloud computing
Offloading
Virtualization
Sistemes operatius distribuïts (Ordinadors)
Àrees temàtiques de la UPC::Informàtica::Sistemes operatius::Linux
Àrees temàtiques de la UPC::Informàtica::Sistemes operatius::Altres sistemes operatius
Descripción
Sumario:Low-power devices are usually highly constrained in terms of CPU computing power, memory, and GPGPU resources for real-time applications to run. In this paper, we describe RAPID, a complete framework suite for computation offloading to help low-powered devices overcome these limitations. RAPID supports CPU and GPGPU computation offloading on Linux and Android devices. Moreover, the framework implements lightweight secure data transmission of the offloading operations. We present the architecture of the framework, showing the integration of the CPU and GPGPU offloading modules. We show by extensive experiments that the overhead introduced by the security layer is negligible. We present the first benchmark results showing that Java/Android GPGPU code offloading is possible. Finally, we show the adoption of the GPGPU offloading into BioSurveillance , a commercial real-time face recognition application. The results show that, thanks to RAPID, BioSurveillance is being successfully adapted to run on low-power devices. The proposed framework is highly modular and exposes a rich application programming interface to developers, making it highly versatile while hiding the complexity of the underlying networking layer.