Trilinos Progress, Challenges and Future Plans Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,

Slides:



Advertisements
Similar presentations
What is Cloud Computing? Massive computing resources, deployed among virtual datacenters, dynamically allocated to specific users and tasks and accessed.
Advertisements

What is Cloud Computing? Massive computing resources, deployed among virtual datacenters, dynamically allocated to specific users and tasks and accessed.
Andrew McNab - Manchester HEP - 24 May 2001 WorkGroup H: Software Support Both middleware and application support Installation tools and expertise Communication.
An Overview of Trilinos Michael A. Heroux Sandia National Laboratories
Alternate Software Development Methodologies
Enterprise Integration Architecture IPMA Professional Development Seminar June 29, 2006 Scott Came Director, Enterprise Architecture Program Washington.
Presented by Scalable Systems Software Project Al Geist Computer Science Research Group Computer Science and Mathematics Division Research supported by.
VisIt Software Engineering Infrastructure and Release Process LLNL-PRES Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
Fundamentals of Information Systems, Second Edition
Page - 1 Rocketdyne Propulsion & Power Role of EASY5 in Integrated Product Development Frank Gombos Boeing Canoga Park, CA.
Page 1 Software Life-cycle and Integration Issues for CS&E R&D Software and Experiences from Trilinos (Part I) Roscoe A. Bartlett
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
MS17 A Case Study on the Vertical Integration of Trilinos Solver Algorithms with a Production Application Code Organizer: Roscoe A. Bartlett Sandia National.
SPI Software Process & Infrastructure EGEE France - 11 June 2004 Yannick Patois
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Trilinos Software Engineering Technologies.
Role of Deputy Director for Code Architecture and Strategy for Integration of Advanced Computing R&D Andrew Siegel FSP Deputy Director for Code Architecture.
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Department.
Chapter 2 The process Process, Methods, and Tools
Trilinos Strategic (and Tactical) Planning Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United.
Software Tools and Processes Training and Discussion October 16, :00-4:30 p.m. Jim Willenbring.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
How to Use the Trilinos Infrastructure for Your Own Project James M. Willenbring Michael N. Phenow Trilinos User Group Wednesday, November 2nd, :00.
Trilinos: From a User’s Perspective Russell Hooper Nov. 7, 2007 SAND P Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed.
Trilinos Package Summary ObjectivePackage(s) Discretizations Meshing & Spatial DiscretizationsphdMesh, Intrepid, Pamgen Time IntegrationRythmos Methods.
Principles of Scalable HPC System Design March 6, 2012 Sue Kelly Sandia National Laboratories Abstract: Sandia National.
PyTrilinos: A Python Interface to Trilinos Bill Spotz Sandia National Laboratories Reproducible Research in Computational Geophysics August 31, 2006.
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Department.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Page 1 Trilinos Software Engineering Technologies and Integration Numerical Algorithm Interoperability and Vertical Integration –Abstract Numerical Algorithms.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
Parallel Interactive Computing with PyTrilinos and IPython Bill Spotz, SNL (Brian Granger, Tech-X Corporation) November 8, 2007 Trilinos Users Group Meeting.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
Trilinos Progress, Challenges and Future Plans Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,
Page 1 Embedded Sensitivities and Optimization From Research to Applications Roscoe A. Bartlett Department of Optimization & Uncertainty Estimation Sandia.
Strategic Goals: To align the many efforts at Sandia involved in developing software for the modeling and simulation of physical systems (mostly PDEs):
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
1 ModelEvaluator Scalable, Extendable Interface Between Embedded Nonlinear Analysis Algorithms and Applications Roscoe A. Bartlett Department of Optimization.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Components for Beam Dynamics Douglas R. Dechow, Tech-X Lois Curfman McInnes, ANL Boyana Norris, ANL With thanks to the Common Component Architecture (CCA)
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Trilinos Overview and Future Plans Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
A Current Overview of the Trilinos Project Jonathan Hu Tenth Copper Mountain Conference on Iterative Methods Monday, April 7 th, 2008 SAND# C.
1 1 What does Performance Across the Software Stack mean?  High level view: Providing performance for physics simulations meaningful to applications 
Amesos Interfaces to sparse direct solvers October 15, :30 – 9:30 a.m. Ken Stanley.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
New Features in ML 2004 Trilinos Users Group Meeting November 2-4, 2004 Jonathan Hu, Ray Tuminaro, Marzio Sala, Michael Gee, Haim Waisman Sandia is a multiprogram.
An Overview of Trilinos Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Teuchos: Utilities for Developers & Users November 2nd, 3:30-4:30pm Roscoe Bartlett Mike Heroux Kris Kampshoff Kevin Long Paul Sexton Heidi.
CCA Common Component Architecture CCA Forum Tutorial Working Group CCA Status and Plans.
Computational Science & Engineering meeting national needs Steven F. Ashby SIAG-CSE Chair March 24, 2003.
Connections to Other Packages The Cactus Team Albert Einstein Institute
Trilinos Strategic (and Tactical) Planning Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United.
Page 1 CMake Trilinos? Roscoe A. Bartlett Department of Optimization & Uncertainty Estimation Esteban J. Guillen Department.
Photos placed in horizontal position with even amount of white space between photos and header Sandia National Laboratories is a multi-program laboratory.
Trilinos Framework: Next Steps Thursday November 9, :45-9:30 a.m. Jim Willenbring Mike Phenow.
ML: A Multilevel Preconditioning Package Copper Mountain Conference on Iterative Methods March 29-April 2, 2004 Jonathan Hu Ray Tuminaro Marzio Sala Sandia.
Algebraic Solvers in FASTMath Argonne Training Program on Extreme-Scale Computing August 2015.
Trilinos Overview and Future Plans Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a.
Page 1 Open-Source Software for Interfacing and Support of Large-scale Embedded Nonlinear Optimization Roscoe A. Bartlett
Built on the Powerful Microsoft Azure Platform, Forensic Advantage Helps Public Safety and National Security Agencies Collect, Analyze, Report, and Distribute.
1 Acquisition Automation – Challenges and Pitfalls Breakout Session # E11 Name: Jim Hargrove and Allen Edgar Date: Tuesday, July 31, 2012 Time: 2:30 pm-3:45.
CSCAPES Mission Research and development Provide load balancing and parallelization toolkits for petascale computation Develop advanced automatic differentiation.
Rapid Launch Workshop ©CC BY-SA.
DOE/Office of Science/ASCR (Sandia National Laboratories)
C Software Life-cycle and Integration Issues for CS&E R&D Software and Experiences from Trilinos (Part I) Roscoe A. Bartlett
ModelEvaluator Scalable, Extendable Interface Between Embedded Nonlinear Analysis Algorithms and Applications Roscoe A. Bartlett Department of Optimization.
Trilinos Software Engineering Technologies and Integration
Embedded Nonlinear Analysis Tools Capability Area
Presentation transcript:

