Engineering Papers⌕ Search

Engineering topics

Agelastos, Anthony Michael

Publications and source records attributed to Agelastos, Anthony Michael.

At least 19 records

TeMPI Shim

This is the manual for the TeMPI Shim library, whose goal is to facilitate scientific apps being loosely coupled through MPI. TeMPI Shim can be used to create and manage Message Passing Interface (MPI, see [MPI]) Communicators for Single Program, Multiple Data (SPMD, see [SPMD]) and Multiple Programs, Multiple Data (MPMD, see [MPMD]) workflows. MPI provides the MPI_APPNUM command number to each of the processes within its context. This number, starting at 0, is the application number being executed. In a case where 3 applications are being run in MPMD mode, there would be MPI_APPNUM values of 0, 1, and 2. TeMPI Shim creates intra- and inter-communicators between each pair of MPI_APPNUM values. In the aforementioned case, application 0 would have intra- and inter-communicators to speak to itself, application 1, and application 2. This is replicated for each of the applications. Additionally, TeMPI Shim creates intra- and inter-communicators for the first MPI rank of each application to directly communicate only with each other. Finally, TeMPI Shim creates its own copy of the default world communicator, i.e., MPI_COMM_WORLD. In the case where there is only a single application, it will have the communicators to only speak with itself. TeMPI Shim is useful in this case since it is considered good practice for MPI applications to copy the default world communicator and reference this copy (see [Duplicate World]_) anyways. Ultimately, it provides value independent of the number of applications present.

96 KNOWLEDGE MANAGEMENT AND PRESERVATION↗

Guide to Using Sierra

Sierra is an engineering mechanics simulation code suite supporting the Nation's Nuclear Weapons mission as well as other customers. It has explicit ties to Sandia National Labs' workflow, including geometry and meshing, design and optimization, and visualization. Distinguishing strengths include "application aware" development, scalability, SQA and V&V, multiple scales, and multi-physics coupling. This document is intended to help new and existing users of Sierra as a user manual and troubleshooting guide.

42 ENGINEERING↗

Performance of Gather/Scatter Operations

In this paper we describe the performance of two operations, gather and scatter. The operations we describe are simplified versions of those used in the implementation of sparse matrix libraries such as sparse-blas. Similar operations can also be found in benchmarks such as HPCG. Gather and scatter operations are memory load and store operations that are related to other memory operations such as Stream Triad and DAXPY, but have an additional dependence between memory loads that affects performance. We describe how the operations behave on current technology and identify features that enhance their performance. However, our description of hardware is general rather than specific to a single architecture.

97 MATHEMATICS AND COMPUTING↗