Hyperion: A Generic and Distributed Mobile Offloading Framework on OpenCL
- Ziyan Fu ,
- Ju Ren ,
- Yunxin Liu ,
- Ting Cao ,
- Deyu Zhang ,
- Yuezhi Zhou ,
- Yaoxue Zhang
ACM Conference on Embedded Networked Sensor Systems (SenSys ’22) |
Published by ACM
Despite the significant development of mobile device SoCs, they are still inefficient in computing computation-intensive workloads,
such as high-resolution image processing and AR/VR applications. Offloading offers a promising way to leverage cloud or edge servers for acceleration, but existing offloading is limited to specific tasks or specific hardware/software platforms, resulting in significant engineering overhead. To address this problem, we focus on the underlying layer of these applications (i.e., OpenCL) and propose Hyperion, a generic and distributed mobile offloading framework built on OpenCL. To achieve high-performance distributed execution for Hyperion, we first take a deep insight into the OpenCL data structures and design regularity-aware kernel analyzer to analyze the data dependency of work-groups and identify the essential data to offload. Then, context-aware execution time predictor is proposed to estimate the computing time of a given partitioned kernel workload that is highly impacted by many runtime factors. These techniques are integrated into pipeline-enabled and network-adaptive scheduler to make scheduling decisions, which coordinates the kernel partition and workload scheduling to form pipeline processing between data transmission and distributed execution with flexible adaptability to network dynamics. Extensive experimental results demonstrate that Hyperion achieves superior performance with an average 3.80× speedup compared with the best baseline and flexible adaptation to dynamic network conditions and available computing resources.