J ICOS’s Abstract Distributed Service Component Peter Cappello Computer Science Department UC Santa Barbara.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

Executional Architecture
M. Muztaba Fuad Masters in Computer Science Department of Computer Science Adelaide University Supervised By Dr. Michael J. Oudshoorn Associate Professor.
Computer Architecture Introduction to MIMD architectures Ola Flygt Växjö University
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
The road to reliable, autonomous distributed systems
Fall 2007cs4251 Distributed Computing Umar Kalim Dept. of Communication Systems Engineering 31/10/2007.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
A. Frank - P. Weisberg Operating Systems Introduction to Tasks/Threads.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 8: Implementing and Managing Printers.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
What is Concurrent Programming? Maram Bani Younes.
CHAPTER FIVE Enterprise Architectures. Enterprise Architecture (Introduction) An enterprise-wide plan for managing and implementing corporate data assets.
MapReduce: Simplified Data Processing on Large Clusters 컴퓨터학과 김정수.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
Operating System 4 THREADS, SMP AND MICROKERNELS
Exercises for Chapter 2: System models
CS480 Computer Science Seminar Introduction to Microsoft Solutions Framework (MSF)
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Architectural Styles.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
By Garrett Kelly. 3 types or reasons for distributed applications Data Data used by the application is distributed Computation Computation is distributed.
Remote Objects. The Situation Is there a better (in terms of programmer time) way to do network communications? What is it we’re trying to accomplish?
Advanced Eager Scheduling for Java-Based Adaptively Parallel Computing Michael O. Neary & Peter Cappello Computer Science Department UC Santa Barbara.
Operating System 2 Overview. OPERATING SYSTEM OBJECTIVES AND FUNCTIONS.
 Apache Airavata Architecture Overview Shameera Rathnayaka Graduate Assistant Science Gateways Group Indiana University 07/27/2015.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Architecture Models. Readings r Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 m Note: All figures from this book.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
J ICOS A Java-centric Internet Computing System Peter Cappello Computer Science Department UC Santa Barbara.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Computing For Embedded System IEEE Instrumentation and Measurement Technology Conference Budapest, Hungary, May 21-23, Author : Edward A. Lee UC.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Internet-Based TSP Computation with Javelin++ Michael Neary & Peter Cappello Computer Science, UCSB.
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
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.
Distributed Computing Paradigms1. 2 Paradigms for Distributed Applications Paradigm means “a pattern, example, or model.” In the study of any subject.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Java Distributed Object Model A remote object is one whose methods can be invoked from another JVM on a different host. It implements one or more remote.
Java-Based Parallel Computing on the Internet: Javelin 2.0 & Beyond Michael Neary & Peter Cappello Computer Science, UCSB.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
JICOS A Java-Centric Network Computing Service Peter Cappello & Christopher James Coakley Computer Science University of California, Santa Barbara.
COMP7330/7336 Advanced Parallel and Distributed Computing MapReduce - Introduction Dr. Xiao Qin Auburn University
J ICOS A Java-Centric Distributed Computing Service Peter Cappello & Chris Coakley Computer Science Department UC Santa Barbara.
Hongbin Li 11/13/2014 A Debugger of Parallel Mutli- Agent Spatial Simulation.
Introduction to threads
COMPSCI 110 Operating Systems
JICOS A Java-Centric Distributed Computing Service
CX: A Scalable, Robust Network for Parallel Computing
COMPSCI 110 Operating Systems
Software Design and Architecture
Chapter 1: Introduction
Chapter 4 Multithreading programming
Architectures of distributed systems Fundamental Models
Architectures of distributed systems Fundamental Models
Overview of RMI Architecture
Prof. Leonardo Mostarda University of Camerino
Atlas: An Infrastructure for Global Computing
Architectures of distributed systems Fundamental Models
Overview of RMI Architecture
Presentation transcript:

J ICOS’s Abstract Distributed Service Component Peter Cappello Computer Science Department UC Santa Barbara

2 Introduction Designing distributed systems correctly is hard. Object-orientation simplifies design. Reusable classes increase productivity. Abstraction leads to reusable classes. We contribute an abstract distributed service component (ADSC).

3 Introduction … Focus on some design issues. Why present this? –The design is non-trivial. –Enhancements described in terms of base design. –Different implementations benefit from issue elucidation. –The code can be downloaded:

4 J ICOS ’s Architecture J ICOS is designed to: Support scalable, adaptively parallel computation Tolerate basic faults Hide communication latency

5 J ICOS ’s Architecture … JICOS comprises 3 service component classes: Hosting Service Provider (HSP): –clients interact solely with the HSP. –HSP manages other service components Task server –A task space Host –Executes tasks

6 Hosting Service Provider Client Architecture …

7 Issue Priority Correctness Elegant Object-Oriented Design Programmability Performance Reliability Administrable Security

8 The ADSC is ServiceImpl ServiceImpl Service HostHspTaskServer

9 Anatomy of an ADSC A finite state machine Receives commands from peer services For each command: –[Update its state] –[Output command[s] to peer services] Finite State Machine With Output Command

10 Anatomy of an ADSC STATE COMMANDS Command Processor

11 RMI Thread executing receiveCommands() Input Command Queue Output Command Queue Command Processor Thread invoking receiveCommands() Anatomy of an ADSC Decouple communication from computation via multi-threading Output Command Queue Output Command Queue RMI Thread executing receiveCommands() RMI Thread executing receiveCommands()

12 RMI Thread executing receiveCommands() Input Command Queue Command Processor Thread invoking receiveCommands() Output command queue Output command queue Output Command Queue RMI Thread executing receiveCommands() RMI Thread executing receiveCommands()

13 RMI Thread executing receiveCommands() Input Command Queue Output Command Queue Command Processor Thread invoking receiveCommands() Anatomy of an ADSC Improve network & processor efficiency via multi-threading Output Command Queue Output Command Queue RMI Thread executing receiveCommands() RMI Thread executing receiveCommands() Command Processor Thread Command Processor Thread invoking receiveCommands() Thread invoking receiveCommands()

14 State Input Command Queue Command Processor Output queue Command Processor Command Processors Output queue Output Command Queues Department Anatomy of an ADSC Partitioning Command Classes

15 State Command Processor Output queue Command Processor Departments Output queue Output Command Queues Service Component RMI Thread executing receiveCommands() RMI Thread executing receiveCommands() RMI Threads executing receiveCommands() RMI Thread executing receiveCommands() RMI Thread executing receiveCommands() Threads invoking receiveCommands()

16 Command Processor Communication Processor Communication Processor Pool DepartmentQ Mail Proxy Manager ServiceCommand List ServiceImpl Proxy Command Synchronous

17 J ICOS Speedup:150-City TSP 1 processor: 6 hours, 18 minutes 52 processors: 8 minutes

18 Thanks! Questions?

19