MWDriver: An Object-Oriented Library for Master-Worker Applications Mike Yoder, Jeff Linderoth, Jean-Pierre Goux February 26, 1999.

Slides:



Advertisements
Similar presentations
Threads, SMP, and Microkernels
Advertisements

MAP REDUCE PROGRAMMING Dr G Sudha Sadasivam. Map - reduce sort/merge based distributed processing Best for batch- oriented processing Sort/merge is primitive.
6.1 Synchronous Computations ITCS 4/5145 Cluster Computing, UNC-Charlotte, B. Wilkinson, 2006.
Christian Delbe1 Christian Delbé OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis November Automatic Fault Tolerance in ProActive.
Uncoordinated Checkpointing The Global State Recording Algorithm.
Jan 15, Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Iteration: a simple cash-only success scenario of Process Sale.
Chapter 19: Network Management Business Data Communications, 4e.
Jan Ron McFadyen1 Consider a simple cash-only Process Sale scenario 1. Customer arrives at a POS checkout with goods and/or services to purchase.
Piccolo – Paper Discussion Big Data Reading Group 9/20/2010.
1 Threads CSCE 351: Operating System Kernels Witawas Srisa-an Chapter 4-5.
A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte.
6th Biennial Ptolemy Miniconference Berkeley, CA May 12, 2005 Distributed Computing in Kepler Ilkay Altintas Lead, Scientific Workflow Automation Technologies.
MPICH-V: Fault Tolerant MPI Rachit Chawla. Outline  Introduction  Objectives  Architecture  Performance  Conclusion.
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
1 Software Testing and Quality Assurance Lecture 24 – Testing Interactions (Chapter 6)
Parallel Programming Models and Paradigms
3.5 Interprocess Communication
© The McGraw-Hill Companies, 2006 Chapter 5 Arrays.
CSE 160 – Lecture 10 Programs 1 and 2. Program 1 Write a “launcher” program to specify exactly where programs are to be spawned, gather output, clean.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
L22: SC Report, Map Reduce November 23, Map Reduce What is MapReduce? Example computing environment How it works Fault Tolerance Debugging Performance.
PowerBase for Organizing. Best Practices: Mapping Your Workflow To use PowerBase more effectively and efficiently, you can use workflows to ARTICULATE.
OMNET++. Outline Introduction Overview The NED Language Simple Modules.
Pregel: A System for Large-Scale Graph Processing
UAB Dynamic Monitoring and Tuning in Multicluster Environment Genaro Costa, Anna Morajko, Paola Caymes Scutari, Tomàs Margalef and Emilio Luque Universitat.
Parallel Programming Models Basic question: what is the “right” way to write parallel programs –And deal with the complexity of finding parallelism, coarsening.
1 Threads, SMP, and Microkernels Chapter 4. 2 Focus and Subtopics Focus: More advanced concepts related to process management : Resource ownership vs.
Resource Management Working Group SSS Quarterly Meeting November 28, 2001 Dallas, Tx.
Parallel Optimization Tools for High Performance Design of Integrated Circuits WISCAD VLSI Design Automation Lab Azadeh Davoodi.
MapReduce How to painlessly process terabytes of data.
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 5 Arrays.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation MongoDB Architecture.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February Session 11.
Condor Project Computer Sciences Department University of Wisconsin-Madison Master/Worker and Condor.
CSCI-100 Introduction to Computing
Message-Passing Computing Chapter 2. Programming Multicomputer Design special parallel programming language –Occam Extend existing language to handle.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen Department of Computer Sciences University of Wisconsin-Madison Jeff Linderoth, Argonne.
Module 8 Enhancing User Interface Responsiveness.
Jichuan Chang Computer Sciences Department University of Wisconsin-Madison MW – A Framework to Support.
Computer Game Design ActionScript is… Object-oriented programming Everything you do in ActionScript does something to some object* Some objects.
MW: A framework to support Master Worker Applications Sanjeev R. Kulkarni Computer Sciences Department University of Wisconsin-Madison
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories.
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.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
Miquel Angel Senar Unitat d’Arquitectura de Computadors i Sistemes Operatius Universitat Autònoma de Barcelona Self-Adjusting.
MWDriver: An Object-Oriented Library for Master-Worker Applications Mike Yoder, Jeff Linderoth, Jean-Pierre Goux June 3rd, 1999.
S.Linev: Go4 - J.Adamczewski, H.G.Essel, S.Linev ROOT 2005 New development in Go4.
Processes 2 Introduction to Operating Systems: Module 4.
Dynamic Tuning of Parallel Programs with DynInst Anna Morajko, Tomàs Margalef, Emilio Luque Universitat Autònoma de Barcelona Paradyn/Condor Week, March.
Mutual Exclusion Algorithms. Topics r Defining mutual exclusion r A centralized approach r A distributed approach r An approach assuming an organization.
C# Fundamentals An Introduction. Before we begin How to get started writing C# – Quick tour of the dev. Environment – The current C# version is 5.0 –
Mutual Exclusion -- Addendum. Mutual Exclusion in Critical Sections.
Chapter 19: Network Management
Jeremy Martin Alex Tiskin
16 Exception Handling.
#44/A, 3RD FLOOR, GEETHANJALI APARTMENTS, OPP. BAHAR CAFE
Introduction to Distributed Platforms
Duncan MacMichael & Galen Deal CSS 534 – Autumn 2016
System Sequence Diagrams and Operation Contracts
The Echo Algorithm The echo algorithm can be used to collect and disperse information in a distributed system It was originally designed for learning network.
PREGEL Data Management in the Cloud
湖南大学-信息科学与工程学院-计算机与科学系
Principles of Software Development
Fault Tolerance Distributed Web-based Systems
Interpret the execution mode of SQL query in F1 Query paper
Parallel Algorithm Models
Transactions in Distributed Systems
CS510 Operating System Foundations
MapReduce: Simplified Data Processing on Large Clusters
Presentation transcript:

MWDriver: An Object-Oriented Library for Master-Worker Applications Mike Yoder, Jeff Linderoth, Jean-Pierre Goux February 26, 1999

Outline Introduction to MWDriver The three classes –MW Driver –MW Task –MW Worker Limitations and future work

Introduction to MW Provide an object-oriented framework to develop master/worker applications Use Condor-PVM to handle acquiring / releasing nodes, message passing MW is fault tolerant –Handles workers arriving / leaving –Handles workers getting suspended and resumed Assigns tasks to workers

MW Driver Master “control center” Sits in a loop and handles messages regarding the state of all workers Must implement these pure virtual functions –get_userinfo() –setup_initial_tasks() –pack_worker_init_data() –act_on_completed_task()

MW Task A “Task” is one unit of work Holds both –Work to be done for that task –Results of that work after it’s done Must implement these pure virtual functions –pack_work(); –unpack_work(); –pack_results(); –unpack_results();

MW Worker Implements the worker program Steps –initialization –ask master for work –work –report results –repeat until dead Must implement these pure virtual functions –unpack_init_data() –execute_task()

Master Wid 1 Wid 2Wid 3 Wid 4 W1 W2W3 W4 Workers T2 T3 T4 T5 Running To Do T6 T7 T8... Global Data

Statistics Collected Each MWWorkerID instance keeps record of every “interesting” event. Includes –Creation / removal –Get work / complete work –Suspended / resumed MWStats class gathers statistics from these records Now reports: –Run duration –Worker total / suspended / working times –Picture (.gif) of entire run (optional)

Current Work –MW SamplingGolbon Zakeri –MW LShapedJeff Linderoth –MW NLinBBJean-Pierre Goux –MW DevelopmentMike Yoder

Future Work ‘If needed’ category –Heterogeneous set of workers –Discrete work ‘stages’ (aka ‘Work Steps’) ‘Would be nice’ category –User - level checkpointing of the master –More?