Trilinos Progress, Challenges and Future Plans Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract DE-AC04-94AL85000.

Trilinos Contributors Chris Baker Ross Bartlett Pavel Bochev Paul Boggs Erik Boman Cedric Chevalier Todd Coffey David Day Karen Devine Clark Dohrmann David Gay Esteban Guillen Mike Heroux Ulrich Hetmaniuk Robert Hoekstra Russell Hooper Vicki Howle Jonathan Hu Tammy Kolda Sarah Knepper Joe Kotulski Rich Lehoucq Kevin Long Roger Pawlowski Eric Phipps Lee Ann Riesen Marzio Sala Andrew Salinger Chris Siefert Bill Spotz Heidi Thornquist Ray Tuminaro Jim Willenbring Alan Williams Past Contributors Jason Cross Michael Gee Bob Heaphy Kris Kampshoff Joe Outzen Mike Phenow Paul Sexton Bob Shuttleworth Ken Stanley New Member Brent Perschbacher

Background/Motivation

Target Problems: PDES and more… PDES Circuits Inhomogeneous Fluids And More…

Target Platforms: Any and All (Now and in the Future)  Desktop: Development and more…  Capability machines:  Redstorm (XT3), Clusters  Roadrunner (Cell-based).  Multicore nodes.  Parallel software environments:  MPI of course.  UPC, CAF, threads, vectors,…  Combinations of the above.  User “skins”:  C++/C, Python  Fortran.  Web, CCA.

