University of South Australia Distributed Reconfiguration Avishek Chakraborty, David Kearney, Mark Jasiunas.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

MapReduce Online Created by: Rajesh Gadipuuri Modified by: Ying Lu.
Formal Modelling of Reactive Agents as an aggregation of Simple Behaviours P.Kefalas Dept. of Computer Science 13 Tsimiski Str Thessaloniki Greece.
Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.
Requirements on the Execution of Kahn Process Networks Marc Geilen and Twan Basten 11 April 2003 /e.
COMMMONWEALTH OF AUSTRALIA Do not remove this notice.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Context-based Information Sharing and Authorization in Mobile Ad Hoc Networks Incorporating QoS Constraints Sanjay Madria, Missouri University of Science.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Think. Learn. Succeed. Aura: An Architectural Framework for User Mobility in Ubiquitous Computing Environments Presented by: Ashirvad Naik April 20, 2010.
Blue Bear Systems Research Hardware Architectures for Distributed Agents Dr Simon Willcox 24 th Soar Workshop 9 th – 11 th June 2004 Building 32, Twinwoods.
1 Multi-Core Architecture on FPGA for Large Dictionary String Matching Department of Computer Science and Information Engineering National Cheng Kung University,
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
1 I/O Management in Representative Operating Systems.
BRASS Analysis of QuasiStatic Scheduling Techniques in a Virtualized Reconfigurable Machine Yury Markovskiy, Eylon Caspi, Randy Huang, Joseph Yeh, Michael.
Understanding and Managing WebSphere V5
1 A survey on Reconfigurable Computing for Signal Processing Applications Anne Pratoomtong Spring2002.
Advanced Embedded Systems Design Pre-emptive scheduler BAE 5030 Fall 2004 Roshani Jayasekara Biosystems and Agricultural Engineering Oklahoma State University.
Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
© 2005 Mercury Computer Systems, Inc. Yael Steinsaltz, Scott Geaghan, Myra Jean Prelle, Brian Bouzas,
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
EXPOSE GOOGLE APP ENGINE AS TASKTRACKER NODES AND DATA NODES.
High-Level Interconnect Architectures for FPGAs An investigation into network-based interconnect systems for existing and future FPGA architectures Nick.
Uncovering the Multicore Processor Bottlenecks Server Design Summit Shay Gal-On Director of Technology, EEMBC.
High-Level Interconnect Architectures for FPGAs Nick Barrow-Williams.
Cracow Grid Workshop, October 27 – 29, 2003 Institute of Computer Science AGH Design of Distributed Grid Workflow Composition System Marian Bubak, Tomasz.
Chapter 14 Part II: Architectural Adaptation BY: AARON MCKAY.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Introduction to Concurrency.
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
Embedding Constraint Satisfaction using Parallel Soft-Core Processors on FPGAs Prasad Subramanian, Brandon Eames, Department of Electrical Engineering,
© 2004 Mercury Computer Systems, Inc. FPGAs & Software Components Graham Bardouleau & Jim Kulp Mercury Computer Systems, Inc. High Performance Embedded.
A Fault Tolerant Protocol for Massively Parallel Machines Sayantan Chakravorty Laxmikant Kale University of Illinois, Urbana-Champaign.
A Configurable High-Throughput Linear Sorter System Jorge Ortiz Information and Telecommunication Technology Center 2335 Irving Hill Road Lawrence, KS.
A Collaborative Framework for Scientific Data Analysis and Visualization Jaliya Ekanayake, Shrideep Pallickara, and Geoffrey Fox Department of Computer.
10/03/05 Johan Muskens ( TU/e Computer Science, System Architecture and Networking.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Task Graph Scheduling for RTR Paper Review By Gregor Scott.
Rinoy Pazhekattu. Introduction  Most IPs today are designed using component-based design  Each component is its own IP that can be switched out for.
4/19/20021 TCPSplitter: A Reconfigurable Hardware Based TCP Flow Monitor David V. Schuehler.
Modeling Mobile-Agent-based Collaborative Processing in Sensor Networks Using Generalized Stochastic Petri Nets Hongtao Du, Hairong Qi, Gregory Peterson.
Run-time Adaptive on-chip Communication Scheme 林孟諭 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan, R.O.C.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
A N I N - MEMORY F RAMEWORK FOR E XTENDED M AP R EDUCE 2011 Third IEEE International Conference on Coud Computing Technology and Science.
Hardened IDS using IXP Didier Contis, Dr. Wenke Lee, Dr. David Schimmel Chris Clark, Jun Li, Chengai Lu, Weidong Shi, Ashley Thomas, Yi Zhang  Current.
Embedded Computer - Definition When a microcomputer is part of a larger product, it is said to be an embedded computer. The embedded computer retrieves.
Software tools for digital LLRF system integration at CERN 04/11/2015 LLRF15, Software tools2 Andy Butterworth Tom Levens, Andrey Pashnin, Anthony Rey.
An operating system for a large-scale computer that is used by many people at once is a very complex system. It contains many millions of lines of instructions.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
Network Management Lecture 13. MACHINE LEARNING TECHNIQUES 2 Dr. Atiq Ahmed Université de Balouchistan.
Deadlock and Starvation
SOFTWARE DESIGN AND ARCHITECTURE
ITEC 202 Operating Systems
Deadlock and Starvation
FPGA: Real needs and limits
Storage Virtualization
Supporting Fault-Tolerance in Streaming Grid Applications
EECS 582 Midterm Review Mosharaf Chowdhury EECS 582 – F16.
Anne Pratoomtong ECE734, Spring2002
UNIT IV RAID.
Why Threads Are A Bad Idea (for most purposes)
Why Threads Are A Bad Idea (for most purposes)
Presentation transcript:

University of South Australia Distributed Reconfiguration Avishek Chakraborty, David Kearney, Mark Jasiunas

Outline  Motivation  Background  Our approach  Experiment  Conclusion

Motivation UAVs  Limited power  complex signal / image processing applications  FPGAs Swarm of UAVs  Constant surveillance – 52 hrs*  Cooperative applications: tracking, geo-referencing, bush fire monitoring  Can we do distributed computing with multiple FPGAs?  Migrating applications – dying UAV  Larger application – distribute it in the Swarm

Motivation New App UAV – 1 (FPGA) UAV – 2 (FPGA) Mobility of Reconfigurable Applications –If one UAV fails –Any other king of internal fault –Can the state of a FPGA be migrated during runtime? New App – lack of computational resources –Distribute over a network of FPGAs

Background App ReconfigME Hardware modules –Independent –Reusable –Third party Dynamic Reconfiguration –Slot based –ReconfigME Adaptive applications –Swapping of modules during runtime –Detection / Tracking

Background ReconfigME –A preemptive framework –A proxy based connection between SW and HW running on the FPGA board –Built to support streaming applications but application developers had to do the check pointing tasks Currently there are quite a few number of frameworks that supports slot / tile based reconfiguration ReconfigME

Application Development 1 – D and 2 – D reconfigurable framework exists –Runtime placement and routing –Not in the application development level Application development is difficult –Need to have core hardware knowledge –Even when third party modules are available; developers need to worry about state saving –Inter module communication More complicated with multiple FPGAs –Need a higher level simple model

Kahn Process Network - KPN Process Networks –Communicates via infinite FIFOs –Writing channel is unblocking but reading is blocking Benefits –Deterministic –Concurrency can be implemented safely –Inherently distributed in nature –Distributed memory Suits with module based design –Applications can be easily represented as KPN nodes

Kahn Process Network - KPN KPN buffers as registers –Application states are stored in registers –If the buffers are saved then application can be preempted restarted again from the same position –Hence the whole application can be migrated to another FPGA A high-level framework is needed –Storing / restoring of buffers –Connection between the modules –To use the modules in a plug and play fashion b a d c Capturing State of a distributed application

Kahn Process Network - KPN Implementation KPN buffers cannot be infinite –Though some have proposed virtually infinite buffers –The above is directed acyclic graph that may experience deadlock (Thomas M. Parks 1987) –Such constructs can be avoided –In KahnME buffering is done in software but this can be done in HW as well Buffer Limits

The KPN nodes as Agents –The nodes are autonomous –Migrates to the most suitable platform –A solution for distributed mapping Agent encapsulates the KPN node as well as the input buffer –Making them mobile with the state –Migrate from one FPGA to another Agent-based KPN nodes KPN node State-less State-full Buffer

Rule based Agents –Conditions for migration –The rule engine runs in a separate thread –Rules are written in a XML file Consists of HW and SW part –The SW part consists of the API to connect to the FPGA and the Migration Control Thread –HW part is the module to be placed on the FPGA Agent-based KPN nodes Processing Thread Migration Control Thread StatesModules ReconfigME API Rules Events Reactions Agent Platform

An agent nodes can be classified as: –Source, Sink, and Process –Source / Sink virtualizes the underlying hardware, like drivers –Basic elements of any application Subtle issues: migration of source and sinks –Can be migrated! but not physically –The agent will look for a similar source/sink in the swarm –What if the platform along with source / sink node is dies ? –Failure detections Agent-based KPN nodes Source Sink Process

Overall Model KahnME FPGA ReconfigME

Blue – B tracking experiment –Two Stationary UAV platforms and another Ground-Station –Each UAV platforms having Vertex 1000E FPGA (I know very slow  ) –The tracking application searches for a Blue-B Blue-B Tracker –The application is launched in the Ground-Station –it soon starts searching for appropriate platform –Once the Blue-B is found the agent will migrate to another platform if lost again; we did this by manually moving the camera Tracking Experiment

The three platforms

Migration Issues –The migrating agent’s size was 360kB. –Size of the sates 1500 bytes –Rest was of the Blue-B template !! (should have saved it locally but not realistic) –The migrating module consisted of 18.2 kB SW and 492 kB HW (EDIF) –Hence any typical agent will need around 1.5 kB to 672 kB of data during the migration More Improvements –By compressing the data –In practical situation migrations will be less –Newer board Tracking Experiment Results

This work represents a first try to run application in a geographically distributed network of FPGAS – Distributed Reconfiguration We have argued that there is a need to standardized state saving techniques to built frameworks for DPR – reusable modules We have proposed that KPN buffers can be treated as registers holding states We have proposed to treat KPN nodes as autonomous agents to solve the problem of distributed reconfiguration Conclusion