STK (Sierra Toolkit) Update Trilinos User Group meetings, 2014 R&A: SAND2014-19233 PE Sandia National Laboratories is a multi-program laboratory operated.

Slides:



Advertisements
Similar presentations
Conclusion Kenneth Moreland Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company,
Advertisements

Parallel Visualization Kenneth Moreland Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin.
Database Planning, Design, and Administration
Page 1 APP + Trilinos Integration Status, Opportunities, and Challenges Roscoe A. Bartlett Department of Optimization.
Ensemble Emulation Feb. 28 – Mar. 4, 2011 Keith Dalbey, PhD Sandia National Labs, Dept 1441 Optimization & Uncertainty Quantification Abani K. Patra, PhD.
1 Approved for unlimited release as SAND C Verification Practices for Code Development Teams Greg Weirs Computational Shock and Multiphysics.
Unstructured Data Partitioning for Large Scale Visualization CSCAPES Workshop June, 2008 Kenneth Moreland Sandia National Laboratories Sandia is a multiprogram.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
CISC October Goals for today: Foster’s parallel algorithm design –Partitioning –Task dependency graph Granularity Concurrency Collective communication.
Exploring Communication Options with Adaptive Mesh Refinement Courtenay T. Vaughan, and Richard F. Barrett Sandia National Laboratories SIAM Computational.
Chapter 2 Database Environment Pearson Education © 2014.
Lecture Nine Database Planning, Design, and Administration
SAND Number: P Sandia is a multi-program laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department.
File System. NET+OS 6 File System Architecture Design Goals File System Layer Design Storage Services Layer Design RAM Services Layer Design Flash Services.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
At the North of England Institute of Mining and Mechanical Engineers Library, Newcastle upon Tyne.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Overview of the Database Development Process
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Department.
Dax: Rethinking Visualization Frameworks for Extreme-Scale Computing DOECGF 2011 April 28, 2011 Kenneth Moreland Sandia National Laboratories SAND P.
SAINT2002 Towards Next Generation January 31, 2002 Ly Sauer Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,
Pamgen A Parallel Finite-Element Mesh Generation Library TUG 2008 Monday, October 21, 2008 David Hensinger (SNL) Sandia is a multiprogram laboratory operated.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Trilinos: From a User’s Perspective Russell Hooper Nov. 7, 2007 SAND P Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed.
Principles of Scalable HPC System Design March 6, 2012 Sue Kelly Sandia National Laboratories Abstract: Sandia National.
Ocean Observatories Initiative Common Execution Infrastructure (CEI) Overview Michael Meisinger September 29, 2009.
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Department.
Computer and Automation Research Institute Hungarian Academy of Sciences Presentation and Analysis of Grid Performance Data Norbert Podhorszki and Peter.
Data Intensive Computing at Sandia September 15, 2010 Andy Wilson Senior Member of Technical Staff Data Analysis and Visualization Sandia National Laboratories.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
The Red Storm High Performance Computer March 19, 2008 Sue Kelly Sandia National Laboratories Abstract: Sandia National.
Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation,
Database Planning, Design, and Administration Transparencies
ISpheresImage iSpheresImage Feature Overview and Progress Summary.
Strategies for Solving Large-Scale Optimization Problems Judith Hill Sandia National Laboratories October 23, 2007 Modeling and High-Performance Computing.
SciDAC SSS Quarterly Report Sandia Labs August 27, 2004 William McLendon Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed.
Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation,
LAMMPS Users’ Workshop
Bayu Adhi Tama, M.T.I 1 © Pearson Education Limited 1995, 2005.
Threading Opportunities in High-Performance Flash-Memory Storage Craig Ulmer Sandia National Laboratories, California Maya GokhaleLawrence Livermore National.
Sandia is a multi-program laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Trilinos Strategic (and Tactical) Planning Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United.
Site Report DOECGF April 26, 2011 W. Alan Scott Sandia National Laboratories Sandia National Laboratories is a multi-program laboratory managed and operated.
Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation,
ParaView III Software Methodology Update Where to now November 29, 2006 John Greenfield Sandia is a multiprogram laboratory operated by Sandia Corporation,
Chapter 2 Database Environment.
1 Rocket Science using Charm++ at CSAR Orion Sky Lawlor 2003/10/21.
Other Tools HPC Code Development Tools July 29, 2010 Sue Kelly Sandia is a multiprogram laboratory operated by Sandia Corporation, a.
Performing Fault-tolerant, Scalable Data Collection and Analysis James Jolly University of Wisconsin-Madison Visualization and Scientific Computing Dept.
On the Path to Trinity - Experiences Bringing Codes to the Next Generation ASC Platform Courtenay T. Vaughan and Simon D. Hammond Sandia National Laboratories.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
Chapter 9 Database Planning, Design, and Administration Transparencies © Pearson Education Limited 1995, 2005.
Photos placed in horizontal position with even amount of white space between photos and header Sandia National Laboratories is a multi-program laboratory.
Automated File Server Disk Quota Management May 13 th, 2008 Bill Claycomb Computer Systems Analyst Infrastructure Computing Systems Department Sandia is.
Virtual Directory Services and Directory Synchronization May 13 th, 2008 Bill Claycomb Computer Systems Analyst Infrastructure Computing Systems Department.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Database Management:.
Parallel Unstructured Mesh Infrastructure
Unstructured Grids at Sandia National Labs
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Chapter 2 Database Environment Pearson Education © 2009.
Component Frameworks:
Database Environment Transparencies
An Introduction to Software Architecture
Database Design Hacettepe University
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

STK (Sierra Toolkit) Update Trilinos User Group meetings, 2014 R&A: SAND PE Sandia National Laboratories is a multi-program laboratory operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin company, for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL

Outline What is STK STK vs STK_classic API differences Performance differences STK plans for the coming year

What is STK STK is a collection of infrastructure modules supporting unstructured-mesh analysis applications. Developed in the SIERRA project Finite Element/Finite Volume Analysis Applications Solid Mechanics Structural Dynamics Thermal/Fluid Mechanics

SIERRA / STK development environment The SIERRA project uses a build system based on “bjam” (of boost lineage). We monitor nightly and continuous builds/tests and valgrind reports on cdash dashboards. STK modules are updated into Trilinos periodically (thanks Brent!) and at that point the sources are built/tested using cmake/ctest support.

Sierra ToolKit (STK) modules overview Stk_util Stk_mesh Stk_transfer Stk_search Stk_io Dependency diagram: Arrows point towards a module that is used (depended on) by another module. Parallel-consistent Mesh database Heterogeneous element types Unstructured Search Proximity, mesh independent IO Bridge from mesh-data to external capability Built optionally Topology Entity-local definitions for node orderings, etc Util Nearly everything depends on util directly or indirectly Transfer Inter-mesh solution-field transfers Stk_topology

STK Mesh Parallel distributed, parallel consistent Heterogeneous element types and field types Unstructured grid

STK vs STK_classic Starting a couple years ago, we made major changes to the STK package, changing APIs and data-structures, etc. Almost all changes are in stk_mesh… We froze the STK package in Trilinos, performed development in the SIERRA repository, and have now brought the new code back into Trilinos. STK -stk_util -stk_mesh -stk_search … STK -stk_classic -stk_util -stk_mesh -stk_search … Old New Old sub- packages

STK vs STK_classic: API changes Entity Entity changed from an object with methods, to an index. To do anything with an Entity now, you need a stk::mesh::BulkData instance. EntityId id = node.identifier(); EntityId id = bulkdata.identifier(node); Example Old New

STK vs STK_classic: API changes (continued) Relations / Connectivity: Entities are connected… Previously, Entity held arrays of Relations. Relation class held connected entity, ordinal (local-id) and other data These items are now held in separate ‘raw’ arrays. PairIterRelation node_relations = element.relations(NODE_RANK); Loop { Entity node = node_relations[i].entity(); unsigned num_nodes = bulkdata.num_nodes(element); const Entity* nodes = bulkdata.begin_nodes(element); Loop { Entity node = nodes[i]; Example: connected nodes of an element Old New

STK vs STK_classic: API changes (continued) Fields can only be associated with 1 entity rank improved performance, reduced complexity IO: MeshReadWriteUtils replaced by StkMeshIoBroker several API differences, see example materials Shards (topology definitions) is being replaced by stk_topology we will maintain mappings back and forth for users who continue to use Shards.

STK vs STK_classic: API changes (continued) More detail is covered in a conversion guide written by Jim Foucar (thanks Jim!) Also see documentation tests which illustrate usage of a lot of the new STK code-base. See stk/stk_doc_tests

STK vs STK_classic: Performance improvements Entity changes and connectivity storage changes improved cache efficiency of connectivity traversal Restricting fields to a single entity-rank improved speed of field-data access (removed pointer hop(s)) Selector caching improved speed of bucket access Scalable entity creation stk::mesh::create_edges(mesh)… …was reported as a scalability bottleneck for runs using large numbers of MPI ranks

STK vs STK_classic: Performance Improvements (continued)

Scalable Entity Creation unit test generation of IDs scope out separation of global IDs from internal IDs to STK Mesh

STK plans for the coming year Scalable Entity Creation IO Ghosting Arbitrary Relations Balance/R ebalance IO Auto Decomp Batch Mesh Modification Feature Development, enhancements Research Next generation platforms Threading, GPUs, Kokkos? Data Structures Hierarchical Decomposition