Evolving Trilinos Solution  Trilinos 1 is an evolving framework to address these challenges:  Fundamental atomic unit is a package.  Includes core set of vector, graph and matrix classes (Epetra/Tpetra packages).  Provides a common abstract solver API (Thyra package).  Provides a ready-made package infrastructure (new_package package): Source code management (cvs, bonsai). Build tools (autotools, soon Cmake). Automated regression testing. Communication tools (mailman mail lists).  Specifies requirements and suggested practices for package SQA.  In general allows us to categorize efforts:  Efforts best done at the Trilinos level (useful to most or all packages).  Efforts best done at a package level (peculiar or important to a package).  Allows package developers to focus only on things that are unique to their package. 1. Trilinos loose translation: “A string of pearls”

Evolving Trilinos Solution Numerical math Convert to models that can be solved on digital computers Algorithms Find faster and more efficient ways to solve numerical models L(u)=f Math. model L(u)=f Math. model L h (u h )=f h Numerical model L h (u h )=f h Numerical model u h =L h -1  f h Algorithms u h =L h -1  f h Algorithms physics computation Linear Nonlinear Eigenvalues Optimization Linear Nonlinear Eigenvalues Optimization Automatic diff. Domain dec. Mortar methods Automatic diff. Domain dec. Mortar methods Time domain Space domain Time domain Space domain Petra Utilities Interfaces Load Balancing Petra Utilities Interfaces Load Balancing solvers discretizations methods core  Beyond a “solvers” framework  Natural expansion of capabilities to satisfy application and research needs  Discretization methods, AD, Mortar methods, …

Trilinos Strategic Goals  Scalable Computations: As problem size and processor counts increase, the cost of the computation will remain nearly fixed.  Hardened Computations: Never fail unless problem essentially intractable, in which case we diagnose and inform the user why the problem fails and provide a reliable measure of error.  Full Vertical Coverage: Provide leading edge enabling technologies through the entire technical application software stack: from problem construction, solution, analysis to optimization.  Grand Universal Interoperability: All Trilinos packages will be interoperable, so that any combination of packages that makes sense algorithmically will be possible within Trilinos and with compatible external software.  Universal Accessibility: All Trilinos capabilities will be available to users of major computing environments: C++, Fortran, Python and the Web, and from the desktop to the latest scalable systems.  Universal Capabilities RAS: Trilinos will be:  Integrated into every major application at Sandia (Availability).  The leading edge hardened, efficient, scalable solution for each of these applications (Reliability).  Easy to maintain and upgrade within the application environment (Serviceability). Algorithmic Goals Software Goals

Trilinos Statistics, 11/2007 Stats: Trilinos Download Page 11/5/2007.

Trilinos Statistics Stats: Trilinos Download Page 10/20/2008.

External Visibility  Awards: R&D 100, HPC SW Challenge (04).   Industry Collaborations: Boeing, Goodyear, ExxonMobil, others.  Linux distros: Debian, Mandriva, Ubuntu, Fedora.  SciDAC TOPS-2 partner, IAA Algorithms (with ORNL).  Over 8000 downloads since March  Occasional unsolicited external endorsements such as the following two-person exchange on mathforum.org: > The consensus seems to be that OO has little, if anything, to offer > (except bloat) to numerical computing. I would completely disagree. A good example of using OO in numerics is Trilinos: Trilinos A project led by Sandia to develop an object-oriented software framework for scientific computations. This is an active project which includes several state-of-the-art solvers and lots of other nice things a software engineer writing CFD codes would find useful. Everything is freely available for download once you have registered. Very good!

