CCA Common Component Architecture CCA Forum Tutorial Working Group Contributors: Introduction to the Ccaffeine Framework.

Slides:



Advertisements
Similar presentations
Introduction CSCI 444/544 Operating Systems Fall 2008.
Advertisements

The InterComm-based CCA MxN components Hassan Afzal Alan Sussman University of Maryland.
CP476 Internet Computing Browser and Web Server 1 Web Browsers A client software program that allows you to access and view Web pages on the Internet –Examples.
Installing and running COMSOL on a Windows HPCS2008(R2) cluster
 Introduction Introduction  Definition of Operating System Definition of Operating System  Abstract View of OperatingSystem Abstract View of OperatingSystem.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
1 ENG236: ENG236: C++ Programming Environment (2) Rocky K. C. Chang THE HONG KONG POLYTECHNIC UNIVERSITY.
Center for Component Technology for Terascale Simulation Software 122 June 2002Workshop on Performance Optimization via High Level Languages and Libraries.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
CCA Port, Component & Application Build Skeleton Templates “A new script toolkit for generating CCA build skeletons” Torsten Wilde and James Kohl Oak Ridge.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
A Hybrid Decomposition Scheme for Building Scientific Workflows Wei Lu Indiana University.
Tutorial C#. PLAN I. Introduction II. Example of C# program :Hello World III. How to use C# language GUI elements Primitives Types Expressions and operators.
The Pipeline Processing Framework LSST Applications Meeting IPAC Feb. 19, 2008 Raymond Plante National Center for Supercomputing Applications.
Capture and Replay Often used for regression test development –Tool used to capture interactions with the system under test. –Inputs must be captured;
Bill's Amazing Content Rotator jQuery Content Rotator.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 2: Operating-System Structures Operating.
Parallel Interactive Computing with PyTrilinos and IPython Bill Spotz, SNL (Brian Granger, Tech-X Corporation) November 8, 2007 Trilinos Users Group Meeting.
CCA Common Component Architecture CCA Forum Tutorial Working Group Contributors: Language Interoperability Using Gary.
Scons Writing Solid Code Overview What is scons? scons Basics Other cools scons stuff Resources.
Tutorial build Main ideas –Reuse as much previously obtained configuration information as possible: from Babel, cca-spec-babel, etc. –Extract all irrelevant.
CCA Common Component Architecture CCA Forum Tutorial Working Group Introduction to the Ccaffeine.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
CCA Common Component Architecture CCA Forum Tutorial Working Group Introduction to the Ccaffeine.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
SCIRun and SPA integration status Steven G. Parker Ayla Khan Oscar Barney.
Challenges in KeyStone Workshop Getting Ready for Hawking, Moonshot and Edison.
CCA Common Component Architecture Ccaffeine Convenience Scripts 1 setup_path script export SIDL_DLL_PATH=“” DL_PATH=$BABEL_ROOT/lib for i in `ls $TUT_COMP_ROOT.
Presented by An Overview of the Common Component Architecture (CCA) The CCA Forum and the Center for Technology for Advanced Scientific Component Software.
Debugging and Profiling With some help from Software Carpentry resources.
Processes Introduction to Operating Systems: Module 3.
NHSC PACS How to Use getObservation And saveObservation To Access and Save Herschel Data in HIPE Yi Mei (NHSC/Caltech) Y. Mei NHSC Data Workshop – August.
Dissecting the Windows CE Build Process James Y. Wilson Principal Engineer, Windows Embedded MVP CalAmp, Inc. James Y. Wilson Principal Engineer, Windows.
David Lawrence 7/8/091Intro. to PHP -- David Lawrence.
Getting Started with SIDL using the ANL SIDL Environment (ASE) ANL SIDL Team MCS Division, ANL April 2003 The ANL SIDL compilers are based on the Scientific.
Ch 1. A Python Q&A Session. Why do people use Python? Software Quality Developer productivity Program portability Support Libraries Component integration.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
CCA Common Component Architecture CCA Forum Tutorial Working Group Common Component Architecture.
CCA Common Component Architecture CCA Forum Tutorial Working Group Writing Components.
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
CCA Common Component Architecture CCA Forum Tutorial Working Group A Simple CCA Component Application.
CCA Common Component Architecture CCA Forum Tutorial Working Group Writing Components.
Debugging Lab Antonio Gómez-Iglesias Texas Advanced Computing Center.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
CCA Common Component Architecture CCA Forum Tutorial Working Group Common Component Architecture.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
CCA Common Component Architecture CCA Forum Tutorial Working Group Introduction to the Ccaffeine.
“Port Monitor”: progress & open questions Torsten Wilde and James Kohl Oak Ridge National Laboratory CCA Forum Quarterly Meeting Santa Fe, NM ~ October.
1 Seminar: Pervasive Computing 2004 Automatic mobile device configuration: Status & open challenges Stefan Hoferer Supervisor: Andreas Fasbender.
Start-SPPowerShell – Introduction to PowerShell for SharePoint Admins and Developers Paul BAker.
The Distributed Application Debugger (DAD)
CST 1101 Problem Solving Using Computers
Python’s Modules Noah Black.
Pipeline Execution Environment
Chapter 2: System Structures
The Linux Operating System
Introduction to Operating System (OS)
Quick Start Guide for Visual Studio 2010
SharePoint Saturday Omaha April 2016
Tutorial C#.
Programming Languages
Cmake Primer.
Jython Environment For Students (JES) Final Presentation
Chapter 7 –Implementation Issues
Outline Chapter 2 (cont) OS Design OS structure
Experience with the process automation at SORS
A First Program.
CMPE 135: Object-Oriented Analysis and Design March 14 Class Meeting
Presentation transcript:

CCA Common Component Architecture CCA Forum Tutorial Working Group Contributors: Introduction to the Ccaffeine Framework Ben Allan Rob Armstrong

2 CCA Common Component Architecture Ouline What is a CCA Framework and what is Ccaffeine? How can I slip my own component into Ccaffeine? How do I run Ccaffeine? Live Demo – does it work?

3 CCA Common Component Architecture CCA What CCA compliant framework is expected to do … Exchange interfaces among components without one component needing to know more about the other than the interface itself. Component 1Component 2 CCAServices 2 4 registerUsesPort("A") 1 addProvidesPort(,"A") = getPort("A") 3 Port

4 CCA Common Component Architecture Interactive Parallel Components: what Ccaffeine does Executable ccafe-client: –PVM, MPI, or whatever is used for communication between clients. –Muxer enforces “single process image” of SPMD parallel computing. HOWTO: –Build Ccaffeine –Run Ccaffeine

5 CCA Common Component Architecture Ccaffeine comes in two other “flavors” and a GUI. Single process executable: ccafe-single –really useful for debugging Batch executable: ccafe-batch –when all you want to do is run it.

6 CCA Common Component Architecture How to run Ccaffeine: Ccaffeine interactive language: “benSpeak” –used to configure batch and interactive sessions. –Allows useful “defaults.” –Allows the GUI to talk over a socket.

7 CCA Common Component Architecture Configuration Commands: interactive or as an “RC” file or as a Batch run Sample: #!ccaffeine bootstrap file. # don't change anything ABOVE this line # where to find components: path set /home/rob/cca/dccafe-classic/cxx/dc/component # load components into the “pallet” repository get StarterComponent repository get TimeStamper repository get Timer repository get PrinterComponent repository get RevalidateTest

8 CCA Common Component Architecture Creating a Ccaffeine component * Beyond the CCA spec, Ccaffeine needs: –Your component to be built compatibly, consider: Special libraries, shared and otherwise Compiler compat. (i.e. use the same compiler) Loaded dynamically, or statically? Defaults: libblas, linpack, g++, dynamic.so components –To know where your component is set path default/path:my/own/path –To know how to load your component needs a “.cca” text file. (auto gen’d in the example) Whirlwind tour –start from the tutorial PrinterComponent example. *classic style component not Babel

9 CCA Common Component Architecture First timers (even nth timers) start with an example and build from there. grand tour of PrinterComponentEG. –The CCA “Hello World” example: one component hands a string to another that prints it. Modify-able into a custom component. independent of, but uses the Ccaffeine build tree to save work../Framework/component/PrinterComponentEG manifest: genDLWrapperStrict, genDLIndex – scripts for mechanization PrinterComponentEG.hh – component header PrinterComponentEG.cxx – component source Makefile – usual runOneProcWGU.sed – runs Ccaffeine with your component

10 CCA Common Component Architecture Quick guide to creating your own component from the example source Change the name and implementation of these: PrinterComponentEG.hh – component header PrinterComponentEG.cxx – component source Change the make target: –COMPONENT_SRC = “MY_NEW_NAME.cxx” in: Makefile – usual Everything else should be automatic

11 CCA Common Component Architecture PrinterComponent takes a string and prints it out It exposes a single interface for use: “StringPortEG” from the file StringPortEG.hh:

12 CCA Common Component Architecture The component must inherit all the stuff of a “normal” CCA component Must implement gov::cca:Component –Choose to implement StringPortEG in the component –Header file: PrinterComponentEG.hh:

13 CCA Common Component Architecture The component must inherit all the stuff of a “normal” CCA component Implement setServices() Implement StringPortEG –implement setString()

14 CCA Common Component Architecture PrinterComponentEG Implementation File PrinterComponentEG.cxx:

15 CCA Common Component Architecture To change this implementation to your own, modify the Makefile Change the name of the Component from PrinterComponentEG to whatever –leave the extension.cxx Makefile (partial) listing: Type “make” and you’re ready to go.

16 CCA Common Component Architecture Time to see if it works... Use the script runOneProcWGUI –searches for current component and any that are one dir level above current. –An identical example is in./Framework/component/StarterComponent/ that the script will find. Creates a CcafeineRC file that initializes the framework with components (Ccaffeine standard and the examples here).

17 CCA Common Component Architecture What you are able to do now that you couldn’t before … Run on parallel cluster or proprietary machine with CCA components that you didn’t write. –Steve Jobs: “the best software is software I didn’t have to write” –not that he actually ever did. Develop incrementally & interactively in serial and parallel. –Detach, go have lunch and reattach. After everything is working, dump the script and run it in batch mode.