The Internet of Things (IoT) is offering unprecedented observational data that are used for managing Smart City utilities. Edge and Fog gateway devices are an integral part of IoT deployments to acquire real-time data and enact controls. Recently, Edge-computing is emerging as first-class paradigm to complement Cloud-centric analytics. But a key limitation is the lack of a platform-as-a-service for applications spanning Edge and Cloud. Here, we propose ( ECHO ), an orchestration platform for dataflows across distributed resources. ( ECHO ) ’s hybrid dataflow composition can operate on diverse data models – streams, micro-batches and files, and interface with native runtime engines like TensorFlow and Storm to execute them. It manages the application’s lifecycle, including container-based deployment and a registry for state management. ( ECHO ) can schedule the dataflow on different Edge, Fog and Cloud resources, and also perform dynamic task migration between resources. We validate the ( ECHO ) platform for executing video analytics and sensor streams for Smart Traffic and Smart Utility applications on Raspberry Pi, NVidia TX1, ARM64 and Azure Cloud VM resources, and present our results.
are precursors to IoT where mobile phones off-load applications to Cloud resources. @cite_10 , mobile data stream applications are dynamically partitioned for computation across mobile devices and Cloud. They propose a genetic algorithm for the partitioning to maximize throughput and adapt to changing devices load. They are limited to mobile data stream applications rather than dataflow or hybrid data models We also support Fog resources, native runtime engines and dynamic migration of tasks among the resources. The Hybrid Mobile Edge Computing (HMEC) architecture @cite_19 uses edge devices for mobile applications. They use a peer-to-peer (P2P) approach of both proximate and distant edge devices, and perform to improve performance and reduce energy usage. Similarly, @cite_2 offloads tasks to the Cloud using RPC with static analysis and dynamic profiling of mobile applications. It maintains a complete device clone in the Cloud, which can be costly. These are designed for monolithic existing mobile applications rather than dataflow composition, and neither consider a service paradigm or Fog servers.
@cite_19 @cite_10 @cite_2
2089227674 1904504745 2068300842 2486013602
Improving performance of a mobile application by offloading its computation onto a cloudlet has become a prevalent paradigm. Among mobile applications, the category of interactive data-streaming applications is emerging while having not yet received sufficient attention. During computation offloading, the performance of this category of applications (including response time and throughput) depends on network latency and bandwidth between the mobile device and the cloudlet. Although a single cloudlet can provide satisfactory network latency, the bandwidth is always the bottleneck of the throughput. To address this issue, we propose to use multiple cloudlets for computation offloading so as to alleviate the bandwidth bottleneck. In addition, we propose to use multiple module instances to complete a module, enabling more fine-grained computation partitioning, since data processing in many modules of data-streaming applications could be highly parallelized. Specifically, at first we apply a fine-grained data-flow model to characterize mobile interactive data-streaming applications. Then we build a unified optimization framework that achieves maximization of the overall utilities of all mobile users, and design an efficient heuristic for the optimization problem, which is able to make trade-off between throughput and energy consumption at each mobile device. At the end we verify our algorithm with extensive simulation. The results show that the overall utility achieved by our heuristic is close to the precise optimum, and our multiple-cloudlet mechanism significantly outperforms the single-cloudlet mechanism. Migrating computational intensive tasks from mobile devices to more resourceful cloud servers is a promising technique to increase the computational capacity of mobile devices while saving their battery energy. In this paper, we consider an MIMO multicell system where multiple mobile users (MUs) ask for computation offloading to a common cloud server. We formulate the offloading problem as the joint optimization of the radio resources—the transmit precoding matrices of the MUs—and the computational resources—the CPU cycles second assigned by the cloud to each MU—in order to minimize the overall users’ energy consumption, while meeting latency constraints. The resulting optimization problem is nonconvex (in the objective function and constraints). Nevertheless, in the single-user case, we are able to compute the global optimal solution in closed form. In the more challenging multiuser scenario, we propose an iterative algorithm, based on a novel successive convex approximation technique, converging to a local optimal solution of the original nonconvex problem. We then show that the proposed algorithmic framework naturally leads to a distributed and parallel implementation across the radio access points, requiring only a limited coordination signaling with the cloud. Numerical results show that the proposed schemes outperform disjoint optimization algorithms. The contribution of cloud computing and mobile computing technologies lead to the newly emerging mobile cloud computing paradigm. Three major approaches have been proposed for mobile cloud applications: 1) extending the access to cloud services to mobile devices; 2) enabling mobile devices to work collaboratively as cloud resource providers; 3) augmenting the execution of mobile applications on portable devices using cloud resources. In this paper, we focus on the third approach in supporting mobile data stream applications. More specifically, we study how to optimize the computation partitioning of a data stream application between mobile and cloud to achieve maximum speed throughput in processing the streaming data. To the best of our knowledge, it is the first work to study the partitioning problem for mobile data stream applications, where the optimization is placed on achieving high throughput of processing the streaming data rather than minimizing the makespan of executions as in other applications. We first propose a framework to provide runtime support for the dynamic computation partitioning and execution of the application. Different from existing works, the framework not only allows the dynamic partitioning for a single user but also supports the sharing of computation instances among multiple users in the cloud to achieve efficient utilization of the underlying cloud resources. Meanwhile, the framework has better scalability because it is designed on the elastic cloud fabrics. Based on the framework, we design a genetic algorithm for optimal computation partition. Both numerical evaluation and real world experiment have been performed, and the results show that the partitioned application can achieve at least two times better performance in terms of throughput than the application without partitioning. Mobile cloud computing (MCC) as an emerging and prospective computing paradigm, can significantly enhance computation capability and save energy of smart mobile devices (SMDs) by offloading computation-intensive tasks from resource-constrained SMDs onto the resource-rich cloud. However, how to achieve energy-efficient computation offloading under the hard constraint for application completion time remains a challenge issue. To address such a challenge, in this paper, we provide an energy-efficient dynamic offloading and resource scheduling (eDors) policy to reduce energy consumption and shorten application completion time. We first formulate the eDors problem into the energy-efficiency cost (EEC) minimization problem while satisfying the task-dependency requirements and the completion time deadline constraint. To solve the optimization problem, we then propose a distributed eDors algorithm consisting of three subalgorithms of computation offloading selection, clock frequency control and transmission power allocation. More importantly, we find that the computation offloading selection depends on not only the computing workload of a task, but also the maximum completion time of its immediate predecessors and the clock frequency and transmission power of the mobile device. Finally, our experimental results in a real testbed demonstrate that the eDors algorithm can effectively reduce the EEC by optimally adjusting the CPU clock frequency of SMDs based on the dynamic voltage and frequency scaling (DVFS) technique in local computing, and adapting the transmission power for the wireless channel conditions in cloud computing.