  As we increase the number of personal computing devices that we carry (mobile
devices, tablets, e-readers, and laptops) and these come equipped with
increasing resources, there is a vast potential computation power that can be
utilized from those devices. Edge computing promises to exploit these
underlying computation resources closer to users to help run latency-sensitive
applications such as augmented reality and video analytics. However, one key
missing piece has been how to incorporate personally owned unmanaged devices
into a usable edge computing system. The primary challenges arise due to the
heterogeneity, lack of interference management, and unpredictable availability
of such devices. In this paper we propose an orchestration framework IBDASH,
which orchestrates application tasks on an edge system that comprises a mix of
commercial and personal edge devices. IBDASH targets reducing both end-to-end
latency of execution and probability of failure for applications that have
dependency among tasks, captured by directed acyclic graphs (DAGs). IBDASH
takes memory constraints of each edge device and network bandwidth into
consideration. To assess the effectiveness of IBDASH, we run real application
tasks on real edge devices with widely varying capabilities.We feed these
measurements into a simulator that runs IBDASH at scale. Compared to three
state-of-the-art edge orchestration schemes, LAVEA, Petrel, and LaTS, and two
intuitive baselines, IBDASH reduces the end-to-end latency and probability of
failure, by 14% and 41% on average respectively. The main takeaway from our
work is that it is feasible to combine personal and commercial devices into a
usable edge computing platform, one that delivers low latency and predictable
and high availability.
