End User Tools. Target environment: Cluster and Grids (distributed sets of clusters) Grid Protocols Grid Resources at UW Grid Storage Grid Middleware.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

Database System Concepts and Architecture
FP7-INFRA Enabling Grids for E-sciencE EGEE Induction Grid training for users, Institute of Physics Belgrade, Serbia Sep. 19, 2008.
Introduction to Grid Computing Slides adapted from Midwest Grid School Workshop 2008 (
1 Software & Grid Middleware for Tier 2 Centers Rob Gardner Indiana University DOE/NSF Review of U.S. ATLAS and CMS Computing Projects Brookhaven National.
Globus Toolkit 4 hands-on Gergely Sipos, Gábor Kecskeméti MTA SZTAKI
Workload Management Workpackage Massimo Sgaravatto INFN Padova.
Data Grids: Globus vs SRB. Maturity SRB  Older code base  Widely accepted across multiple communities  Core components are tightly integrated Globus.
Distributed Application Management Using PLuSH Jeannie Albrecht, Christopher Tuttle, Alex C. Snoeren, and Amin Vahdat UC San Diego CSE {jalbrecht, ctuttle,
DataGrid Kimmo Soikkeli Ilkka Sormunen. What is DataGrid? DataGrid is a project that aims to enable access to geographically distributed computing power.
Milos Kobliha Alejandro Cimadevilla Luis de Alba Parallel Computing Seminar GROUP 12.
Grid Services at NERSC Shreyas Cholia Open Software and Programming Group, NERSC NERSC User Group Meeting September 17, 2007.
Chapter 1: Overview of Workflow Management Dr. Shiyong Lu Department of Computer Science Wayne State University.
Workload Management Massimo Sgaravatto INFN Padova.
UMIACS PAWN, LPE, and GRASP data grids Mike Smorul.
Globus Computing Infrustructure Software Globus Toolkit 11-2.
Swift: A Scientist’s Gateway to Campus Clusters, Grids and Supercomputers Swift project: Presenter contact:
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
WORKFLOWS IN CLOUD COMPUTING. CLOUD COMPUTING  Delivering applications or services in on-demand environment  Hundreds of thousands of users / applications.
Managing Workflows with the Pegasus Workflow Management System
CONDOR DAGMan and Pegasus Selim Kalayci Florida International University 07/28/2009 Note: Slides are compiled from various TeraGrid Documentations.
OSG End User Tools Overview OSG Grid school – March 19, 2009 Marco Mambelli - University of Chicago A brief summary about the system.
High Performance Louisiana State University - LONI HPC Enablement Workshop – LaTech University,
Workload Management WP Status and next steps Massimo Sgaravatto INFN Padova.
Introduction to Swift Parallel scripting for distributed systems Mike Wilde Ben Clifford Computation Institute,
The Pipeline Processing Framework LSST Applications Meeting IPAC Feb. 19, 2008 Raymond Plante National Center for Supercomputing Applications.
Workflow Project Luciano Piccoli Illinois Institute of Technology.
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Configuration Management (CM)
Introduction to Swift Parallel scripting for distributed systems Mike Wilde
Grid Resource Allocation and Management (GRAM) Execution management Execution management –Deployment, scheduling and monitoring Community Scheduler Framework.
Chapter 1: Overview of Workflow Management Dr. Shiyong Lu Department of Computer Science Wayne State University.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
CYBERINFRASTRUCTURE FOR THE GEOSCIENCES Data Replication Service Sandeep Chandra GEON Systems Group San Diego Supercomputer Center.
Workflow Project Status Update Luciano Piccoli - Fermilab, IIT Nov
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Code Applications Tamas Kiss Centre for Parallel.
Enabling Grids for E-sciencE EGEE-III INFSO-RI Using DIANE for astrophysics applications Ladislav Hluchy, Viet Tran Institute of Informatics Slovak.
TeraGrid CTSS Plans and Status Dane Skow for Lee Liming and JP Navarro OSG Consortium Meeting 22 August, 2006.
Ames Research CenterDivision 1 Information Power Grid (IPG) Overview Anthony Lisotta Computer Sciences Corporation NASA Ames May 2,
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Virtual Batch Queues A Service Oriented View of “The Fabric” Rich Baker Brookhaven National Laboratory April 4, 2002.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
WALSAIP Portal Automated Composition of Signal Processing Operators Mariana Mendoza Botero.
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Applications.
Ruth Pordes November 2004TeraGrid GIG Site Review1 TeraGrid and Open Science Grid Ruth Pordes, Fermilab representing the Open Science.
Enabling Grids for E-sciencE Astronomical data processing workflows on a service-oriented Grid architecture Valeria Manna INAF - SI The.
Introduction to Grids By: Fetahi Z. Wuhib [CSD2004-Team19]
6/23/2005 R. GARDNER OSG Baseline Services 1 OSG Baseline Services In my talk I’d like to discuss two questions:  What capabilities are we aiming for.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
End User Tools. Target environment: Cluster and Grids (distributed sets of clusters) Grid Protocols Grid Resources at UW Grid Storage Grid Middleware.
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
Grid Compute Resources and Job Management. 2 Grid middleware - “glues” all pieces together Offers services that couple users with remote resources through.
© Copyright AARNet Pty Ltd PRAGMA Update & some personal observations James Sankar Network Engineer - Middleware.
Grid Execution Management for Legacy Code Architecture Exposing legacy applications as Grid services: the GEMLCA approach Centre.
1 USC Information Sciences InstituteYolanda Gil AAAI-08 Tutorial July 13, 2008 Part IV Workflow Mapping and Execution in Pegasus (Thanks.
TTCN-3 Testing and Test Control Notation Version 3.
Managing LIGO Workflows on OSG with Pegasus Karan Vahi USC Information Sciences Institute
Job submission overview Marco Mambelli – August OSG Summer Workshop TTU - Lubbock, TX THE UNIVERSITY OF CHICAGO.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
Enabling Grids for E-sciencE Claudio Cherubino INFN DGAS (Distributed Grid Accounting System)
Accessing the VI-SEEM infrastructure
Workload Management Workpackage
Pegasus WMS Extends DAGMan to the grid world
Leigh Grundhoefer Indiana University
Weaving Abstractions into Workflows
Wide Area Workload Management Work Package DATAGRID project
Overview of Workflows: Why Use Them?
Mats Rynge USC Information Sciences Institute
Frieda meets Pegasus-WMS
Presentation transcript:

End User Tools

Target environment: Cluster and Grids (distributed sets of clusters) Grid Protocols Grid Resources at UW Grid Storage Grid Middleware Computing Cluster Grid Resources at ANL Grid Middleware Computing Cluster Grid Resources at UCSD Grid Middleware Computing Cluster Grid Client Application User Interface Grid Middleware Resource, Workflow And Data Catalogs Grid Storage Grid Storage Running a uniform middleware stack: Security to control access and protect communication (GSI)‏ Directory to locate grid sites and services: (VORS, MDS)‏ Uniform interface to computing sites (GRAM)‏ Facility to maintain and schedule queues of work (Condor-G)‏ Fast and secure data set mover (GridFTP, RFT)‏ Directory to track where datasets live (RLS)‏ 2

High level tools for grid environments: Workflow Management Systems

Why Workflow systems ? Advances in e-Sciences Increasing amount of scientific datasets Growing complexity of scientific analyses Procedures, algorythms 4 essential aspect of scientific computing addressed by workflows: Describing complex scientific procedures Automatic data derivation processes High performance computing to improve throughput and performance Provenance management and query

Design considerations New multi-core architecture -> radical changes in software design and development Concurrency ? How to write programs to take advantage of new architecture (greater computing and storage resources)

Scientific workflow systems Examples: DAGMan Provides a workflow engine that manages Condor jobs organized as DAGs (representing task precedence relationships) Focus on scheduling and execution of long running jobs Pegasus

Pegasus: Abstract Workflows - Pegasus input workflow description workflow “high-level language” only identifies the computations that a user wants to do devoid of resource descriptions devoid of data locations Pegasus a workflow “compiler” target language - DAGMan’s DAG and Condor submit files transforms the workflow for performance and reliability automatically locates physical locations for both workflow components and data finds appropriate resources to execute the components provides runtime provenance

Swift Parallel scripting for distributed systems Authors: Mike Wilde Ben Clifford

Why script in Swift? Orchestration of many resources over long time periods Very complex to do manually - workflow automates this effort Enables restart of long running scripts Write scripts in a manner that’s location- independent: run anywhere Higher level of abstraction gives increased portability of the workflow script (over ad-hoc scripting)

Swift is… A language for writing scripts that: process and produce large collections of data with large and/or complex sequences of application programs on diverse distributed systems with a high degree of parallelism persisting over long periods of time surviving infrastructure failures and tracking the provenance of execution

Swift programs A Swift script is a set of functions Atomic functions wrap & invoke application programs Composite functions invoke other functions Collections of persistent file structures (datasets) are mapped into this data model Members of datasets can be processed in parallel Statements in a procedure are executed in data- flow dependency order and concurrency Provenance is gathered as scripts execute

A simple Swift script type imagefile; (imagefile output) flip(imagefile input) { app { convert } imagefile stars ; imagefile flipped ; flipped = flip(stars);

Parallelism via foreach { } type imagefile; (imagefile output) flip(imagefile input) { app { convert } imagefile observations[ ] ; imagefile flipped[ ] ; foreach obs,i in observations { flipped[i] = flip(obs); } Name outputs based on inputs Process all dataset members in parallel

A Swift data mining example type pcapfile; // packet data capture - input file type type angleout;// “angle” data mining output type anglecenter; // geospatial centroid output (angleout ofile, anglecenter cfile) angle4 (pcapfile ifile) { app { angle4.sh } // interface to shell script } pcapfile infile ; // maps real file angleout outdata ; anglecenter outcenter ; (outdata, outcenter) = angle4(infile);

Parallelism and name mapping type pcapfile; type angleout; type anglecenter; (angleout ofile, anglecenter cfile) angle4 (pcapfile ifile) { app { angle4.sh } } pcapfile pcapfiles[] ; angleout of[] ; anglecenter cf[] ; foreach pf,i in pcapfiles { (of[i],cf[i]) = angle4(pf); } Name outputs based on inputs Iterate over dataset members in parallel

The Swift Scripting Model Program in high-level, functional model Swift hides issues of location, mechanism and data representation Basic active elements are functions that encapsulate application tools and run jobs Typed data model: structures and arrays of files and scalar types Control structures perform conditional, iterative and parallel operations

Automated image registration for spatial normalization Collaboration with James Dobson, Dartmouth [SIGMOD Record Sep05] AIRSN workflow expanded:AIRSN workflow:

Example: fMRI Type Definitions type Study { Group g[ ]; } type Group { Subject s[ ]; } type Subject { Volume anat; Run run[ ]; } type Run { Volume v[ ]; } type Volume { Image img; Header hdr; } type Image {}; type Header {}; type Warp {}; type Air {}; type AirVec { Air a[ ]; } type NormAnat { Volume anat; Warp aWarp; Volume nHires; } Simplified version of fMRI AIRSN Program (Spatial Normalization)‏

fMRI Example Workflow (Run resliced) reslice_wf ( Run r) { Run yR = reorientRun( r, "y", "n" ); Run roR = reorientRun( yR, "x", "n" ); Volume std = roR.v[1]; AirVector roAirVec = alignlinearRun(std, roR, 12, 1000, 1000, "81 3 3"); resliced = resliceRun( roR, roAirVec, "-o", "-k"); } Collaboration with James Dobson, Dartmouth (Run or) reorientRun (Run ir, string direction, string overwrite) { foreach Volume iv, i in ir.v { or.v[i] = reorient (iv, direction, overwrite); }

Running swift Fully contained Java grid client Can test on a local machine Can run on a PBS cluster Runs on multiple clusters over Grid interfaces

Data Flow Model This is what makes it possible to be location independent Computations proceed when data is ready (often not in source-code order) User specifies DATA dependencies, doesn’t worry about sequencing of operations Exposes maximal parallelism

Swift statements Var declarations Can be mapped Type declarations Assignment statements Assignments are type-checked Control-flow statements if, foreach, iterate Function declarations

Swift: Getting Started Documentation -> tutorial Get CI accounts Request: workstation, gridlab, teraport Get a DOEGrids Grid Certificate Virtual organization: OSG / OSGEDU Sponsor: Mike Wilde, Develop your Swift code and test locally, then: On PBS / TeraPort On OSG: OSGEDU Use simple scripts (Perl, Python) as your test apps

Swift: Summary Clean separation of logical/physical concerns XDTM specification of logical data structures + Concise specification of parallel programs SwiftScript, with iteration, etc. + Efficient execution (on distributed resources)‏ Grid interface, lightweight dispatch, pipelining, clustering + Rigorous provenance tracking and query Records provenance data of each job executed  Improved usability and productivity Demonstrated in numerous applications

Additional Information –Quick Start Guide: –User Guide: –Introductory Swift Tutorials:

DOCK - example Molecular dynamics application example Use Swift

DOCK -steps (0) Create valid proxy based on your certificate with ‘grid-proxy-init’. We assume your cert is mapped to the OSG VO. (1) Download and setup adem-osg toolkits svn co adem-osg (ADEM = Application Deployment and Management tool) This set of scripts is used to automate the end user process. It deals with: - the detecting the available OSG resources (creation of sites.xml file) - creation of remote working directories on these sites on which authentication tests were successful - creation of appropriate tc.data catalogs (that contain information about the sites and location of where DOCK application is installed) This way, many of the grid related processing steps are hidden from the users and performed via the scripts provided.

(2) Get the available grid sites and sites.xml for swift > auto-get-sites $GRID $VO (get the available grid sites within a given virtual organization in osg or osg-itb) e.g. “auto-get-sites osg osg” (3) prepare-for-dock-swift-submit >./prepare-for-dock-swift-submit $VO $Grid-sites-file (e.g../prepare-for-dock-swift-submit osg $ADEM_HOME/tmp/osg- osg-avail-sites-$DATE.txt)

(4) update.swift source file (5) Submit the job $ swift -sites.file../swift-sites.xml -tc.file./dock-tc.data grid-many-dock6-auto.swift

siteJOB_STARTJOB_ENDAPPLICATION_EXCEPTIONJOB_CANCELEDunknowntotal AGLT CIT_CMS_T GLOW-CMS NYSGRID-CCR-U OSG_LIGO_MIT SMU_PHY TTU-ANTAEUS

Tools for graphical log processing