Components for Beam Dynamics Douglas R. Dechow, Tech-X Lois Curfman McInnes, ANL Boyana Norris, ANL With thanks to the Common Component Architecture (CCA)

Slides:



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

DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
Priority Research Direction: Portable de facto standard software frameworks Key challenges Establish forums for multi-institutional discussions. Define.
© 2006 IBM Corporation IBM Software Group Relevance of Service Orientated Architecture to an Academic Infrastructure Gareth Greenwood, e-learning Evangelist,
1 IBM SanFrancisco Product Evaluation Negotiated Option Presentation By Les Beckford May 2001.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Design Patterns.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
UML and Object Oriented Concepts
Chapter 2 The Origins of Software
Center for Component Technology for Terascale Simulation Software (aka Common Component Architecture) (aka CCA) Rob Armstrong & the CCA Working Group Sandia.
An Automated Component-Based Performance Experiment and Modeling Environment Van Bui, Boyana Norris, Lois Curfman McInnes, and Li Li Argonne National Laboratory,
Design Patterns.
Center for Component Technology for Terascale Simulation Software 122 June 2002Workshop on Performance Optimization via High Level Languages and Libraries.
CCA Forum Fall Meeting October CCA Common Component Architecture Update on TASCS Component Technology Initiatives CCA Fall Meeting October.
OpenAlea An OpenSource platform for plant modeling C. Pradal, S. Dufour-Kowalski, F. Boudon, C. Fournier, C. Godin.
High-Performance Component- Based Scientific Software Engineering Boyana Norris Argonne National Laboratory CSDMS Meeting:
Role of Deputy Director for Code Architecture and Strategy for Integration of Advanced Computing R&D Andrew Siegel FSP Deputy Director for Code Architecture.
Chapter 2 The Origins of Software Modern Systems Analysis and Design.
Source: J. Hoffer ,J. George, J. Valacich
CQoS Update Li Li, Boyana Norris, Lois Curfman McInnes Argonne National Laboratory Kevin Huck University of Oregon.
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 11 : Frameworks SWE 316: Software Design and Architecture  To understand.
CSE 303 – Software Design and Architecture
Babel F2003 Wrap-up Stefan Muszala*, Tom Epperly(LLNL), Nanbor Wang* Funded by DOE (TASCS) Grant No DE-FC02-07ER25805, DOE Grant No DE-FG02-04ER84099 and.
CCA Common Component Architecture Manoj Krishnan Pacific Northwest National Laboratory MCMD Programming and Implementation Issues.
Magnetic Field Measurement System as Part of a Software Family Jerzy M. Nogiec Joe DiMarco Fermilab.
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
CcaEcloud Phase I Wrap-up Phase I Doe SBIR Stefan Muszala, PI DOE Grant No DE-FG02-08ER85152 Tech-X Corporation Boulder, CO Updates: onRamp, FACETS+Babel,
High Level Architecture Overview and Rules Thanks to: Dr. Judith Dahmann, and others from: Defense Modeling and Simulation Office phone: (703)
CCA Common Component Architecture CCA Forum Tutorial Working Group Welcome to the Common.
CCA Common Component Architecture CCA Forum Tutorial Working Group Welcome to the Common.
Universal Data Access and OLE DB. Customer Requirements for Data Access Technologies High-Performance access to data Reliability Vendor Commitment Broad.
Tech-X Corporation for CCA Overview Tech-X Corporation is an entrepreneurial and dynamic enterprise committed to scientific and technical excellence and.
Nick Draper 05/11/2008 Mantid Manipulation and Analysis Toolkit for ISIS data.
Plans and Opportunities Involving Beam Dynamics Components ComPASS SAP Project and Phase I and II Doe SBIR Boyana Norris (ANL) In collaboration with Stefan.
Grid Computing Research Lab SUNY Binghamton 1 XCAT-C++: A High Performance Distributed CCA Framework Madhu Govindaraju.
Building an Electron Cloud Simulation using Bocca, Synergia2, TxPhysics and Tau Performance Tools Phase I Doe SBIR Stefan Muszala, PI DOE Grant No DE-FG02-08ER85152.
SAP Participants: Douglas Dechow, Tech-X Corporation Lois Curfman McInnes, Boyana Norris, ANL Physics Collaborators: James Amundson, Panagiotis Spentzouris,
Center for Component Technology for Terascale Simulation Software CCA is about: Enhancing Programmer Productivity without sacrificing performance. Supporting.
SCIRun and SPA integration status Steven G. Parker Ayla Khan Oscar Barney.
MINER A Software The Goals Software being developed have to be portable maintainable over the expected lifetime of the experiment extensible accessible.
Presented by An Overview of the Common Component Architecture (CCA) The CCA Forum and the Center for Technology for Advanced Scientific Component Software.
CCA Components for Accelerator Physics ComPASS SAP Project and Phase II Doe SBIR Stefan Muszala, Tech-X Corp, Boulder, CO In collaboration with Jim Amundson.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
1 1 What does Performance Across the Software Stack mean?  High level view: Providing performance for physics simulations meaningful to applications 
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
 Advanced Accelerator Simulation Panagiotis Spentzouris Fermilab Computing Division (member of the SciDAC AST project)
