Jupiter: A Networked Computing Architecture

12/23/2019
by   Pradipta Ghosh, et al.
0

In the era of Internet of Things, there is an increasing demand for networked computing to support the requirements of the time-constrained, compute-intensive distributed applications such as multi-camera video processing and data fusion for security. We present Jupiter, an open source networked computing system that inputs a Directed Acyclic Graph (DAG)-based computational task graph to efficiently distribute the tasks among a set of networked compute nodes regardless of their geographical separations and orchestrates the execution of the DAG thereafter. This Kubernetes container-orchestration-based system supports both centralized and decentralized scheduling algorithms for optimally mapping the tasks based on information from a range of profilers: network profilers, resource profilers, and execution time profilers. While centralized scheduling algorithms with global knowledge have been popular among the grid/cloud computing community, we argue that a distributed scheduling approach is better suited for networked computing due to lower communication and computation overhead in the face of network dynamics. To this end, we propose and implement a new class of distributed scheduling algorithms called WAVE on the Jupiter system. We present a set of real world experiments on two separate testbeds - one a world-wide network of 90 cloud computers across 8 cities and the other a cluster of 30 Raspberry pi nodes, over a simple networked computing application called Distributed Network Anomaly Detector (DNAD). We show that despite using more localized knowledge, a distributed WAVE greedy algorithm can achieve similar performance as a classical centralized scheduling algorithm called Heterogeneous Earliest Finish Time (HEFT), suitably enhanced for the Jupiter system.

READ FULL TEXT

page 1

page 4

page 7

page 8

research
08/22/2023

Resource Allocation in Cloud Computing Using Genetic Algorithm and Neural Network

Cloud computing is one of the most used distributed systems for data pro...
research
12/27/2021

Design and Experimental Evaluation of Algorithms for Optimizing the Throughput of Dispersed Computing

With growing deployment of Internet of Things (IoT) and machine learning...
research
07/15/2021

MXDAG: A Hybrid Abstraction for Cluster Applications

Distributed applications, such as database queries and distributed train...
research
10/14/2019

In Search of a Fast and Efficient Serverless DAG Engine

Python-written data analytics applications can be modeled as and compile...
research
09/14/2020

UniFuzz: Optimizing Distributed Fuzzing via Dynamic Centralized Task Scheduling

Fuzzing is one of the most efficient technology for vulnerability detect...
research
12/18/2022

A Cost Effective Reliability Aware Scheduler for Task Graphs in Multi-Cloud System

Many scientific workflows can be represented by a Directed Acyclic Graph...
research
12/18/2022

CEDCES: A Cost Effective Deadline Constrained Evolutionary Scheduler for Task Graphs in Multi-Cloud System

Many scientific workflows can be modeled as a Directed Acyclic Graph (he...

Please sign up or login with your details

Forgot password? Click here to reset