Trilinos Presentation Forums  ACTS “Hands-on” Tutorial:  Aug 18-20, 2009 (approximate).  At Lawrence Berkeley Lab, Berkeley, CA, USA.  Next Trilinos User Group Meeting:  Proposal: Nov 3-5,  At Sandia National Laboratories, Albuquerque, NM, USA.  HPCSW Week Symposium ?  Tutorial last year.  Not sure if happening again this year.  Supercomputing 2009 ?  Tutorial on Library-based Application Development.

Characterizing the Trilinos “Project”  Not a “project” but an infrastructure to support inter- related projects: A project of projects.  Package participation is voluntary:  Framework must be attractive (and continue to be).  Requirements are few, opportunities are many.  Package team decides what and when.  Opt-out is always an option.  Package autonomy is carefully guarded:  Even if redundant development occurs.  Decision-making pushed to lowest (best) level.  Participation is attractive:  Increasing infrastructure capabilities.  Access to many other packages.

Changing Scope of Trilinos  Capabilities:  Past: Solver capabilities and supporting components.  Now: Any library for science/engineering (Zoltan, Intrepid, …).  Customers:  Past: Sandia and other NNSA customers.  Now: Expanding to Office of Science applications, DoD, DHS, CRADAs and WFO.  Platforms:  Past: All platforms using command-line installer (Autotools). Linux/Unix bias.  Now: Expanding to GUI & binary installer (Cmake). Native Winodws/Mac process. The Changing Scope of the Trilinos Project, Michael A. Heroux, Technical Report, Sandia National Laboratories, SAND , December 2007.

Capability Leaders: New Layer of Proactive Leadership  Areas:  Framework, Tools & Interfaces (J. Willenbring).  Software Engineering Technologies and Integration (R. Bartlett).  Discretizations (P. Bochev).  Geometry, Meshing & Load Balancing (K. Devine).  Scalable Linear Algebra (M. Heroux).  Linear & Eigen Solvers (J. Hu).  Nonlinear, Transient & Optimization Solvers (A. Salinger).  Each leader provides strategic direction across all Trilinos packages within area.

Courting Science Apps  Attended Many Office of Science meetings in FY07/08.  Clear messages:  Fortran is the language.  PETSc is used in many apps.  Therefore Trilinos Needs:  A legitimate Fortran API: ForTrilinos (Ctrilinos pre-req). Using some (but not all) of Fortran 2003 features: –C interoperability. –OO Fortran. Exposes user-oriented interfaces (small fraction of total).  PETSc interoperablity. App should be able to leverage investment in PETSc data structures and solvers. Use of Trilinos capabilities (preconditioners, transient, optimization, UQ) should build on top.

Two Budding Collaborations  Homme: Atmospheric dynamical core.  Kate Evans ORNL.  Implicit methods for shallow water equations.  D. Rouson, A. Salinger, M. Taylor, R. Bartlett.  POP: Parallel Ocean Program  Wilbert Weijer LANL.  Implicit methods, tangent linear/adjoint methods.

Trilinos Package Concepts Package: The Atomic Unit

Trilinos Packages  Trilinos is a collection of Packages.  Each package is:  Focused on important, state-of-the-art algorithms in its problem regime.  Developed by a small team of domain experts.  Self-contained: No explicit dependencies on any other software packages (with some special exceptions).  Configurable/buildable/documented on its own.  Sample packages: NOX, AztecOO, ML, IFPACK, Meros.  Special package collections:  Petra (Epetra, Tpetra, Jpetra): Concrete Data Objects  Thyra: Abstract Conceptual Interfaces  Teuchos: Common Tools.  New_package: Jumpstart prototype.

