NC-Load: On-Demand Program Loading and Running for Computing Sharing Among IoT Devices

Published: 01 Jan 2025, Last Modified: 16 May 2025IEEE Internet Things J. 2025EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: The number of Internet of Things (IoT) devices has increased rapidly in recent years, but lack effective methods to integrate their computational power. In this article, we propose NC-Load, which couples IoT devices into a multiprocessor system, allowing process scheduling across different devices to share their computing power and improve overall throughput. Specifically, NC-Load consists of three key designs, i.e., remote page fault (RPF), lightweight program cropping, and identical memory layout migration, contributing to three merits compared to existing systems: 1) high storage efficiency: the target device launches the program with a locally stored lightweight icon and leverages RPFs to retrieve the required code/data from the source device; 2) on-demand memory loading: only the required memory portions are transmitted when scheduling programs across different devices, which ensures quick recovery of the program; and 3) consistent memory layout: to ensure consistency of addresses after program offloading, the virtual memory area layout of the source device is migrated to the target device. We implement NC-Load on Linux 6.1 and conduct performance evaluation using unmodified programs and the N-Queens cases. The results demonstrate that NC-Load can achieve superior performance in terms of storage efficiency, program performance, memory usage, and throughput.
Loading

OpenReview is a long-term project to advance science through improved peer review with legal nonprofit status. We gratefully acknowledge the support of the OpenReview Sponsors. © 2025 OpenReview