GRID Overview Internet2 Member Meeting Spring 2003 Sandra Redman Information Technology and Systems Center and Information Technology Research Center National.
Software Prototyping Rapid software development to validate requirements.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
CCA Common Component Architecture CCA Forum Tutorial Working Group CCA Status and Plans.
BioPSE NCRR SCIRun2 -THE PROJECT -OBJECTIVES -DEVELOPMENTS -TODAY -THE FUTURE.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Advanced Object-oriented Design Patterns Creational Design Patterns.
CCA Common Component Architecture CCA Forum Tutorial Working Group Common Component Architecture.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Center for Component Technology for Terascale Simulation Software (CCTTSS) 110 April 2002CCA Forum, Townsend, TN CCA Status, Code Walkthroughs, and Demonstrations.
CCA Common Component Architecture CCA Forum Tutorial Working Group Common Component Architecture.
Center for Component Technology for Terascale Simulation Software (CCTTSS) 110 April 2002CCA Forum, Townsend, TN This work has been sponsored by the Mathematics,
CCA Common Component Architecture CCA Forum Tutorial Working Group Common Component Architecture.
 Accelerator Simulation P. Spentzouris Accelerator activity coordination meeting 03 Aug '04.
Performance-Driven Interface Contract Enforcement for Scientific Components 10th International Symposium on Component-Based Software Engineering Medford,
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
1 The XMSF Profile Overlay to the FEDEP Dr. Katherine L. Morse, SAIC Mr. Robert Lutz, JHU APL
GENERAL VIEW OF KRATOS MULTIPHYSICS
CS590L Distributed Component Architecture References: - Objects, components, and framenworks with UML, Ch A Component Based Services Architecture.
Presented By: Darlene Banta
Ponder policy toolkit Jovana Balkoski, Rashid Mijumbi
Presentation transcript:

Components for Beam Dynamics Douglas R. Dechow, Tech-X Lois Curfman McInnes, ANL Boyana Norris, ANL With thanks to the Common Component Architecture (CCA) Forum ( And the SciDAC-sponsored Center for Technology for Advanced Scientific Component Software (TASCS)

Complexity of scientific software increases with simulation fidelity, multi-physics coupling, computer power software crisis Component technology is well established outside of high-performance computing (HPC) as a way to manage software complexity –Much enterprise software is component software, but commercial implementations do not support HPC The Common Component Architecture (CCA) brings component software approach to scientific HPC –Grass-roots effort launched in 1998 –SciDAC support beginning in 2001 Motivation

Basic CCA Concepts Screenshot of application in the Ccaffeine framework’s GUI Frameworks – Hold components while applications are assembled and executed – Control the connections of ports – Provide standard services to components Components – Are units of software development/ functionality – Interact only through well-defined interfaces – Can be composed into applications based on their interfaces Ports – Are the interfaces through which components interact – Follow a provides/uses pattern Provided ports are implemented by a component Used ports are functionality a component needs to call

Provides-Uses Pattern FooComponent: –Declares that it will support a particular port by calling addProvidesPort() BarComponent: –Declares that it requires a set of services by calling registerUsesPort() –Retrieves reference to port by calling getPort()

Language Interoperability Scientific software is increasingly diverse in use of programming languages In a component environment, users should not care what language a component is implemented in Typical “point-to-point” solutions to language interoperability are not suitable for a component environment The Babel language interoperability tool provides a common solution for all supported languages –Currently: Fortran, Python, C, C++, Java –Extensible to other languages Scientific Interface Definition Language (SIDL) provides language-neutral way of expressing interfaces C C++ f77 f90 Python Java C C++ f77 f90/95 Python Java

It Starts with the SIDL

Benefits to Software Developers Components are natural units of decomposition and interaction for both software and developers –Manage software complexity They enable scientists to work together as a cohesive scientific enterprise, across disciplines, geographical boundaries, and technical preferences by facilitating… –Collaboration around software development –Interoperability and reuse of software tools –Community standards for scientific software –Coupling of disparate codes CCA-based simulation of OH concentration in advective-diffusive- reactive simulation using 4 th order Runge-Kutta- Chebyshev integrator on 4 levels of adaptively refined mesh Courtesy of J. Ray, Sandia National Laboratories

Accelerator Modeling and Software Components Computational accelerator community –Tremendous investment in software applications. –Codes written in a variety of languages. –Target a range of computational platforms. The CCA Approach –Enables the community to leverage existing applications, creating modular, reusable software components that encapsulate useful functionality, facilitating coupling of historically independent codes to add new capabilities.

Accelerator Simulation using CCA Components (CCA/Synergia) Using CCA tools and specifications, prototype an accelerator simulation from reusable components. Develop components based on the following accelerator codes and –Synergia2 (FNAL), –MaryLie/Impact (LBL/U. Maryland), and –High-performance numerical toolkit, PETSc (ANL) Participants: –Tech-X Corporation –FNAL –ANL

CCA/Synergia Goals Foster a component community in computational accelerator physics –Demonstrate a accelerator simulation by creating components from beam dynamics codes that were not designed to work together. Create a component assembly GUI for accelerator simulation development –Once a large enough pool of accelerator components exists, create models visually. Develop component creation tutorials for the beam dynamics community.

Beam Dynamics Components Accelerator modelling components: –F90-based beam optics components (quadrupoles and drifts) from the MaryLie/Impact application. –C++ and F90 particle store components from the Synergia2 framework (FNAL). –A newly implemented C++-based space charge solver that makes use of Synergia2, PETSc (ANL), and FFTW. Component interfaces allowed us to capture and make available only the functionality that was desired from the existing codes.

Community Tools A Java-based GUI for component assembly Wiki-based documentation of component development

Computational Quality of Service (CQoS) Common component interfaces provide easy access to suites of independently developed algorithms and implementations. No single approach can perform best for all circumstances. Challenge: How, during runtime, can we make make sound choices for reliability, accuracy, and performance, taking into account the problem instance and computational environment? –Composition: select initial component implementations and configuration parameters –Reconfiguration: change parameters –Substitution: change implementations CQoS: Research initiative in the TASCS SciDAC center –Developing tools to help with automatic selection and configuration of components to suit a particular computational purpose and environment.

Synergia2 & CQoS

Next Six Months Continue to develop Synergia components for particle tracking, optics, and solvers in the area of space charge effects. Develop alternative solver component implementations (with TOPS) Evaluate original Synergia code and componentized version on ILC models

CQoS Enabling Work Items Complete Initial Synergia componentization (begin work to support additional coherent effects: electron cloud) Develop alternative solver component implementations (with TOPS) Populate performance database with model results Analyze performance data for initial parameter selection Implement beam dynamics components for dynamic parameter configuration and component replacement

CCA/Synergia Results/Future CCA tools are flexible enough that non-CCA Synergia2 and MaryLie/Impact simulations can still be used as-is. Interface-based development practices have allowed us to experiment with component granularity--started with large, coarse components Prototype demonstrates method for moving to large, integrated physics modeling necessary for ILC.