Trilinos Package Summary ObjectivePackage(s) Discretizations Meshing & Spatial DiscretizationsphdMesh, Intrepid, Pamgen, Sundance Time IntegrationRythmos Methods Automatic DifferentiationSacado Mortar MethodsMoertel Core Linear algebra objectsEpetra, Jpetra, Tpetra Abstract interfacesThyra, Stratimikos, RTOp Load BalancingZoltan, Isorropia “Skins”PyTrilinos, WebTrilinos, Star-P, ForTrilinos, CTrilinos C++ utilities, I/O, thread APITeuchos, EpetraExt, Kokkos, Triutils, TPI Solvers Iterative (Krylov) linear solversAztecOO, Belos, Komplex Direct sparse linear solversAmesos Direct dense linear solversEpetra, Teuchos, Pliris Iterative eigenvalue solversAnasazi ILU-type preconditionersAztecOO, IFPACK Multilevel preconditionersML, CLAPS Block preconditionersMeros Nonlinear system solversNOX, LOCA Optimization (SAND)MOOCHO, Aristos Stochastic PDEsStokhos

Why Packages?

Package Interoperability

Interoperability vs. Dependence (“Can Use”) (“Depends On”)  Although most Trilinos packages have no explicit dependence, each package must interact with some other packages:  NOX needs operator, vector and solver objects.  AztecOO needs preconditioner, matrix, operator and vector objects.  Interoperability is enabled at configure time. For example, NOX: --enable-nox-lapack compile NOX lapack interface libraries --enable-nox-epetra compile NOX epetra interface libraries --enable-nox-petsc compile NOX petsc interface libraries  Trilinos configure script is vehicle for:  Establishing interoperability of Trilinos components…  Without compromising individual package autonomy.  Trilinos offers seven basic interoperability mechanisms.../configure –enable-python

Trilinos Interoperability Mechanisms (Acquired as Package Matures) Package builds under Trilinos configure scripts.  Package can be built as part of a suite of packages; cross-package interfaces enable/disable automatically Package accepts user data as Epetra or Thyra objects  Applications using Epetra/Thyra can use package Package accepts parameters from Teuchos ParameterLists  Applications using Teuchos ParameterLists can drive package Package can be used via Thyra abstract solver classes  Applications or other packages using Thyra can use package Package can use Epetra for private data.  Package can then use other packages that understand Epetra Package accesses solver services via Thyra interfaces  Package can then use other packages that implement Thyra interfaces Package available via PyTrilinos, ForTrilinos, WebTrilinos  Package can be used with other Trilinos packages via Python, Fortran, Website.

Interoperability Example: ML  ML: Multi-level Preconditioner Package.  Primary Developers: Ray Tuminaro, Jonathan Hu, Marzio Sala.  No explicit, essential dependence on other Trilinos packages.  Uses abstract interfaces to matrix/operator objects.  Has independent configure/build process (but can be invoked at Trilinos level).  Interoperable with other Trilinos packages and other libraries:  Accepts user data as Epetra matrices/vectors.  Can use Epetra for internal matrices/vectors. IFPACK, Amesos, AztecOO, etc. objects as smoothers, coarse solvers.  Can be used via Thyra abstract interfaces. PyTrilinos.  Can be built via Trilinos configure/build process.  Can be driven via Teuchos ParameterLists.  Available as preconditioner to all other Trilinos packages.  Available to PETSc users without dependence on any other Trilinos packages.

Package Maturation Process Asynchronicity

Day 1 of Package Life  CVS: Each package is self-contained in Trilinos/package/ directory.  Bugzilla: Each package has its own Bugzilla product.  Bonsai: Each package is browsable via Bonsai interface.  Mailman: Each Trilinos package, including Trilinos itself, has four mail lists:  CVS commit s. “Finger on the pulse” list.  Mailing list for developers.  Issues for package users.  Releases and other announcements specific to the package.  New_package (optional): Customizable boilerplate for  Autoconf/Automake/Doxygen/Python/Thyra/Epetra/TestHarness/Website

