ADASS XV ACS as the Framework for Integrating Offline Data Reduction in ALMA Steve Harrington, NRAO.

Slides:



Advertisements
Similar presentations
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 2 Getting Started with Java.
Advertisements

1 Exceptions: An OO Way for Handling Errors Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS) Laboratory Dept. of Computer Science and Software.
Chapter 6 Structures and Classes. Copyright © 2006 Pearson Addison-Wesley. All rights reserved. 6-2 Learning Objectives Structures Structure types Structures.
Copyright © 2007 CA, made available under the Eclipse Public License 1 COSMOS DC & MR 2 Architecture June 2007 MR 2 Team.
Requirements. UC&R: Phase Compliance model –RIF must define a compliance model that will identify required/optional features Default.
© 2010 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Chapter 11: Structure and Union Types Problem Solving & Program Design.
Peer-to-peer and agent-based computing P2P Algorithms.
CS4026 Formal Models of Computation Running Haskell Programs – power.
1 Automating Auto Tuning Jeffrey K. Hollingsworth University of Maryland
Procedural Programming in C# Chapters Objectives You will be able to: Describe the most important data types available in C#. Read numeric values.
Hamilton Venus Software User Interface Options
1.A computer game is an example of A.system software; B.a compiler; C.application software; D.hardware; E.none of the above. 2.JVM stands for: A.Java Virtual.
1 Arrays An array is a special kind of object that is used to store a collection of data. The data stored in an array must all be of the same type, whether.
Introduction to Programming using Matlab Session 2 P DuffourJan 2008.
1 Chapter 4 The while loop and boolean operators Samuel Marateck ©2010.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter Four Defining Your Own Classes.
Purpose : To convert this string to a new character array. Return Type : char[ ] Parameters : none Declaration : public char[ ] toCharArray() Returns.
Control Structures Selections Repetitions/iterations
Chapter 10: The Traditional Approach to Design
Systems Analysis and Design in a Changing World, Fifth Edition
Method Parameters and Overloading. Topics The run-time stack Pass-by-value Pass-by-reference Method overloading Stub and driver methods.
Mobyle XML Vivek Gopalan Version history: First version for training Nick and Art – Vivek, 02/07/2011.
C# Console Application
Functions Most useful programs are much larger than the programs that we have considered so far. To make large programs manageable, programmers modularize.
1 Fall 2008ACS-1903 for Loop Reading files String conversions Random class.
Chapter 11: Classes and Data Abstraction
Guide To UNIX Using Linux Third Edition
Chapter 8: Introduction to High-level Language Programming Invitation to Computer Science, C++ Version, Third Edition.
CONTROL STATEMENTS Lakhbir Singh(Lect.IT) S.R.S.G.P.C.G. Ludhiana.
C++ Functions. 2 Agenda What is a function? What is a function? Types of C++ functions: Types of C++ functions: Standard functions Standard functions.
© Dr. A. Williams, Fall Present Software Quality Assurance – JUnit Lab 1 JUnit A unit test framework for Java –Authors: Erich Gamma, Kent Beck Objective:
1 Shawlands Academy Higher Computing Software Development Unit.
High-Level Programming Languages: C++
Software Architecture for ColdFusion Developers Unit 4: Application Events and Global Variables.
Designing For Testability. Incorporate design features that facilitate testing Include features to: –Support test automation at all levels (unit, integration,
SAX Parsing Presented by Clifford Lemoine CSC 436 Compiler Design.
© The McGraw-Hill Companies, 2006 Chapter 4 Implementing methods.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
ALMA Integrated Computing Team Coordination & Planning Meeting #1 Santiago, April 2013 Relational APDM & Relational ASDM models effort done in online.
Lec 6 Data types. Variable: Its data object that is defined and named by the programmer explicitly in a program. Data Types: It’s a class of Dos together.
Chapter 11: Classes and Data Abstraction. C++ Programming: Program Design Including Data Structures, Fourth Edition2 Objectives In this chapter, you will:
Slide 1 Extending Tuscany Raymond Feng Apache Tuscany committer.
1 Functions every C++ program must have a function called main program execution always begins with function main any other functions are subprograms and.
Topic 1 Object Oriented Programming. 1-2 Objectives To review the concepts and terminology of object-oriented programming To discuss some features of.
The Software Development Process
1 Methods Introduction to Methods Passing Arguments to a Method More About Local Variables Returning a Value from a Method Problem Solving with Methods.
Week 14 Introduction to Computer Science and Object-Oriented Programming COMP 111 George Basham.
Pipeline Basics Jared Crossley NRAO NRAO. What is a data pipeline?  One or more programs that perform a task with reduced user interaction.  May be.
Chapter 10: Classes and Data Abstraction. Objectives In this chapter, you will: Learn about classes Learn about private, protected, and public members.
Operator Overloading Week 5.
CS-1030 Dr. Mark L. Hornick 1 Basic C++ State the difference between a function/class declaration and a function/class definition. Explain the purpose.
Object Oriented Software Development 4. C# data types, objects and references.
C++ Programming: From Problem Analysis to Program Design, Fourth Edition Chapter 12: Classes and Data Abstraction.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 11: Classes and Data Abstraction.
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 05: Classes and Data Abstraction.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Chapter 10: Classes and Data Abstraction. Classes Object-oriented design (OOD): a problem solving methodology Objects: components of a solution Class:
1.1: Objects and Classes msklug.weebly.com. Agenda: Attendance Let’s get started What is Java? Work Time.
Control structures in C by Dr P.Padmanabham Professor (CSE)&Director Bharat Institute of Engineering &Technology Hyderabad Mobile
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
FUNCTIONS (C) KHAERONI, M.SI. OBJECTIVE After this topic, students will be able to understand basic concept of user defined function in C++ to declare.
Functional Processing of Collections (Advanced) 6.0.
Intro To Classes Review
Specifications What? Not how!.
Functional Processing of Collections (Advanced)
Java Programming: Guided Learning with Early Objects
Keyboard Input and Screen Display ––––––––––– Interactive Programming
Introduction to Python
Java IO and Testing made simple
References Revisted (Ch 5)
Presentation transcript:

ADASS XV ACS as the Framework for Integrating Offline Data Reduction in ALMA Steve Harrington, NRAO

ADASS XV 2 What is a Task? For our purposes, a task is:For our purposes, a task is: –A concise process which starts up, performs some processing, and then shuts down –It may or may not require additional services from the ALMA Common Software (ACS) framework –It should be able to run, at least in a locally hosted manner, whether or not ACS services are present –It requires input data in the form of (a set of) parameters

ADASS XV 3 What is a Parameter Set? For our purposes, a Parameter Set is:For our purposes, a Parameter Set is: –A grouping of individual parameters which collectively are used as input to a particular task –Individual parameters may be of various types, e.g. string, int, double, boolean, arrays of these simple types, etc. –Parameters may have default values, constraints (e.g. max/min), list of (enumerated) valid values, associated help text, etc.

ADASS XV 4 The big picture

ADASS XV 5 Task Use Cases

ADASS XV 6 Task meta-data (XML) written by Task author Simple Sample Task simple example of a task msname true e.g. myvladata.ms name of output ms centerfreq true e.g GHz frequency of data to extract iterations false short help goes here verbose help goes here

ADASS XV 7 Task Implementation – who does what

ADASS XV 8 In-memory model of Parameter Set

ADASS XV 9 In-memory model of Parameter Set Definition (Meta-data)

ADASS XV 10 Example of a Task’s go() implementation void cleanImpl::go(ParameterSet& pset, TaskServices& taskServices) { // instantiate an AIPS++ imager component ImagerComp comp; // instantiate an AIPS++ record for the imager component’s parameters Record aipsParamSet(comp.getParams()); // convert the ParameterSet passed to go() by ACS Task logic into an AIPS++ Record // conversion involves querying ParameterSet and setting items in AIPS++ Record convertPset(pset, aipsParamSet); // set the AIPS++ imager component’s parameters with the AIPS++ record from above comp.setParams(aipsParamSet); // call the clean method on the AIPS++ imager component comp.clean(); }

ADASS XV 11 Running a Task For the Task User, running a task involves:For the Task User, running a task involves: –simply executing a command at the command prompt Input Parameters:Input Parameters: – passed as name=value pairs on the command line, e.g. simpleTask iterations=10 msname=test intArray=1,2,3 simpleTask iterations=10 msname=test intArray=1,2,3 –Can also be passed in via an XML file; command-line parameters are transformed into XML so XML is used in all cases

ADASS XV 12 Running a Task – what happens? Parameters from the command-line are parsed and converted into XML (unless XML is provided)Parameters from the command-line are parsed and converted into XML (unless XML is provided) Two XML docs, one written in advance by Task Author (i.e. task meta-data), one created (or provided) at run-time (i.e. run-time values), are then validated against two corresponding XML schemasTwo XML docs, one written in advance by Task Author (i.e. task meta-data), one created (or provided) at run-time (i.e. run-time values), are then validated against two corresponding XML schemas If validation succeeds, go() method is invoked which does the Task’s work. Otherwise, an error describing the problem(s) is generated.If validation succeeds, go() method is invoked which does the Task’s work. Otherwise, an error describing the problem(s) is generated.

ADASS XV 13 Offline team: future direction

ADASS XV 14Questions?