DNA REASSEMBLY Using Javaspace Sung-Ho Maeung Laura Neureuter.

Slides:



Advertisements
Similar presentations
M. Muztaba Fuad Masters in Computer Science Department of Computer Science Adelaide University Supervised By Dr. Michael J. Oudshoorn Associate Professor.
Advertisements

JavaSpaces and TSpaces Theresa Tamash CDA 5937 November 4, 2002.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Copyright © 2001 Qusay H. Mahmoud RMI – Remote Method Invocation Introduction What is RMI? RMI System Architecture How does RMI work? Distributed Garbage.
Reference: Message Passing Fundamentals.
David Adams ATLAS DIAL Distributed Interactive Analysis of Large datasets David Adams BNL March 25, 2003 CHEP 2003 Data Analysis Environment and Visualization.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
Previous and Ongoing Research. Component Remoting Technology Map.
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 5: Distributed Objects.
Parallel Computation in Biological Sequence Analysis Xue Wu CMSC 838 Presentation.
Communication in Distributed Systems –Part 2
Client-Server Communication Sockets Remote Procedure Calls Remote Method Invocation (Java)
490dp Prelude I: Group Membership Prelude II: Team Presentations Tuples Robert Grimm.
An Introduction to Internetworking. Algorithm for client-server communication with UDP (connectionless) A SERVER A CLIENT Create a server-socket (listener)and.
PRASHANTHI NARAYAN NETTEM.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. The Proxy Design Pattern (1) –A structural design pattern.
Fundamentals of Python: From First Programs Through Data Structures
Lecture 2 – MapReduce CPE 458 – Parallel Programming, Spring 2009 Except as otherwise noted, the content of this presentation is licensed under the Creative.
ADLB Update Recent and Current Adventures with the Asynchronous Dynamic Load Balancing Library Rusty Lusk Mathematics and Computer Science Division Argonne.
WORKFLOW IN MOBILE ENVIRONMENT. WHAT IS WORKFLOW ?  WORKFLOW IS A COLLECTION OF TASKS ORGANIZED TO ACCOMPLISH SOME BUSINESS PROCESS.  EXAMPLE: Patient.
MapReduce.
TupleSpaces Revisited: Linda to TSpaces Ben Y. Zhao 13 July, 1998 UC Berkeley Computer Science Division.
Introduction to Parallel Programming MapReduce Except where otherwise noted all portions of this work are Copyright (c) 2007 Google and are licensed under.
Christopher Jeffers August 2012
Networking Basics TCP/IP TRANSPORT and APPLICATION LAYER Version 3.0 Cisco Regional Networking Academy.
Chapter 9 Message Passing Copyright © Operating Systems, by Dhananjay Dhamdhere Copyright © Operating Systems, by Dhananjay Dhamdhere2 Introduction.
GridFS Targeting Data Sharing in Grid Environments Marcelo Nery dos Santos / Renato Cerqueira PUC-Rio, Brazil Presented by: Francisco Silva.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 4: Threads.
Introduction to distributed systems Dr. S. Indran 23 January 2004.
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
The Pipeline Processing Framework LSST Applications Meeting IPAC Feb. 19, 2008 Raymond Plante National Center for Supercomputing Applications.
1 The Map-Reduce Framework Compiled by Mark Silberstein, using slides from Dan Weld’s class at U. Washington, Yaniv Carmeli and some other.
Cli/Serv.: rmiCORBA/131 Client/Server Distributed Systems v Objectives –introduce rmi and CORBA , Semester 1, RMI and CORBA.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Algoval: Evaluation Server Past, Present and Future Simon Lucas Computer Science Dept Essex University 25 January, 2002.
Subject: Operating System.
Swapping to Remote Memory over InfiniBand: An Approach using a High Performance Network Block Device Shuang LiangRanjit NoronhaDhabaleswar K. Panda IEEE.
Client Call Back Client Call Back is useful for multiple clients to keep up to date about changes on the server Example: One auction server and several.
 Remote Method Invocation  A true distributed computing application interface for Java, written to provide easy access to objects existing on remote.
Coordination Models and Languages Part I: Coordination Languages and Linda Part II: Technologies based on Tuple space concept beyond Linda Part III: Comparison.
NA-MIC National Alliance for Medical Image Computing ParaView Server Manager Berk Geveci Andy Cedilnik.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
More on Adaptivity in Grids Sathish S. Vadhiyar Source/Credits: Figures from the referenced papers.
Reflecting Proxies Mini != Small Jon Babbage Tony Lambert Michael Malinak Paul Middlin CSE870 Advanced Software Engineering, Spring 2001 Instructor: Dr.
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems David Goldschmidt, Ph.D.
Grid Computing Environment Shell By Mehmet Nacar Las Vegas, June 2003.
JINI Coordination-Based System By Anthony Friel * David Kiernan * Jasper Wood.
DIS PROPOSAL - Distributed Data Warehouse - R 蔣孟儒 R 龍秋明.
Eric Tryon Brian Clark Christopher McKeowen. System Architecture The architecture can be broken down to three different basic layers Stub/skeleton layer.
Distributed Objects Exercises in. Overview Interface Exercises How does an Object Reference look? How long can/should a client store one? How do you tell.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Data Structures and Algorithms in Parallel Computing Lecture 4.
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.
Remote Method Invocation by James Hunt, Joel Dominic, and Adam Mcculloch.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
MSE Presentation 3 By Lakshmikanth Ganti Under the Guidance of Dr. Virgil Wallentine – Major Professor Dr. Paul Smith – Committee Member Dr. Mitch Neilsen.
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
ZOOKEEPER. CONTENTS ZooKeeper Overview ZooKeeper Basics ZooKeeper Architecture Getting Started with ZooKeeper.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Computer Systems Architecture Edited by Original lecture by Ian Sunley Areas: Computer users Basic topics What is a computer?
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
Distributed and Parallel Processing George Wells.
Operating Systems {week 11a}
Java Distributed Object System
Presentation transcript:

DNA REASSEMBLY Using Javaspace Sung-Ho Maeung Laura Neureuter

Overview Project Description Features of Javaspace Framework - Master/Worker Model - Design Diagram - Remote Method Invocation ( RMI ) Description of Algorithm Performance Lessons Learned Improvements Questions

Project Description After DNA strand has been split apart by the “shotgun” approach in order to perform sequencing, it needs to be put back together into original sequence. We used Javaspace to do this “putting back together” of the individual segments.

Features of Javaspace Javaspaces technology is a simple mechanism for dynamic communication, coordination, and sharing of objects between Java clients and servers. In a distributed application, Javaspace acts as a virtual space between providers and requesters of objects. One Advantage: Provides synchronization Javaspace is similar to C-Linda approach, except uses Java. Workers store and access “objects” rather than “tuples”.

Visual Representation of Javaspace

Framework – Application Patterns Many different types of patterns can be represented using Javaspace: - The Replicated-Worker Pattern - The Command Pattern - The Marketplace Pattern - others. We chose to use the Master/Worker approach to solving the reassembly problem.

Framework – Design Diagram

Framework – Remote Method Invocation (RMI) 1/3 Distributed System using Javaspace Worker as Server Master as Client RMIEntry Host name Port

Framework – RMI 2/3 Worker –Put RMIEntry into javaspace Host name, port Master –Get the RMIEntry from javasapce –Make RMI connection –Execute a function of the worker

Framework – RMI 3/3

Algorithm Description We parse a file into random length segments with overlaps. Each worker is assigned a random segment by the master. The rest are thrown out into javaspace. Each worker then reads a segment from javaspace and checks to see if its ends match the one it is holding. If yes, it combines the segments, and uses this new one to match against. If not, it reads another. This continues until each worker has checked all segments. (exhaustive). When all work is done, master gathers results and prints

Performance Evaluation

What We Learned JavaSpace Technology RMI Technology Javaspace is fun (but slow) Javaspace might not be the right technology to do reassembly Not a huge efficiency difference between “parallel” and “distributed” with this type of problem.

Improvements Algorithm needs work. Methods of synchronization need to be worked on. Load balancing Fuzzy matching implementation

Questions?