Sample Package Maturation Process StepExample Package added to CVS: Import existing code or start with new_package. ML CVS repository migrated into Trilinos (July 2002). Mail lists, Bugzilla Product, Bonsai database created. ml-announce, ml-users, ml-developers, ml-checkins, ml- created, linked to CVS (July 2002). Package builds with configure/make, Trilinos- compatible ML adopts Autoconf, Automake starting from new_package (June 2003). Epetra objects recognized by package.ML accepts user data as Epetra matrices and vectors (October 2002). Package accessible via Thyra interfaces.ML adaptors written for TSFCore_LinOp (Thyra) interface (May 2003). Package uses Epetra for internal data.ML able to generate Epetra matrices. Allows use of AztecOO, Amesos, Ifpack, etc. as smoothers and coarse grid solvers (Feb- June 2004). Package parameters settable via Teuchos ParameterList ML gets manager class, driven via ParameterLists (June 2004). Package usable from Python (PyTrilinos)ML Python wrappers written using new_package template (April 2005). Startup StepsMaturation Steps

Latest Maturation: Cmake-enabled  Cmake: Alternative to Autotools.  GUI.  Supports Windows/MS, Mac, Unices.  Supports binary packaging.  Target system-wide deployment: Trilinos 10.0.

What Trilinos is not  Trilinos is not a single monolithic piece of software. Each package:  Can be built independent of Trilinos.  Has its own self-contained CVS structure.  Has its own Bugzilla product and mail lists.  Development team is free to make its own decisions about algorithms, coding style, release contents, testing process, etc.  Trilinos top layer is not a large amount of source code:  Less than 1% SLOC outside of packages.  Trilinos is not “indivisible”:  You don’t need all of Trilinos to get things done.  Any collection of packages can be combined and distributed.  Current public release contains only 30 of the 40+ Trilinos packages.

Insight from History A Philosophy for Future Directions  In the early 1800’s U.S. had many new territories.  Question: How to incorporate into U.S.?  Colonies? No.  Expand boundaries of existing states? No.  Create process for self-governing regions. Yes.  Theme: Local control drawing on national resources.  Trilinos package architecture has some similarities:  Asynchronous maturation.  Packages decide degree of interoperations, use of Trilinos facilities.  Strength of each: Scalable growth with local control.

Major Framework Themes: FY05/06  Trilinos Package Architecture:  Continue refinement of new_package.  Explicitly define Trilinos compatibility.  Resolve the abstract interface issue.  Software Quality:  Expand use and ease-of-use of test harness.  Identify metrics and automate capture and display.  Establish a life-cycle model (hybrid agile/unified process?).  Customize the ASC SQP to our environment.  Packages:  Foster new package development.  Manage the growth. Issue: complexity of package coupling.  Harden our mature packages.  Transition to post-delivery maintenance:  Organizational issue: Tough to solve.

Major Themes for FY06/07 Framework  Take Steps toward dynamic package addition.  In light of more outward focus: (SciDAC, Boeing, ???)  Trilinos-compatibility definition or something similar.  Define SW Lifecycle(s) and begin formalized efforts.  Need something for external audits.  Agile vs. UP vs. hybrid.

FY07/08 Themes: Framework  Trilinos Level II Milestone.  Demonstrate Use of Full Vertical capabilities in Charon.  Joint licensing and copyright of development with other organizations.  Other DOE Labs, international orgs, private companies.  Package Autonomy (reacting to rapid growth):  18 to 27 to ??  Guarding against incidental coupling.  Revisiting the location of “skins”.  Stratimikos: Uniform access to many packages.  Access from Fortran.  DOE Science Users, DOD Users.  Stratimikos focus.  Split of User vs Developer tools.  

Themes for FY08/09  Redefinition of Trilinos scope beyond solvers.  Next steps in packaging and distribution.  Continued outreach to other communities  Rethinking source management.  Formalizing App-Trilinos relationship.  Post-delivery maintenance improvements.  Trilinos Advisory Group.  Matrixing with software services group.

Themes for FY09/10  Ubiquitous availability:  Desktop to Supercomputers.  Use across DOE complex.  New directions for “Extreme Scale” computing.  Transition to Cmake and related tools.  Scalable Linear Algebra Themes:  Multicore/GPUs: Pre-requisite for extreme scale.  Multi-precision algorithms.  Many More (next talks).

Trilinos Availability/Information  Trilinos and related packages are available via LGPL.  Current release is 9.0.  Unlimited availability.  Planning 9.1 release March  More information:    Additional documentation at my website: