The Arabica Project A distributed scientific computing project based on a cluster computer and Java technologies. Daniel D. Warner Dept. of Mathematical.

Slides:



Advertisements
Similar presentations
Master/Slave Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Advertisements

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.
Multiple Processor Systems Chapter Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
Client/Server Architecture
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Section 6.1 Explain the development of operating systems Differentiate between operating systems Section 6.2 Demonstrate knowledge of basic GUI components.
Section 2.1 Identify hardware Describe processing components Compare and contrast input and output devices Compare and contrast storage devices Section.
Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI CSCI.
Parallel Computing The Bad News –Hardware is not getting faster fast enough –Too many architectures –Existing architectures are too specific –Programs.
STRATEGIES INVOLVED IN REMOTE COMPUTATION
Lecture 29 Fall 2006 Lecture 29: Parallel Programming Overview.
1 Developing Native Device for MPJ Express Advisor: Dr. Aamir Shafi Co-advisor: Ms Samin Khaliq.
9/13/20151 Threads ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original slides.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Multiple Processor Systems Chapter Multiprocessors 8.2 Multicomputers 8.3 Distributed systems.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Jini Architecture Introduction System Overview An Example.
Computer Software Types Three layers of software Operation.
COMPUTERS in the CLASSROOM
 2001 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers, the Internet and the World Wide Web Outline 1.1Introduction 1.2What.
CIS250 OPERATING SYSTEMS Chapter One Introduction.
I NTRODUCTION TO N ETWORK A DMINISTRATION. W HAT IS A N ETWORK ? A network is a group of computers connected to each other to share information. Networks.
Introduction TO Network Administration
I NTRODUCTION TO N ETWORK A DMINISTRATION. W HAT IS A N ETWORK ? A network is a group of computers connected to each other to share information. Networks.
Computer Performance. Hard Drive - HDD Stores your files, programs, and information. If it gets full, you can’t save any more. Measured in bytes (KB,
VIRTUAL NETWORK COMPUTING SUBMITTED BY:- Ankur Yadav Ashish Solanki Charu Swaroop Harsha Jain.
Introduction to Computers - Hardware
OPERATING SYSTEM CONCEPTS AND PRACTISE
Android Mobile Application Development
Applied Operating System Concepts
Section 2.1 Section 2.2 Identify hardware
 2001 Prentice Hall, Inc. All rights reserved.
Java Distributed Object System
Netscape Application Server
Chapter 1 – Introduction to Computers, the Internet, and the Web
Hardware and Software Hardware refers to the physical devices of the computer system e.g. monitor, keyboard, printer, RAM etc. Software is a set of programs,
Chapter 1: A Tour of Computer Systems
Popular Operating Systems
UNIV 103 CS Majors Seminar Dr. Blaise W. Liffick Fall 2017.
Lecture # 1 M.Sc / BS(CS)/ BS(I.T) DPT.
Operating Systems : Overview
Chapter 17: Database System Architectures
Multiple Processor Systems
Operating Systems : Overview
Chapter 3 Hardware and software 1.
Operating System Concepts
Bina Ramamurthy Chapter 9
Introduction to Operating Systems
An Introduction of Jini Technology
Operating Systems : Overview
Bina Ramamurthy Chapter 9
Introduction to Operating Systems
Chapter 3 Hardware and software 1.
Operating Systems : Overview
Bina Ramamurthy Chapter 9
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
LO2 – Understand Computer Software
Basic organizations and memories in distributed computer systems
Operating System Overview
Operating System Concepts
Distributed Systems and Concurrency: Distributed Systems
Chapter 1 – Introduction to Computers and C++ Programming
Presentation transcript:

The Arabica Project A distributed scientific computing project based on a cluster computer and Java technologies. Daniel D. Warner Dept. of Mathematical Sciences Clemson University warner@clemson.edu

Historical Trends Complex simulations are one of a kind Supported by a team of experts Special hardware Vector processors,, Hypercubes, Clusters CPU speeds have increased faster than communication speeds Sophistication in software packaging libraries, objects, components, frameworks

The Arabica Goals Researcher Efficiency Programmer Productivity Help scientists do science. Programmer Productivity Dramatically improve programming. Hardware Performance Cluster computing. Leverage the 10% of the code that uses 90% of the time.

Researcher Efficiency Researcher Team Simultaneous access over the Internet. Simultaneous and modifiable views of the same running simulation. Chat support. Other Portal Properties List of services with web documentation. Authorization for each service.

Programmer Productivity Use Java Technologies to build distributed applications. Use Java wrappers to utilize existing application code, particularly well-tested Fortran and C libraries LAPack and BLAMs Exploit code migration to minimize code administration

Hardware Performance Use distributed computing at the level of coarse grained parallelism Use low level code (C, assembly, or optimized Fortran) to achieve optimal on-chip performance of key kernels. Use JNI, Java’s Native Interface to tie low level code into distributed objects.

Quick Tour of the Arabica cluster Robert Simms, the grad student who got the cluster up and running, working with Henrici, the master computer. Henrici is a 500 MHz PowerMac G4 with 256 MB of ram and 15 GB of hard drive. Henrici is running Mac OS X with Apple’s Java 1.2

Quick Tour of the Arabica cluster The first cabinet contains six 66 MHz PowerMac 6100s with 16 MB of ram and 500 MB of hard drive. Each machine is running the MkLinux operating system with Blackdown Java 1.3.

Quick Tour of the Arabica cluster These slave machines are awaiting power and ethernet cables. Both Mac OS X and MkLinux are based on Carnegie Mellon’s Mach kernel, which supports lightweight threads. The JVMs on all systems are running with native threads.

Quick Tour of the Arabica cluster These slave machines are awaiting power and ethernet cables.

Java Technologies RMI - RPC with a difference JINI JavaSpaces Code migration, only need interfaces String based lookup service JINI Object and attribute lookup service Transaction service. JavaSpaces Linda style system

Java Technologies - RMI Let’s computing be done on the appropriate machine Can start with thin clients Can start with thin servers Program to the interface Remote and Migrateable are simple design decisions

Java Technologies - JINI Flexibility Register a new service and its available Reliability Leases and Transactions allow for communication failures and crashes

Java Technologies - JavaSpaces Based on Linda David Gerlenter introduced “tuple” spaces in 1982 Decouples sender and receiver Partial matching Adds Objects Stores serialized objects with attributes Matches these against “template” objects

Examples HDF Viewer Fraqctal Microsope GalaxSee Clique Tree Solver Graphical and spreadsheet views of data Fraqctal Microsope Interactive Mandelbrot set GalaxSee Interactive “galaxy” simulation Clique Tree Solver Solves sparse linear systems of equations

HDF Viewer NCSA’s Hierarchical Data Format Model, View, Controller Preliminary development, Spring 2000. Starts with selection of data files. Model, View, Controller Multiple views of the same data set. Can edit data in one view and see it reflected in all the other views. Model is a remote object.

Fractal Microscope Client Manager Slaves Supplies region Draws the data selects the color scheme Manager Drops tasks into the JavaSpace. Assembles results and sends to client. Slaves Grab tasks and compute the results.

GalaxSee Client Manager Slaves Specifies number and properties of stars Interactive 3D display of stars Manager Drops tasks into the JavaSpace. Assembles results and sends to client. Slaves Grab tasks and compute results.

Clique Tree Solver Manager Slaves Finds the clique-tree ordering Determines submatrices Manages the hierarchical assembly Slaves Factor submatrices.

Deliverables Open source project Technical notes Courses Frameworks MTHSC 983, SS II 2001 MTHSC 983, Spring 2002 Frameworks Application Examples