Fork me on GitHub

New Dependencies Page on Software Portal July 28, 2020 (this-website)

The Explore section of this website has grown to include a new page that visualizes our software catalog’s dependencies. LLNL software repos are shown in the context of repositories with dependencies, External Packages, and internal packages. You can move the slider to change the connections between repos, organizations, and dependencies as well as click on a circle to isolate its specific connections in an expansion panel on the right side of the page. This work, which enables us to learn more about our repos and how they are related, was done by our 2020 summer intern.

Tool Time: Caliper - A Performance Analysis Toolbox in a Library July 27, 2020 (story)

The Performance Optimisation and Productivity blog published a post by LLNL’s David Boehme, who described the open source Caliper program instrumentation and performance measurement framework. Caliper can be used for lightweight always-on profiling or advanced performance engineering use cases, such as tracing, monitoring, and auto-tuning. It is primarily aimed at HPC applications, but works for any C/C++/Fortran program on Unix/Linux. The blog post outlines Caliper’s instrumentation and API with examples.

Aluminum 0.4.0 Released July 27, 2020 (release)

Aluminum provides a generic interface to high-performance communication libraries with a focus on allreduce algorithms. Blocking and non-blocking algorithms and GPU-aware algorithms are supported. Aluminum also contains custom implementations of select algorithms to optimize for certain situations. The latest release includes support for AMD GPUs using HIP/ROCm/RCCL.

Learn more:

New Repo: mpibind July 22, 2020 (new-repo)

mpibind is a memory-driven algorithm to map parallel hybrid applications to the underlying heterogeneous hardware resources transparently, efficiently, and portably. Unlike other mappings, its primary design point is the memory system, including the cache hierarchy. Compute elements are selected based on a memory mapping and not vice versa.

Merlin 1.7.0 Released July 22, 2020 (release)

Merlin is a tool for running machine learning based workflows. The goal of Merlin is to make it easy to build, run, and process the kinds of large scale HPC workflows needed for cognitive simulation. v1.7.0 includes documentation and FAQ updates along with several fixes and celery configuration override.

Learn more:

Caliper 2.4.0 Released July 22, 2020 (release)

Caliper is a program instrumentation and performance measurement framework. It is designed as a performance analysis toolbox in a library, allowing one to bake performance analysis capabilities directly into applications and activate them at runtime. The latest release includes several improvements and new features, such as new ConfigManager configs, API wrapper upgrades, and more robust linking and initialization.

Learn more:

BLT 0.3.5 Released July 20, 2020 (release)

BLT (Building, Linking, and Testing) is a streamlined CMake build system foundation for developing HPC software. BLT makes it easy to get up and running on a wide range of HPC compilers, operating systems, and technologies. The repo includes unit testing and benchmarking. The v0.3.5 release includes additional link flags for CUDA, improved support for HIP 3.5 and CMake 3.13.0+, and more.

Learn more:

Spack Tutorial on AWS July 20, 2020 (event)

Amazon Web Services is hosting a two-day Spack tutorial broadly targeted at HPC users, developers, and user support teams. Each day consists of two 1.5-hour sessions with a 30-minute break in the middle (4-7:30pm CET / 7-10:30pm PT). The first day will cover Spack basics, while the second day will dive deeper on advanced features. Registration is free.

LLNL's Summer Hackathon Will Be Virtual July 18, 2020 (event)

Held since 2012, LLNL’s hackathons are 24-hour opportunities to brainstorm, foster creativity, prototype, and explore. Participants work in groups or individually and often strive to learn new skills, programming languages, and tools in service to LLNL’s missions. Like the spring hackathon earlier this year, the summer event (August 6-7) will be held virtually using WebEx and Mattermost for collaboration. LLNL sponsors are Livermore Computing and the Center for Applied Scientific Computing. Registration closes on July 31.

Webinar: What’s New in Spack? July 15, 2020 (event-report) (multimedia)

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project, hosts a webinar series on Best Practices for HPC Software Developers. A webinar titled “What’s New in Spack?” was presented by LLNL’s Todd Gamblin on July 15. Slides and a video (1:26:33) from the session are available.

CCT 1.0.9 Released July 15, 2020 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. This release contains new support for validation events in addition to reference events, a scalebar and distance measurement tool on the map, support for cancelling in progress calibrations, and more.

Learn more:

New Repo: SPIFY July 13, 2020 (new-repo)

SPIFY is a C++ library for parsing input files to be used in scientific computing applications. The library allows an application developer to define a full set of required and optional input variable of different types and handles all of the parsing and validation. Examples are included in the repo.

Hatchet 1.2.0 Released July 10, 2020 (release)

Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data. Version 1.2.0 includes updates to the HPCToolkit reader, graph syntax query language, tree printout format, and more.

Learn more:

New Repo: pLiner July 08, 2020 (new-repo)

Compiler optimizations can alter significantly the numerical results of scientific computing applications. When numerical results differ significantly between compilers, optimization levels, and floating-point hardware, these numerical inconsistencies can impact programming productivity. pLiner is a framework that helps programmers identify locations in the source of numerical code that are highly affected by compiler optimizations. It uses a novel approach to identify such code locations by enhancing the floating-point precision of variables and expressions.

New Consolidated FAQ on Software Portal July 08, 2020 (this-website)

Much of the content under the About section of this website has been consolidated into an easy-to-navigate FAQ page. The FAQ explain how to get started on GitHub, become part of the LLNL organization, manage repositories, and much more. We encourage readers to provide feedback or new questions by contacting the LLNL GitHub admins or submitting a pull request.

New Data Visualizations on Software Portal July 07, 2020 (this-website)

The Explore section of this website is benefitting from new development by our summer intern. Data we collect from GitHub is visualized in various ways, with additional visualizations planned. These efforts help us understand our repos’ activity, how they are being used, development trends, and more. Check out the new “Repo Licenses” viz and stay tuned for more!

CEED's Annual Meeting Will Be Virtual July 07, 2020 (event)

As part of the Exascale Computing Project (ECP), the Center for Efficient Exascale Discretizations (CEED) is a research partnership between two U.S. Department of Energy laboratories and five universities. LLNL leads the Center. All of CEED’s software is open source.

CEED will hold its 4th annual meeting on August 11-12, virtually using ECP Zoom for videoconferencing and Slack for side discussions. The goal of the meeting is to report on the progress in the Center; deepen existing and establish new connections with ECP hardware vendors, ECP software technologies projects, and other collaborators; plan project activities; and brainstorm/work as a group to make technical progress. In addition to gathering together many of the CEED researchers, the meeting will include representatives of the ECP management, hardware vendors, software technology and other interested projects. Additional meeting information is available on the CEED website, and free registration closes on August 7.

Umpire 3.0.0 Released July 06, 2020 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures. v3.0.0 includes a number of new features and bug fixes, such as support for multiple GPU devices, capturing function backtraces with allocations, and aligned allocations for host memory.

Learn more:

Merlin 1.6.2 Released July 06, 2020 (release)

Merlin is a tool for running machine learning based workflows. The goal of Merlin is to make it easy to build, run, and process the kinds of large scale HPC workflows needed for cognitive simulation. v1.6.2 includes 12 hidden test specs, new celery (4.4.5) syntax, and additional improvements.

Learn more:

New Repo: Quicksilver July 02, 2020 (new-repo)

Quicksilver is a proxy application that represents some elements of the Mercury workload by solving a simplified dynamic Monte Carlo particle transport problem. Quicksilver attempts to replicate the memory access patterns, communication patterns, and the branching or divergence of Mercury for problems using multigroup cross sections. OpenMP and MPI are used for parallelization. Documentation is available.

New Repo: Babel July 02, 2020 (new-repo)

Babel is a language interoperability tool intended for use by the high-performance scientific computing community. It supports the Scientific Interface Definition Language (SIDL) for the language-independent declaration of interfaces associated with scientific software packages. Although the project is no longer funded, it has recently moved to GitHub for ease of access by the HPC community. Documentation is available.

Spack 0.15.0 Released June 30, 2020 (release)

Spack is a flexible, configurable, Python-based, and open-source HPC package manager. Spack automates the installation and fine-tuning of simulations and libraries, operating on a wide variety of HPC platforms and enabling users to build many code configurations. Version 0.15.0 contains several new features, including

  • support for Cray clusters
  • virtual package configuration
  • environment activation
  • and much more!

Learn more:

Video: MFEM: Advanced Simulation Algorithms for HPC Applications June 24, 2020 (multimedia)

MFEM is an open-source software library that provides advanced mathematical algorithms for use by scientific applications. By relying on MFEM, application scientists can quickly develop highly accurate physics simulation codes on a variety of platforms—from laptops to the world’s largest supercomputers. MFEM version 4.0 incorporates the most advanced techniques from the scientific computing research community, and its methods are widely applicable, highly impactful, and easy to use. A new video (runtime 7:07) features members of the LLNL development team, who describe how the software library works.

New Repo: PolyClipper June 19, 2020 (new-repo)

PolyClipper is a C++ reimplementation of the geometric clipping operations in the R3D library originally written by Devon Powell, as documented in the paper Powell & Abell (2015). This repo focuses on clipping polygons (in 2D (x,y) coordinates) and polyhedra (in 3D (x,y,z) coordinates) with planes, returning new polygons/polyhedra as the result of this clipping. The input polygons/polyhedra may be non-convex and arbitrarily complex, but the only clipping operation supported is with planes. This is equivalent to intersecting one arbitrary (not necessarily convex) polygon/polyhedron with a convex polygon/polyhedron. Documentation is available.

New Repo: MaPPeRTrac June 16, 2020 (new-repo)

MaPPeRTrac stands for Massively Parallel, Portable, and Reproducible Tractography. This repo provides a brain tractography workflow for high-performance computing. It incorporates novel technologies to simplify and accelerate neuroimaging research. Setup requires Python 3.5+ and SLURM job scheduling on a multi-node system.

Maestrowf 1.1.8 Released June 11, 2020 (release)

Maestrowf is a tool for specifying and conducting general workflows locally and on supercomputers. Maestro parses a human-readable YAML specification that is self-documenting and portable from one user and environment to another. Along with other improvements, this release makes the Specification class more easily inherited.

Learn more:

LLNL to Host Online Developer Day June 09, 2020 (event)

Initiated in 2017, Developer Day is a day-long, annual event that brings software developers together from all over LLNL. The fourth installment of the popular event will be held virtually on July 30. Read more about Dev Day in last year’s recap.

ISC Is Going Virtual June 08, 2020 (event)

Although in-person conferences are not feasible this summer, LLNL will participate in the online ISC High Performance Conference (ISC20) on June 22–25. The event brings together the HPC community—from research centers, commercial companies, academia, national laboratories, government agencies, exhibitors, and more—to share the latest technology of interest to HPC developers and users. View details about LLNL’s papers, poster, and workshops.

Adiak 0.2.1 Released June 04, 2020 (release)

Adiak is a library for collecting metadata from HPC application runs, and distributing that metadata to subscriber tools. Adiak has a tool interface, which allows tools to subscribe to this metadata. Version 0.2.1 adds handling for cases where Adiak is called with a MPI communicator before MPI_Init.

Learn more:

Merlin 1.6.1 Released June 03, 2020 (release)

Merlin is a tool for running machine learning based workflows. The goal of Merlin is to make it easy to build, run, and process the kinds of large scale HPC workflows needed for cognitive simulation. Merlin is a distributed task queuing system, designed to allow complex HPC workflows to scale to large numbers of simulations. v1.6.1 includes updates to default visibility timeout, broker name, encryption key, monitor function, and more.

Learn more:

Webcast: Open Source Doesn't Have to Be Scary May 23, 2020 (event-report) (multimedia)

LLNL’s Ian Lee recently appeared on the Thought Leadership Consortium webcast entitled “Open Source Doesn’t Have to Be Scary.” Registration is free to watch the Zoom replay (01:25:00) on demand.

Podcast: Spack Attack! May 22, 2020 (multimedia)

In a recent RSE Stories podcast, LLNL’s Todd Gamblin shares his journey to at a national Lab and how getting angry at software led to development of a hugely popular package manager, Spack. The “Spack Attack!” episode runs 21:25. RSE is affiliated with the U.S. Research Software Engineer Association.

New Repo: CARE May 22, 2020 (new-repo)

CHAI and RAJA provide an excellent base on which to build portable code for different computing architectures. CARE expands on that functionality, adding new features such as loop fusion capability and a portable interface for many numerical algorithms. CARE provides all the basics for anyone wanting to write portable code.

SUNDIALS 5.3.0 Released May 21, 2020 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. This release includes the ability to control CUDA kernel launch parameters, new capabilities for monitoring the solve phase in certain modules, new functions, and more.

Learn more:

Magpie 2.4 Released May 21, 2020 (release)

Magpie contains a number of scripts for running big data software in HPC environments. It currently supports running over the parallel file system Lustre and running over any generic network file system. This release includes support for new versions of Hadoop, Storm, Hbase, Zeppelin, and more.

Learn more:

Charliecloud 0.16 Released May 21, 2020 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. Version 0.16 includes updates to storage paths, Docker semantics, the test suite, and more.

Learn more:

Maestrowf 1.1.7 Released May 17, 2020 (release)

Maestrowf is a tool for specifying and conducting general workflows locally and on supercomputers. Maestro parses a human-readable YAML specification that is self-documenting and portable from one user and environment to another. This release contains many enhancements, including

  • Addition of hashing to Study parameterization
  • A more generalized FluxScriptAdapter
  • Upgrades to pargs functionality
  • and much more!

Learn more:

Working Remotely: The Spack Team May 16, 2020 (story)

Better Scientific Software’s blog features a post about the Spack team’s experience working remotely and interacting with the Spack community. LLNL’s Todd Gamblin offers insight into making the most of online communication opportunities and stresses the importance of providing robust documentation so users can help themselves.

New Repo: BMSL May 14, 2020 (new-repo)

BMSL, the Bayesian Multitask with Structure Learning model, is a repository that accompanies a paper: “Bayesian Multitask Learning Regression for Heterogeneous Patient Cohorts” from the Journal of Biomedical Informatics. Multitask learning (MTL) is a sub-field of machine learning in which individual models for performing potentially related tasks are learned jointly. The Bayesian MTL model infers the task relationship structure directly from the data.

CHAI 2.1.0 Released May 13, 2020 (release)

CHAI is a C++ library providing an array object that can be used transparently in multiple memory spaces. CHAI can be used standalone, but is best when paired with the RAJA library, which has built-in CHAI integration that takes care of everything. This release includes support for global callbacks and pinned host memory. The Umpire submodule has also been updated to v2.1.0.

Learn more:

Hatchet 1.1.0 Released May 07, 2020 (release)

Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data. Version 1.1.0 includes additional pandas support, a GraphFrame reindex operator, and more tests.

Learn more:

New Repo: WCS May 06, 2020 (new-repo)

WCS (short for Whole Cell Simulator) is a computational framework that enables seamless integration of diverse simulation methods used in creating a whole cell model (i.e., all the known biochemical processes in a cell). Its methods run simultaneously, not only for whole pathways but also for subsets of reactions.

Maestro Workflow Conductor May 04, 2020 (story)

Maestro Workflow Conductor is a lightweight Python tool that can launch multi-step software simulation workflows in a clear, concise, consistent, and repeatable manner. It does this locally as well as on supercomputers. LLNL Computing recently published a project description, highlighting the challenges in scientific workflows that Maestro solves. “Before Maestro, it took a long time to stand up new workflows. Maestro has changed that by providing a consistent framework that can break down workflows into smaller pieces, and facilitate automated execution,” said project leader Frank Di Natale. Check out the Maestrowf repo.

New Repo: GIDIplus April 29, 2020 (new-repo)

GIDIplus is a suite of C++ libraries for accessing nuclear data from the Generalized Nuclear Database Structure (GNDS). Test data is not included in the repository but is available for download.

Podcast: Flexible Package Manager Automates the Deployment of Software on Supercomputers April 28, 2020 (multimedia)

In this podcast episode (5:54) produced by the Exascale Computing Project, LLNL’s Todd Gamblin talks about Spack: its role in the ECP’s software stack, the Spack-related events at last fall’s SC19, and the package manager’s R&D 100 Award.

Variorum 0.3.0 Released April 23, 2020 (release)

Variorum is a platform-agnostic library exposing monitor and control interfaces for several features in hardware architectures. Its general interfaces provide privileged functionality for monitoring and controlling various hardware-level features of multiple hardware architectures. The latest release includes:

  • Unit test infrastructure
  • Example integrations
  • Contributor code of conduct
  • and much more!

Learn more:

Gotcha 1.0.3 Released April 20, 2020 (release)

Gotcha is a library that provides function wrapping, interposing a wrapper function between a function and its callsites. Tools can use Gotcha’s programmable API to install hooks into other libraries. Version 1.0.3 includes interfaces for filtering which libraries are targeted for wrapping.

Learn more:

Podcast: Reducing the Memory Footprint and Data Movement on Exascale Systems April 16, 2020 (multimedia)

In this podcast episode (12:36) produced by the Exascale Computing Project, LLNL’s Peter Lindstrom talks about ZFP project, which is a compressed representation of multidimensional floating-point arrays that are ubiquitous in high-performance computing.

LLNL to Host First Virtual Hackathon April 12, 2020 (event)

Held since 2012, LLNL’s hackathons are 24-hour opportunities to brainstorm, foster creativity, prototype, and explore. Participants work in groups or individually and often strive to learn new skills, programming languages, and tools in service to LLNL’s missions. This year’s spring hackathon (April 30 through May 1) will be held virtually. In true hackathon spirit, several tech solutions will enable participants to collaborate remotely. Charalynn Macedo, division leader for LLNL’s Enterprise Applications Services, will kick off the event with a brief keynote presentation.

Charliecloud 0.15 Released April 06, 2020 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. Version 0.15 includes expanded capabilities, examples, and test suite.

Learn more:

New Repo: QnD April 05, 2020 (new-repo)

QnD (short for Quick and Dirty: Python Binary Storage Interface) is a simple, user-friendly API for storing numpy ndarrays in binary files. It is written as a frontend capable of supporting multiple backend file formats.

libCEED 0.6 Released April 01, 2020 (release)

The Center for Efficient Exascale Discretizations (CEED) within the US Department of Energy’s ECP is helping applications leverage future architectures by developing state-of-the-art discretization algorithms that better exploit the hardware and deliver a significant performance gain over conventional methods. libCEED is a high-order API library that provides a common algebraic low-level operator description, allowing a wide variety of applications to take advantage of the efficient operator evaluation algorithms in the different CEED packages. libCEED is a C99 library with no external dependencies.

Learn more:

Variorum 0.2.0 Released March 13, 2020 (release)

Variorum is a platform-agnostic library exposing monitor and control interfaces for several features in hardware architectures. Its general interfaces provide privileged functionality for monitoring and controlling various hardware-level features of multiple hardware architectures. The latest release includes:

  • Support for Nvidia platform – Volta architecture
  • On Intel platforms, translate both power limit time windows
  • Integrate Travis and GitLab for CI
  • and much more!

Learn more:

Podcast: Delivering Exascale Machine Learning Algorithms and Tools for Scientific Research March 12, 2020 (multimedia)

In this podcast episode (10:42) produced by the Exascale Computing Project, LLNL’s Brian Van Essen joins Brookhaven and LBNL colleagues to discuss an ECP co-design center called ExaLearn. ExaLearn leverages machine learning and artificial intelligence to inform the requirements for exascale machines.

MFEM 4.1 Released March 11, 2020 (release)

MFEM is a lightweight, general, scalable C++ library for finite element methods. Its goal is to enable high-performance scalable finite element discretization research and application development on a wide variety of platforms, ranging from laptops to supercomputers. The latest release includes several improvements and new features, such as:

  • Improved GPU capabilities including support for HIP, libCEED, Umpire, and debugging
  • GPU acceleration in additional examples, finite element and linear algebra kernels
  • Many meshing, discretization, and matrix-free algorithmic improvements
  • ParaView, GSLIB-FindPoints, HiOp, and Ginkgo support
  • 18 new examples and miniapps, including toy miniapps
  • and much more!

Learn more:

Caliper 2.3.0 Released March 11, 2020 (release)

Caliper is a program instrumentation and performance measurement framework. It is designed as a performance analysis toolbox in a library, allowing one to bake performance analysis capabilities directly into applications and activate them at runtime. The latest release includes several improvements and new features, such as:

  • Improved robustness
  • New PAPI service
  • Kokkos profiling support
  • Inclusive time and percentage calculation for the runtime-report config
  • Top-down analysis for Intel Skylake CPUs

Learn more:

New Repo: Typeforge March 10, 2020 (new-repo)

Typeforge is a tool for type refactoring of C/C++ programs. It enables users to change the type of any variable and automatically determines all necessary additional (i.e., type-dependent) changes. It guarantees the syntactic and semantic correctness of the generated code.

CCT 1.0.8 Released March 10, 2020 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. This release contains several new features, including:

  • MW spectra truncation
  • UQ measurements for final spectra results
  • Persistent measurement intermediary artifacts
  • Capability to export diagnostic plots as images

Learn more:

Charliecloud 0.14 Released March 03, 2020 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. Version 0.14 introduces internal code to pull images from a remote repository. skopeo and umoci are no longer required to build images using the fully unprivileged ch-grow builder, which simplifies installation and configuration.

Learn more:

STAT 4.0.2 Released February 28, 2020 (release)

STAT, the Stack Trace Analysis Tool, is a highly scalable, lightweight tool that gathers and merges stack traces from all of the processes of a parallel application to form call graph prefix trees. STAT generates two prefix trees termed 2D-trace-space and 3D-trace-space-time. STAT’s source code also includes STATBench, a tool to emulate STAT. STATBench enables the benchmarking of STAT on arbitrary machine architectures and applications by fully utilizing parallel resources and generating artificial stack traces. Version 4.0.2 includes

  • DynInst 10.X support
  • Core file merging enhancements

Learn more:

New Repo: tdmtpy February 27, 2020 (new-repo)

tdmtpy is a software tool developed for time domain inversion of complete seismic waveform data to obtain the seismic moment tensor. It supports both deviatoric and full moment tensor inversions as well as 1D and 3D basis Green’s functions.

New Repo: MAT February 27, 2020 (new-repo)

MAT, or Memory Analysis Tool, traces all memory accesses to stack(Static allocation)/heap(Dynamic allocation) on a trace run in a particular hardware and then estimates execution time on given arbitrary hardware configurations for hardware design space exploration. This repo is in its alpha version.

Podcast: Helping Applications Use Future Architectures with First-Rate Discretization Libraries February 26, 2020 (multimedia)

In this podcast episode (9:47) produced by the Exascale Computing Project, LLNL’s Tzanio Kolev, discusses ECP’s Center for Efficient Exascale Discretizations (CEED), which is a hub for high-order mathematical methods to increase application efficiency and performance.

VisIt 3.1.1 Released February 24, 2020 (release)

VisIt is an open source, interactive, scalable, visualization, animation and analysis tool. Among the enhancements included in v3.1.1 are:

  • Updated MFEM library to v4.0
  • Added host profiles for Leibniz Supercomputing Centre
  • Updated build_visit to work on MacOS 10.14

Learn more:

New Repo: Serac February 24, 2020 (new-repo)

Serac is a high-order nonlinear thermomechanical simulation code. Its primary purpose is to investigate multiphysics abstraction strategies and implicit finite element–based algorithm development for emerging computing architectures.

Spack 0.14.0 Released February 23, 2020 (release)

Spack is a flexible, configurable, Python-based, and open-source HPC package manager. Spack automates the installation and fine-tuning of simulations and libraries, operating on a wide variety of HPC platforms and enabling users to build many code configurations. Version 0.14.0 contains several new features, including

  • distributed builds
  • build pipelines
  • container builds

Learn more:

RAJAPerf 0.7.0 Released February 10, 2020 (release)

The RAJA performance suite (RAJAPerf) is designed to explore performance of loop-based computational kernels found in HPC applications. Specifically, it is used to assess, monitor, and compare runtime performance of kernels implemented using RAJA and variants implemented using standard or vendor-supported parallel programming models directly. Each kernel in the suite appears in multiple RAJA and non-RAJA (i.e., baseline) variants using parallel programming models such as OpenMP and CUDA. The v0.7.0 release updates the RAJA submodule to v0.11.0 and the BLT submodule to v0.3.0.

Learn more:

New Repo: MHYSA February 06, 2020 (new-repo)

MHYSA, or Multispecies Hypersonic Flow Simulator, is a conservative finite-difference algorithm to solve the 1D, 2D, and 3D multispecies Navier-Stokes equations for hypersonic flow applications.

New Repo: Bindee February 06, 2020 (new-repo)

Bindee is a best-effort, binding tool for generating C++-Python bindings.

Video: Spack at FOSDEM '20 February 02, 2020 (event-report) (multimedia)

FOSDEM is an annual two-day event promoting the widespread use of free and open source software. The 2020 conference took place in Brussels, Belgium, on February 1–2. Videos of speakers, lightning talks, and other sessions are available on the FOSDEM website. LLNL’s Todd Gamblin led two sessions about the package manager Spack:

New Repo: INQ February 01, 2020 (new-repo)

INQ is an engine for electronic structure calculations. It can work in three ways: as a standalone electronic structure code, as a library to implement complex electronic structure methods, or as a proxy-app to evaluate the performance of electronic structure algorithms in high-performance computing platforms. It concentrates on algorithms as a portability hardware layer, generic types and flexibility of usage.

New Repo: Copson Expansion Solution January 30, 2020 (new-repo)

The new Copson Expansion Solution repo provides code to evaluate Copson’s solution for the expansion of an ideal gas into vacuum. A draft journal article is included for context about this physics problem.

RAJA 0.11.0 Released January 27, 2020 (release)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption.

The v.0.11.0 release includes new features:

  • HIP compiler back-end added to support AMD GPUs
  • Updated version of camp third-party library
  • New tutorial material and exercises

Learn more:

New Repo: Remote Mirror Security January 24, 2020 (new-repo)

Remote Mirror Security (RMS) provides a framework for building git hooks that apply logic to secure changes from remote mirrors. The project relies on the update.d git hook to evaluate inbound repository changes. More details and documentation will be forthcoming!

New Repo: AL NLP January 24, 2020 (new-repo)

A new Active Learning framework for Natural Language Processing (AL NLP) repository contains code implementing an active learning loop for natural language processing of pathology reports related to the National Cancer Institute (NCI) Pilot 3 project. This NCI project is a population-level pilot aimed at applying deep learning and other advanced computing technologies to cancer surveillance data in order to predict patient outcomes.

New Repo: trainGMM January 23, 2020 (new-repo)

trainGMM performs Gaussian mixture model (GMM) analysis over a user-provided data set of sampled waveforms to compute vectors suitable for discriminating between kinds of pulse shapes, produces graphics illustrating the results, and writes output data to a file. The output data can be uploaded to special FPGA (field programmable gate array) firmware that runs on the Struck SIS3316 digitizer. The parameters of the GMM and the data it operates on are restricted to match several hard-coded parameters expected by the Struck FPGA code. trainGMM was developed in python and is run using python.

Merlin 1.2.0 Released January 23, 2020 (release)

Merlin is a tool for running machine learning based workflows. The goal of Merlin is to make it easy to build, run, and process the kinds of large scale HPC workflows needed for cognitive simulation. Merlin is a distributed task queuing system, designed to allow complex HPC workflows to scale to large numbers of simulations. v1.2.0 includes:

  • new machines keyword in merlin.resources.workers.<name>
  • additional local CI tests
  • new step field restart command

Learn more:

New Repo: AutoParBench January 22, 2020 (new-repo)

AutoParBench is a benchmark framework to evaluate compilers and tools designed to automatically insert OpenMP directives. The project’s goals are (1) to generate actionable information (e.g., bug reports and feature requests) for compiler and tool developers and (2) to drive the research for automatic parallelization using OpenMP, making OpenMP more declarative to reduce the burdens on OpenMP users. Documentation is in progress.

New Repo: Gecko January 21, 2020 (new-repo)

Gecko is a C++ library for solving graph linear arrangement problems. Gecko orders graph nodes, representing data elements, connected by undirected edges, representing affinity relations, with the goal of minimizing a chosen functional of edge length. Gecko was primarily designed to minimize the product of edge lengths but can also be used to reduce bandwidth (maximum edge length) and 1-sum (sum of edge lengths), among others. Documentation currently includes FAQ.

Conduit 0.5.1 Released January 18, 2020 (release)

Conduit provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python. It is used for data coupling between packages in-core, serialization, and I/O tasks. The Core API provides a flexible way to describe and access hierarchical data. v0.5.1 includes:

  • support for conda-forge builds for Linux, Windows, and MacOS
  • auto-detection of various protocols
  • improved linking for compiler modules

Learn more:

Charliecloud 0.13 Released January 14, 2020 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. In v0.13, the build system was rewritten, and the layout of the source code and installed files were changed significantly.

Learn more:

SUNDIALS 5.1.0 Released January 08, 2020 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. Building off the v5.0.0 release in October, this release includes new utility functions, added support for a user-supplied function to update the prediction for each implicit stage solution in ARKStep, an updated MRIStep module, and more.

Learn more:

BLT 0.3.0 Released January 08, 2020 (release)

BLT (Building, Linking, and Testing) is a streamlined CMake build system foundation for developing HPC software. BLT makes it easy to get up and running on a wide range of HPC compilers, operating systems, and technologies. The repo includes unit testing and benchmarking. The v0.3.0 release includes support for target property macros, custom target names, and Cray compilers.

Learn more:

New Repo: Varity January 02, 2020 (new-repo)

Varity is a framework to identify variations in floating-point programs through randomized differential testing. Varity generates random tests that include floating-point operations and compile these tests with different compilers in a system. It also generates random floating-point inputs for the tests. When tests are executed, the results are compared to identify variations in the results. Varity helps users of a system to identify the compilers that produce the most similar results in the system.

New Repo: fpzip December 20, 2019 (new-repo)

fpzip is a library and command-line utility for lossless and optionally lossy compression of 2D and 3D floating-point arrays. fpzip currently supports IEEE-754 single (32-bit) and double (64-bit) precision floating-point data. Read more about this repo and its relationship to the zfp repo.

RAJAPerf 0.6.0 Released December 19, 2019 (release)

The RAJA performance suite (RAJAPerf) is designed to explore performance of loop-based computational kernels found in HPC applications. v0.6.0 contains two new variants of each kernel (sequential-lambda and OpenMP-lambda) and several new kernels.

Learn more:

Hatchet 1.0.0 Released December 12, 2019 (release)

Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data. Version 1.0.0 is the first major release of this software.

Learn more:

CHAI 2.0.0 Released December 12, 2019 (release)

CHAI is a C++ library providing an array object that can be used transparently in multiple memory spaces. CHAI can be used standalone, but is best when paired with the RAJA library, which has built-in CHAI integration that takes care of everything. This release includes a major refactoring of the integration with the RAJA performance portability layer. CHAI now provides an ENABLE_RAJA_PLUGIN option that will build a plugin for RAJA enabling automatic data migration when CHAI and RAJA are linked in the same application.

Learn more:

MFEM and VisIt Benefits Engineer in LLNL’s Design Optimization Laboratory December 10, 2019 (story)

MFEM and VisIt are key design codes in LLNL’s Center for Design and Optimization, which is developing algorithms that can optimize immensely complex systems in HPC environments. The MFEM library enables application scientists to prototype parallel physics application codes quickly, based on partial differential equations discretized with high-order finite elements. VisIt—a visualization, animation, and analysis tool—helps scientists and engineers interactively visualize and analyze data, from small (&lt101 core) desktop-sized projects to large (&gt105 core) leadership-class computing facility simulation campaigns. Learn more about the Center in the Science & Technology Review article “Leading a Revolution in Design.”

On the Spack Track at SC19 December 06, 2019 (story)

At the annual supercomputing conference (SC19) in Denver, Colorado, Spack events were held each day. As a reflection of its grassroots heritage, nine sessions were planned by more than a dozen thought leaders from seven organizations, including three DOE laboratories and Sylabs, the company behind Singularity. Thirteen thousand six hundred conference attendees had the chance to learn about Spack from two meet-and-greets, three birds-of-a-feather meetings, three papers, and more. This HPCwire article describes Spack’s history, functionality, impact, and user community through the many Spack-related events at SC19.

Podcast: R&D 100 Award-winning Software Enables I/O Performance Portability and Code Progress December 06, 2019 (multimedia)

A software product called the Scalable Checkpoint/Restart (SCR) Framework 2.0 recently won an R&D 100 Award. SCR enables HPC simulations to take advantage of hierarchical storage systems, without complex code modifications.

In this podcast episode (12:18) produced by the Exascale Computing Project, LLNL’s Kathryn Mohror and Elsa Gonsiorowski talk about what SCR is and does, the challenges involved in creating it, and the impact it is expected to have on HPC performance.

LLNL’s Presence in HPC Shines Bright at SC19 December 05, 2019 (event-report)

The 2019 International Conference for High Performance Computing, Networking, Storage, and Analysis—better known simply as SC19—returned to Denver, and once again LLNL made its presence known as a force in supercomputing. The conference, held November 17 through 22, was attended by nearly 14,000 people representing 118 countries.

Many open source technologies were featured in LLNL’s technical program. Read the full recap on LLNL’s main website.

Podcast: Software Enables Use of Distributed In-System Storage and Parallel File System December 05, 2019 (multimedia)

For decades, HPC applications used a shared parallel file system for input/output (I/O), but the recent addition of new storage devices in systems—burst buffers, for example—has enabled the creation of a storage hierarchy. The hierarchy can be arranged such that in-system storage is the first level, and the parallel file system the second. For optimal performance, applications must change along with the architectures.

In this podcast episode (11:28) produced by the Exascale Computing Project, LLNL’s Kathryn Mohror and ORNL’s Sarp Oral talk about the open source tool UnifyFS, which can provide I/O performance portability for applications, enabling them to use distributed in-system storage and the parallel file system.

Spack 0.13.2 Released December 04, 2019 (release)

Spack is a flexible, configurable, Python-based, and open-source HPC package manager. Spack automates the installation and fine-tuning of simulations and libraries, operating on a wide variety of HPC platforms and enabling users to build many code configurations. Version 0.13.2 contains major performance improvements for Spack environments, such as:

  • allow missing modules if they are blacklisted
  • speed up environment activation
  • not modifying run-env if a spec is not installed

Learn more:

Maestrowf 1.1.6 Released December 04, 2019 (release)

Maestrowf is a tool for specifying and conducting general workflows locally and on supercomputers. Maestro parses a human-readable YAML specification that is self-documenting and portable from one user and environment to another. This release contains new features such as:

  • Enabling of loading specifications from streams and stream-like objects
  • User-enabled workspace hashing to counter long parameter lists
  • Automatic adapter detection

Learn more:

New Repo: Simplexdesign November 26, 2019 (new-repo)

Simplexdesign is a collection of tools for the design of statistical experiments on Agent Based Models. It includes a coordinate exchange algorithm for homogeneous agents and, more generally, any simplex. The repo also includes an optimization algorithm for the case with multiple classes of homogeneous agents.

New Repo: Quantkriging November 26, 2019 (new-repo)

Quantkriging is a method to model the uncertainty of a stochastic simulation by modelling both the overall simulation response and the output distribution at each sample point. The output distribution is characterized by dividing it into quantiles, where the division of each quantile is determined by kriging.

LLNL-Led Team Wins SC19 Best Paper Award November 22, 2019 (event-report) (story)

On November 22, a panel of judges at the International Conference for High Performance Computing, Networking, Storage and Analysis (SC19) awarded a multi-institutional team led by LLNL computer scientists with the conference’s Best Paper award. The paper, entitled “Massively Parallel Infrastructure for Adaptive Multiscale Simulations: Modeling RAS Initiation Pathway for Cancer,” describes the workflow driving a first-of-its-kind multiscale simulation on predictively modeling the dynamics of RAS proteins—a family of proteins whose mutations are linked to more than 30 percent of all human cancers—and their interactions with lipids, the organic compounds that help make up cell membranes.

The team’s software, called MuMMI (Multiscale Machine-Learned Modeling Infrastructure), will soon be released as open source. Read more about the award on LLNL news.

New Repo: Merlin November 19, 2019 (new-repo)

Merlin is a tool for running machine learning based workflows. The goal of Merlin is to make it easy to build, run, and process the kinds of large scale HPC workflows needed for cognitive simulation. At its heart, Merlin is a distributed task queuing system, designed to allow complex HPC workflows to scale to large numbers of simulations. See the documentation for more information including configuration variables and FAQ.

New Repo: Hatchet November 18, 2019 (new-repo)

Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data. It is intended for analyzing performance data that has a hierarchy (for example, serial or parallel profiles that represent calling context trees, call graphs, nested regions’ timers, etc.). Hatchet implements various operations to analyze a single hierarchical data set or compare multiple data sets, and its API facilitates analyzing such data programmatically. See the documentation for more information including installation steps.

Caliper 2.12.0 Released November 13, 2019 (release)

Caliper is a program instrumentation and performance measurement framework. It is designed as a performance analysis toolbox in a library, allowing one to bake performance analysis capabilities directly into applications and activate them at runtime. The latest release includes several improvements and new features, such as:

  • Many improvements to the ConfigManager API and syntax
  • Support for metadata collection with the Adiak library
  • Record memory high-water mark

Learn more:

New Repo: Variorum November 12, 2019 (new-repo)

Variorum is a platform-agnostic library exposing monitor and control interfaces for several features in hardware architectures. It provides general interfaces to provide privileged functionality for monitoring and controlling various hardware-level features of multiple hardware architectures. Variorum provides vendor-neutral APIs such that the user can query or control hardware knobs without needing to know the underlying vendor’s implementation. These APIs enable HPC application developers to gain a better understanding of performance through various metrics for the devices contained within the node. See the documentation for a Quick Start Guide.

Software Engineering 101: I have some code! Now what? November 12, 2019 (event-report) (story) (this-website)

As part of LLNL’s Computing 101 speaker series, Ian Lee gave a talk to employees on November 12 titled “Software Engineering 101: I have some code! Now what?” The presentation reviewed the Lab’s resources for supporting software engineering and open source development.

Lee, who manages this website and leads many initiatives in the Lab’s open source community, aimed his remarks at relative newcomers to the software development landscape. He also updated the audience on the state of open source development at the Lab.

The Lab provides a wide range of support and solutions for just about any task a developer does: programming languages, package managers, computing platforms, code editors, version control systems, project communication, project tracking, documentation, and much more. Lee provided an overview of these options, offered advice about how to navigate the Lab’s software resources, and encouraged developers to take advantage of colleagues’ knowledge and experience.

Lee summarized the Lab’s recent open source activity, which echoes a trend toward developing “out in the open,”—i.e., not waiting for code to mature before releasing it for community feedback and contributions. (As this website shows, the Lab and affiliated GitHub organizations have almost 600 repos.) Accordingly, the Lab has updated its open source release policies to support modern code development practices.

Among open source projects Lee highlighted in his talk were 2019 R&D 100 Award winners Spack and SCR (Scalable Checkpoint/Restart) and the software stack underpinning the Exascale Computing Project.

Lee also demoed this website’s category-driven design changes, LLNL’s open source logo (and stickers), the @LLNL_OpenSource Twitter account, and Slack channels. He noted that LLNL may have a booth at PyCon 2020, which will be held April 15-23 in Pittsburgh. (Conferences such as PyCon provide LLNL’s open source software community with opportunities for networking, collaboration, and technical skills development. Lab employees interested in attending similar events may contact Ian Lee for funding.)

New Repo: SAFIRE November 11, 2019 (new-repo)

SAFIRE (Scalable and Accurate Fault Injection for Parallel Multi-threaded Applications) is a fault injection framework, descending from REFINE, that supports injecting bit-flip faults in both serial and multi-threaded programs. SAFIRE includes a modified LLVM compiler backend for x86 to instrument and inject bit-flip faults on machine instructions. The backend implements several optimizations for fast instrumentation and injection that make SAFIRE the fastest and most accurate tool for fault injection so far.

ESGF Architecture Workshop November 08, 2019 (event-report)

Members of the Earth System Grid Federation (ESGF) gathered in Abingdon, England, on November 5-7 to kick off the redesign process for the Federation’s computing architecture. Since the original system was designed a decade ago, the number of ESGF’s supported projects and disciplines has grown and diversified. Furthermore, operational requirements are clearer for the ESGF to support an international federated archive of this size. Many of the ESGF nodes now have other functions beyond CMIP (the Coupled Model Intercomparison Project), and the landscape of data repository and science needs has changed.

Led by ESGF’s Executive Committee, the workshop team discussed improvements to the user experience, data repository and management, data compute requirements, and platform and system administration. This workshop concluded with a high-level roadmap for future architecture directions, which will be presented at the larger ESGF conference in March. LLNL’s delegates to the workshop were Ghaleb Abdulla (principal investigator and co-chair of the Executive Committee), Sasha Ames (member of multiple ESGF Working Teams) and Jason Boutte (Compute Working Team member).

CCT 1.0.7 Released November 07, 2019 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. This release contains several new features, including:

  • Added a constraint set configuration panel in Parameter for the velocity model and the model space bounds on Shape (V/B/G) models for advanced users
  • Updated the input/output formats to include the new configurable fields
  • Updated notebook to use new REST JSON format for measurements
  • Added ability in Shape and Site to grow/shrink the data on the Y and X axis respectively via a button toggle

Learn more:

Charliecloud 0.12 Released November 04, 2019 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. This simple approach avoids most security risks while maintaining access to the performance and functionality already on offer.

This release contains two new test suite features:

  • Added a script ch-test that manages the tests
  • Removed the option to use an embedded Bats, eliminating the need for a Git submodule and simplifying packaging

Learn more:

ESGF User Tutorial Videos November 01, 2019 (multimedia)

The Earth System Grid Federation (ESGF)—a robust, distributed data and computation platform enabling worldwide access to huge amounts of scientific data—has launched a YouTube channel for user support. Current videos include tutorials for data downloads. Subscribe to the channel to be notified when new videos are posted.

RAJA 0.10.0 Released October 30, 2019 (release)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption. The v.0.10.0 release includes new features:

  • Plugin registry feature
  • CUDA block direct execution policies
  • Bounds checking option to RAJA Layout types
  • Template project on GitHub

Learn more:

Conduit 0.5 Released October 26, 2019 (release)

Conduit provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python. It is used for data coupling between packages in-core, serialization, and I/O tasks. The Core API provides a flexible way to describe and access hierarchical data. v0.5 includes:

  • node set support for Python tuples and Numpy String Arrays
  • new blueprints for topological data generation and ZFP compressed array data
  • new relays to support ZFP and HPF5 I/O

Learn more:

Spack 0.13 Released October 25, 2019 (release)

Spack is a flexible, configurable, Python-based, and open-source HPC package manager. Spack automates the installation and fine-tuning of simulations and libraries, operating on a wide variety of HPC platforms and enabling users to build many code configurations.

Spack grew by over 700 packages in the past year – now more than 3,500 total – and the project now has over 450 contributors. v0.13 is a major release:

  • environments behaving more like virtualenv/conda
  • combinatorial environments for facility deployment
  • ability to build easily navigable symlink trees environments
  • many new commands/options
  • continuous integration/build farm support
  • simplified package syntax for specifying build/run environment modifications
  • separate tutorial repo
  • and much more!

Learn more:

Two Repos among 2019 R&D 100 Award Finalists October 24, 2019 (story)

The annual R&D 100 Awards finalists have been announced. Among them are six LLNL-developed or co-developed technologies. In the Software/Services category, two open source projects have been recognized:SCR (Scalable Checkpoint/Restart) and Spack. Winners will be announced on October 29.

SUNDIALS 5.0.0 Released October 21, 2019 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. Incremental v5.0.0 releases occurred in March, June, and September. This complete release includes:

  • increased minimum required CMake version to 3.5 for most SUNDIALS configurations
  • multiple new functions to assist in creating custom objects
  • new Fortran 2003 interfaces
  • new linear solver interface functions
  • and much, much more!

Learn more:

New Repo: ExaConstit October 11, 2019 (new-repo)

ExaConstit is a crystal plasticity finite-element methods code used to determine bulk constitutive properties of metals. It is a nonlinear, quasi-static, implicit solid mechanics code built on the MFEM library based on an updated Lagrangian formulation (velocity based). The code supports either constant time steps or user-supplied delta time steps. Boundary conditions are supplied for the velocity field applied on a surface. ExaConstit supports a number of different preconditioned Krylov iterative solvers (PCG, GMRES, MINRES) for either symmetric or nonsymmetric positive-definite systems.

New Repo: Graph-embed October 04, 2019 (new-repo)

Graph-embed is a small library for multi-level graph partitioning and embedding. Graphs can be read in using linalgcpp. Examples are provided.

UnifyFS 0.9.0 Released October 03, 2019 (release)

Unify is a suite of specialized, flexible file systems that can be included in a user’s job allocations. Formerly known as UnifyCR (for checkpoint/restart), UnifyFS supports scalable and efficient aggregation of I/O bandwidth from burst buffers while having the same life cycle as a batch-submitted job.

Learn more:

New Repo: Rescal-snow October 03, 2019 (new-repo)

Rescal-snow is a model of dunes and snow waves. When wind blows over snow, it self-organizes. This forms surface features, such as ripples and dunes, that alter the reflectivity and thermal conductivity of the snow. Studying these features in the field is cold and challenging, so Rescal-snow was created to enable snow scientists to study snow features in controlled numerical experiments. This model is intended for researchers in snow science, geomorphology, and polar climate.

New Repo: Adiak October 02, 2019 (new-repo)

Adiak is a library for collecting metadata from HPC application runs, and distributing that metadata to subscriber tools. Adiak has a tool interface, which allows tools to subscribe to this metadata. Example tools might include performance analysis tools, workflow tracking tools, or anything else that needs this metadata. Tools can iterate receive metadata name/values as they are provided by the application, or examine existing metadata values.

VisIt 3.0.2 Released September 24, 2019 (release)

VisIt is an Open Source, interactive, scalable, visualization, animation and analysis tool. Among the enhancements included in v3.0.2 are:

  • Openssl added to the list of required libraries in build_visit
  • Added turbo color table
  • Host profiles added for the Oak Ridge National Laboratory’s Summit supercomputer
  • Binary distributions added for Ubuntu 16, Ubuntu 18, Debian 9, and Fedora 27
  • and much more!

Learn more:

New Repo: FPP September 24, 2019 (new-repo)

FPP (Function Preserving Projection) is a linear projection technique for finding a 2D view that captures interpretable patterns of the given function in a high-dimensional domain. The function can be univariate or multivariate, continuous (regression), or discrete (classification).

SUNDIALS 5.0.0-dev.2 Released September 18, 2019 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. This release includes:

  • new optional operation to the SUNLINEARSOLVER API
  • performance improvements to the CUDA NVECTOR
  • two new Set functions to MRIStep
  • new SUNLinearSolver implementation
  • three new accessor functions to the SUNLinSol_KLU module

Learn more:

libCEED 0.5 Released September 18, 2019 (release)

The Center for Efficient Exascale Discretizations (CEED) within the US Department of Energy’s ECP is helping applications leverage future architectures by developing state-of-the-art discretization algorithms that better exploit the hardware and deliver a significant performance gain over conventional methods. libCEED is a high-order API library that provides a common algebraic low-level operator description, allowing a wide variety of applications to take advantage of the efficient operator evaluation algorithms in the different CEED packages. libCEED is a C99 library with no external dependencies.

Learn more:

Charliecloud 0.11 Released September 17, 2019 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources. This simple approach avoids most security risks while maintaining access to the performance and functionality already on offer.

This release contains new features along with documentation and test suite improvements:

  • Charliecloud is now in Fedora and EPEL
  • ch-grow: support ARG instruction
  • ch-run: /etc/resolv.conf on the host is now optional

Learn more:

Umpire 1.1.0 Released September 16, 2019 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures. v1.1.0 includes upgrades to detect version mismatches when linking multiple libraries, fixes to signature of C function, and updated pool algorithm.

Learn more:

New Repo: UEDGE September 13, 2019 (new-repo)

UEDGE is an interactive suite of physics packages using the Python or BASIS scripting systems. The plasma is described by time-dependent 2D plasma fluid equations that include equations for density, velocity, ion temperature, electron temperature, electrostatic potential, and gas density in the edge region of a magnetic fusion energy confinement device. slab, cylindrical, and toroidal geometries are allowed, and closed and open magnetic field-line regions are included. Classical transport is assumed along magnetic field lines, and anomalous transport is assumed across field lines. Multi-charge state impurities can be included with the corresponding line-radiation energy loss.

New Repo: MI-ChemVis September 01, 2019 (new-repo)

Domain-specific applications often require specially designed visualization systems. MI-ChemVis is a browser-based visualization of chemistry papers, specifically morphology, material, and chemical data extracted from them. The UI is made with nanomaterial synthesis papers in mind.

JuliaCon Recap and Videos August 22, 2019 (event-report) (multimedia)

LLNL’s Seth Bromberger attended JuliaCon 2019 on July 22–25 in Baltimore, Maryland. He gave a talk on July 24 to a full house: “Using Julia in Secure Environments” (abstract, YouTube video). The focus of the presentation was engaging the community in thinking about transitive package dependencies and the security of the source code supply chain.

Other notable events at the conference included a keynote address by Steven Lee, applied mathematics program manager for Advanced Scientific Computing Research (ASCR) within the U.S. Department of Energy’s Office of Science. His presented his office’s computing priorities and mentioned related LLNL work (YouTube video). In addition, LLNL’s Jane Herriman received a Julia Community Prize for her “teaching, outreach, and community stewardship.”

Conferences such as JuliaCon provide LLNL’s open source software community with opportunities for networking, collaboration, and technical skills development. Lab employees interested in attending similar events may contact Ian Lee for funding.

CCT 1.0.5 Released August 14, 2019 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. This release contains performance improvements and other updates, namely:

  • Added REST endpoint on the envelope service to request to just get stacked files back rather than envelopes
  • 10–30% performance improvements when making many (>10K) high sample rate (>100hz) envelopes at once

Learn more:

New Repo: ExaCMech August 05, 2019 (new-repo)

ExaCMech is a GPU-friendly library of constitutive models. The models are based on standard continuum mechanics concepts. Crystal-mechanics-based and porosity-mechanics-based models are a principal focus. Models are meant for standard crystalline metallic materials deforming under quasi-static conditions. Constitutive model response is a main ingredient in the simulation of deformation of material, and the constitutive model has two main jobs: It provides the stress tensor that goes into the balance of linear momentum, and it updates the evolving state of the material. This state can be tracked by variables for the stress, dislocation density, orientation of crystal lattices, grain size, and so on. For context, the GitHub repository includes links to relevant journal articles that reference similar models and algorithms.

CHAI 1.2.0 Released August 05, 2019 (release)

The CHAI library handles automatic data migration to different memory spaces behind an array-style interface. It was designed to work with RAJA and integrates with it. CHAI may be used with other C++ abstractions as well. v1.2.0 contains support for AMD devices using HIP as well as updates for the 1.0.0 release of Umpire.

Umpire 1.0.0 Released August 03, 2019 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures. With v1.0.0, Umpire is MPI-aware, and AllocationStrategies may be wrapped with multiple extra layers. Additional changes include directing log and replay output to files, one per process.

Learn more:

New Repo: PySABER August 02, 2019 (new-repo)

PySABER is a python package for characterizing the X-ray source and detector blur in cone-beam X-ray imaging systems. SABER is an abbreviation for Systems Approach to Blur Estimation and Reduction. Note that even parallel beam X-rays in synchrotrons are in fact cone beams albeit with a large source to object distance. X-ray images, also called radiographs, are simultaneously blurred by both the X-ray source spot blur and detector blur. This package uses a numerical optimization algorithm to disentangle and estimate both forms of blur simultaneously.

New Repo: HELICS-FMI August 01, 2019 (new-repo)

Energy systems and their associated information and communication technology systems are becoming increasingly intertwined. As a result, effectively designing, analyzing, and implementing modern energy systems increasingly relies on advanced modeling that simultaneously captures both the cyber and physical domains in combined simulations. It is designed to increase scalability and portability in modeling advanced features of highly integrated power system and cyber-physical energy systems.

LLNL’s Hierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS) was originally developed for electric power systems use cases, and now it can be used for co-simulation in other domains. The HELICS library provides a general-purpose, modular, highly-scalable co-simulation framework that runs cross-platform. A new repository has been added to the HELICS suite, HELICS-FMI, which allows functional mockup units to interact with HELICS.

Software Portal Redesign and GitHub Integration July 30, 2019 (this-website)

Recently this website received several changes that improve the user’s experience, keep the content fresh, and help the admin team monitor and track all repositories under the LLNL organization on GitHub. We are excited to improve user access to LLNL’s 500+ open source repositories and appreciate the help of our summer intern, Angela Flores, who is pursuing a B.S. in computer science with a minor in cybersecurity from Cal State Long Beach.

New website features include:

  • Home page leaderboard image
  • Dynamic catalog navigation by categories and their “overflow” pages (e.g., Applications)
  • Standardized use of topic tags on repos, which drive the categories
  • RADIUSS catalog,* a subset of the full catalog
  • Embedded Twitter feed on the News and News Archive pages
  • Automatic twice-daily GitHub data update, which updates the repos listed under each category as well as the visualizations on the Explore page
  • and much more!

*LLNL’s RADIUSS project—Rapid Application Development via an Institutional Universal Software Stack—aims to broaden usage across LLNL and the open source community of a set of libraries and tools used for HPC scientific application development.

LLNL's Third Annual Developer Day Focuses on Career Lifecycle and Best Practices July 26, 2019 (story)

Initiated in 2017, Developer Day is a day-long, annual event that brings software developers together from all over LLNL. This year’s Dev Day included a panel discussion about onboarding new hires; short talks on topics ranging from staying engaged at work to learning unicode characters; and deep dives on software quality assurance and cloud services. The event featured a keynote address by Dr. Jeffrey Carver from the University of Alabama, who spoke about “Contemporary Peer Code Review Practices in Research Software.”

RAJA 0.9.0 Released July 25, 2019 (release)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption. The v.0.9.0 release includes new features:

  • Change in atomic operations
  • Extension of the lambda statement interface in the RAJA kernel API
  • Support of tuple index values by minloc and maxloc reductions

Learn more:

New Repo: Bridge Kernel July 25, 2019 (new-repo)

Bridge Kernel is a Jupyter kernel for connecting to backends that implement the bridge kernel (bk) protocol. The bk protocol is a small client-server protocol that emphasizes minimal dependencies, easier embedding with MPI, secure connections, secure authentication, and automatic tunneling.

New Repo: SPIFY July 20, 2019 (new-repo)

SPIFY, which stands for Spify Parser of Input Files with YAML syntax, is a C++ library for parsing input files to be used in scientific computing applications. The library allows an application developer to define a full set of required and optional input variable of different types and handles all of the parsing and validation.

New Repo: GIDIplus July 18, 2019 (new-repo)

GIDIplus provides C++ libraries for accessing nuclear data from the Generalized Nuclear Database Structure (GNDS).

CEED’s Impact on Exascale Computing Project Efforts Is Wide-Ranging July 17, 2019 (release)

The Center for Efficient Exascale Discretizations (CEED) within the US Department of Energy’s ECP is helping applications leverage future architectures by developing state-of-the-art discretization algorithms that better exploit the hardware and deliver a significant performance gain over conventional methods. The focus is on high-order methods for high-fidelity and better machine utilization, with a range of orders providing flexibility in uncertain hardware and software environments.

The recent release of CEED v2.0 includes many open source projects such as 12 integrated Spack packages for libCEED, MFEM, Nek5000, NekCEM, Laghos, NekBone, HPGMG, OCCA, MAGMA, gslib, PETSc, and PUMI, plus an updated CEED “meta-package.”

Video: CASC Accelerates Scientific Discovery July 17, 2019 (multimedia)

LLNL’s Center for Applied Scientific Computing (CASC) serves as a window to the broader computer science, computational physics, applied mathematics, and data science research communities. A new video showcasing CASC’s computational mathematics research debuted at the International Council for Industrial and Applied Mathematics (ICIAM) conference in July. Among the featured projects are open source repos MFEM, a library of scalable finite-element discretization and solver algorithms, and [XBraid] (https://github.com/XBraid/xbraid), a library of parallel-in-time solvers.

Charliecloud 0.10 Released July 16, 2019 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources.

This release contains two important new features:

  • Completely unprivileged end-to-end workflow, with no root, no sudo, and no setuid/setcap helper programs
  • SquashFS wrapper scripts to facilitate a workflow based on SquashFS files rather than tarballs

Learn more:

VisIt 3.0.1 Released July 15, 2019 (release)

VisIt is an Open Source, interactive, scalable, visualization, animation and analysis tool. Among the enhancements included in v3.0.1 are:

  • Rewrite of the Mili database reader
  • New database readers for ADIOS2 v2.4.0
  • Default color map settings
  • Enhanced default volume renderer
  • Ability for internallauncher to launch single-processor parallel engines

Learn more:

New Repo: CSLD July 13, 2019 (new-repo)

Compressive Sensing Lattice Dynamics, or CSLD, provides a comprehensive package to study lattice dynamics from first-principles. The interatomic force constants were fitted using the compressive sensing algorithm. CSLD requires Python, C++, and Fortran 90 compilers for installation.

Why Do We Need Supercomputers and Who Is Using Them? July 10, 2019 (story)

PC Magazine recently featured LLNL’s supercomputing facility to find out how the supercharged machines handle everything from virtual nuclear weapons tests to weather modeling. The article highlights examples of simulations performed on the Lab’s computers, such as a fusion energy research experiment generated by the MFEM-based BLAST shock hydrodynamics code and visualized with VisIt.

MacPatch 3.3.0.2 released July 08, 2019 (release)

MacPatch – used at LLNL to manage 3,000+ computers – simplifies the act of patching and installing software on Mac OS X based systems. The client relies on using the built-in software update application for patching the Mac OS X system updates and its own scan and patch engine for custom patches. v3.3.0.2 is a major release with a completely new UI and the backend updated to Python 3.

Learn more:

New Repo: Zero-Order Reaction Kinetics (Zero-RK) July 01, 2019 (new-repo)

Zero-Order Reaction Kinetics, or Zero-RK is a software package that simulates chemically reacting systems in a computationally efficient manner. The fundamental advance embodied in Zero-RK is the numerical approach, which results in orders-of-magnitude reduction in simulation time while maintaining the accuracy of the results.

New Repo: H5Z-ZFP June 28, 2019 (new-repo)

H5Z-ZFP is a highly flexible floating-point and integer compression plugin for the HDF5 library using ZFP compression. The plugin supports ZFP versions 0.5.0 through 0.5.5. It also supports all 4 modes of the ZFP compression library as well as 1D, 2D, and 3D datasets of single and double precision integer and floating-point data. Check out the GitHub repo and the v1.0.0 release.

umap 2.0.0 Released June 26, 2019 (release)

Umap is a library that provides an mmap()-like interface to a simple, user- space page fault handler based on the userfaultfd Linux feature. The use case is to have an application specific buffer of pages cached from a large file (i.e. out-of-core execution using memory map). This release includes:

  • Performance improvements
  • Support for multiple umap regions
  • Support for page prefetch
  • Support for page read-ahead

Learn more:

Caliper 2.1.0 Released June 25, 2019 (release)

Caliper is a program instrumentation and performance measurement framework. It is designed as a performance analysis toolbox in a library, allowing one to bake performance analysis capabilities directly into applications and activate them at runtime. This release includes several improvements and new features:

  • Simplified linking of all modules
  • ConfigManager for enabling configuration profiles
  • ChannelController for creating custom configuration profiles
  • RegionProfile for accessing timing information
  • cpuinfo service reports
  • Gotcha 1.0.2 bundled

Learn more:

SUNDIALS 5.0.0-dev.1 Released June 24, 2019 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. This version is a beta release of the next major SUNDIALS version and offers a preview of what is to come, including

  • new Fortran 2003 interface modules
  • new linear solver interface functions
  • a new N_Vector implementation, NVECTOR_MPIPLUSX
  • and much more!

Learn more:

Kripke 1.2.4 Released June 18, 2019 (release)

Kripke is a simple, scalable, 3D Sn deterministic particle transport code. Its primary purpose is to research how data layout, programming paradigms and architectures effect the implementation and performance of Sn transport. A main goal of Kripke is investigating how different data-layouts effect instruction, thread and task level parallelism, and what the implications are on overall solver performance. v1.2.4 changes the software license to BSD 3-clause.

Learn more:

BLT 0.2.5 Released June 14, 2019 (release)

BLT (Building, Linking, and Testing) is a streamlined CMake build system foundation for developing HPC software. BLT makes it easy to get up and running on a wide range of HPC compilers (e.g., gcc, clang), operating systems (e.g., Linux, Mac OS, Windows), and technologies (e.g., MPI, OpenMP, CUDA). BLT also includes unit testing and benchmarking.

LLNL initially released BLT in 2017, and now v0.2.0 and v0.2.5 are available.

Learn more:

Redesign of Cardioid's Heartbeat Simulation Brings Code One Step Closer to Clinical Use June 12, 2019 (multimedia) (story)

LLNL researchers have successfully optimized a code that models the human heartbeat for next-generation, GPU-based supercomputers, with an eye on developing it for virtual drug screening and modeling heart activity in clinical settings. Cardioid, a suite merging mathematical solvers for electrophysiology, fiber-generation, cardiac mechanics, torso-electrocardiograms (ECGs) and cardiac meshing tools, simulates the electrical current running through the heart tissue, triggering cells to contract like cascading dominoes and causing the heart to beat. It was originally developed by LLNL and IBM for Sequoia, at one time the world’s fastest supercomputer, and was a finalist for the 2012 Gordon Bell Prize, supercomputing’s top honor.

Learn more:

Video: SCR Framework, Accelerating Resilience and I/O for Supercomputing Applications June 07, 2019 (multimedia)

The SCR software framework provides efficient, scalable checkpoint/restart capability for simulation codes, ensuring faster time to solution and allowing scientists to focus on the science. SCR caches checkpoint data in storage on the compute nodes of a Linux cluster to provide a fast, scalable checkpoint restart capability for MPI codes.

In this video, LLNL’s Kathryn Mohror explains how SCR works. Physicist Denise Hinkel then discusses how SCR has impacted simulation capabilities at the National Ignition Facility.

Video: Spack, a Flexible Package Manager for HPC Software June 06, 2019 (multimedia)

Spack is a flexible, configurable, Python-based, and open-source HPC package manager. Spack automates the installation and fine-tuning of simulations and libraries, operating on a wide variety of HPC platforms and enabling users to build many code configurations.

In this video, LLNL’s Todd Gamblin and Greg Becker describe how Spack works and how its open source community has grown. They are joined by Lori Diachin, deputy director for the U.S. Department of Energy’s Exascale Computing Project, or ECP, who explains Spack’s value to the ECP software stack.

Magpie 2.3 Released June 01, 2019 (release)

Magpie contains a number of scripts for running big data software in HPC environments. It currently supports running over the parallel file system Lustre and running over any generic network filesystem. There is scheduler/resource manager support for Slurm, Moab, Torque, and LSF.

This release focuses on adding experimental support for Ray. Learn more:

MFEM 4.0 Released May 24, 2019 (release)

Version 4.0 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable high-performance scalable finite element discretization research and application development on a wide variety of platforms, ranging from laptops to exascale supercomputers.

For the first time ever, MFEM-4.0 adds support for GPU acceleration in the library:

  • Device kernels can be written in CUDA, OCCA, RAJA or OpenMP.
  • Several examples have been ported with minimal code changes.
  • Many linear algebra and finite element operations can use device acceleration by simply replacing loops with the MFEM_FORALL macro.
  • The library provides seamless device/host memory management.

Some other new additions in version 4.0 are:

  • Partially assembled finite element operators in the core library.
  • Support for wedge/prism elements and meshes with mixed element types.
  • General “low-order refined”-to-“high-order” field transfer.
  • Seven new examples and miniapps.

The MFEM library has many more features, including:

  • 2D and 3D, arbitrary order H1, H(curl), H(div), L2, NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming/nonconforming adaptive mesh refinement (AMR), including anisotropic refinement, derefinement and parallel load balancing.
  • Galerkin, mixed, isogeometric, discontinuous Galerkin, hybridized, and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements, including arbitrary order curvilinear meshes.
  • Scalable algebraic multigrid, time integrators, and eigensolvers.
  • Lightweight interactive OpenGL visualization with the MFEM-based GLVis tool.

MFEM is being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full CHANGELOG.

ZFS on Linux 0.8.0 Released May 23, 2019 (release)

The Livermore Big Artificial Neural Network toolkit (LBANN) is an open-source, HPC-centric, deep learning training framework that is optimized to compose multiple levels of parallelism.

v0.8.0 includes many performance updates, new features, and improvements, such as:

  • Native encryption
  • Raw encrypted ‘zfs send/receive’
  • Pool TRIM and initialization
  • Project accounting and quota
  • Channel programs
  • Pyzfs and Python 3 compatibility

Learn more:

LBANN 0.99 Released May 14, 2019 (release)

The Livermore Big Artificial Neural Network toolkit (LBANN) is an open-source, HPC-centric, deep learning training framework that is optimized to compose multiple levels of parallelism.

This release includes support for new training algorithms, performance optimizations, I/O and data readers, updates to the Python front-end, and much more.

Learn more:

Charliecloud 0.9.10 Released May 14, 2019 (release)

LANL led with LLNL contributors, Charliecloud provides user-defined software stacks for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources.

This release includes:

  • New OpenMPI examples
  • Updated Travis CI tests
  • New interface for ch-build2dir

Learn more:

Video: LLNL at the 2019 Red Hat Summit May 08, 2019 (event-report) (multimedia)

At the recent Red Hat Summit in Boston, LLNL’s Robin Goldstone discussed open-source technologies and the Sierra supercomputer. Goldstone, an HPC solutions architect, said “open source makes perfect sense” for scalability and performance in an HPC center like LLNL’s. She stated, “We have all that visibility and that software. If it doesn’t work for our needs, we can make it work for our needs. And then we can give it back to the community because even though people aren’t doing things at the scale that we are today, a lot of the things that we’re doing really do trickle down and be used by a lot of other people.” A transcript of her interview is included with the video, which runs 15:28.

OSS Project Lead Kathryn Mohror Completes Tenure as S&TR Scientific Editor May 07, 2019 (profile)

Like many LLNL computer scientists, Kathryn Mohror juggles multiple responsibilities both at her workplace and in the scientific community. She recently completed a 12-month term as scientific editor of LLNL’s Science & Technology Review magazine. Read about her experience with the publication while still keeping up with her own research in scalable fault-tolerant computing and input/output for next-generation computing systems – not to mention her two open source projects, SCR and UnifyCR.

CCT 1.0.4-M3 Released May 07, 2019 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. This release contains many improvements and updates, including:

  • Overall optimization for the GUI and calibration modules (faster while using less memory)
  • Configurable group velocities used for selection criteria during calibration
  • Filter data from use in calibration
  • Auto (re)center of the map
  • Three new plots on the Mw tab
  • and much more!

Learn more:

LMT 3.2.6 Released May 06, 2019 (release)

The Lustre Monitoring Tools (LMT) repo is a distributed system that provides a “top”-like display of the activity levels of the server-side (MDS, OSSes, and LNET routers) nodes of one or more Lustre-based filesystems. This release includes support for Lustre 2.12.0.

Learn more:

zfp 0.5.5 Released May 05, 2019 (release)

zfp is a library for compressed numerical arrays that support high-throughput read and write random access. zfp also supports streaming compression of integer and floating-point data, e.g., for applications that read and write large data sets to and from disk. zfp is primarily written in C and C++ but also includes Python and Fortran bindings.

This release includes these additions to the code:

  • Support for reversible (lossless) compression of floating-point and integer data
  • Methods for serializing and deserializing zfp’s compressed arrays
  • Python bindings for compressing NumPy arrays
  • Fortran bindings to zfp’s high-level C API

Learn more:

How Machine Learning Could Change Science May 03, 2019 (story)

Artificial intelligence tools are revolutionizing scientific research and changing the needs of high performance computing. In an article from Data Center Dynamics, LLNL’s Fred Streitz and Brian Van Essen discuss the future of scientific computing, highlighting the Exascale Computing Project (ECP) and the Livermore Big Artificial Neural Network (LBANN).

The ECP is a multi-institutional Department of Energy collaboration aimed at achieving exascale computing capability. Many open source software projects, from LLNL and elsewhere, are crucial components of the ECP ecosystem.

LBANN is an open source deep learning toolkit developed at the Lab. It provides model-parallel acceleration through domain decomposition to optimize for strong scaling of network training.

VisIt 3.0 Released May 01, 2019 (release)

This is a huge release for LLNL’s VisIt visualization tool. The many new features include:

  • Support for outputting Cinema databases
  • Support for rendering 3D images using the OSPRay
  • Enhancements that leverage VTK-m for some operations
  • Custom animation behaviors in plots
  • Ability to build expressions with support for OpenMP, letting them parallelize over multiple threads

The release notes also detail changes in GUI behavior, file format reader, plots, operators, expression language, configuration, and more.

Learn more:

MSR-SAFE 1.3.0 Released April 29, 2019 (release)

MSR-SAFE allows safer access to model-specific registers. v1.3.0 includes updates to the spank plugin, msrsave and msrrestore functions, and command line parameters. The release also adds an initial Travis CI yaml configuration file to test against multiple OS.

Learn more:

Magpie 2.2 Released April 25, 2019 (release)

Magpie contains a number of scripts for running big data software in HPC environments. It currently supports running over the parallel file system Lustre and running over any generic network filesystem. There is scheduler/resource manager support for Slurm, Moab, Torque, and LSF.

This release includes:

  • New submission script type “sbatchmpirun”
  • Experimental support for Tensorflow
  • Support for additional versions of Spark and Hadoop

Learn more:

PnMPI 1.8.1 Released April 24, 2019 (release)

PnMPI is a dynamic MPI tool infrastructure that builds on top of the standardized PMPI interface. With it you can run multiple PMPI tools concurrently, activate PMPI tools without relinking, multiplex toolsets during a single run, and write cooperative PMPI tools.

Learn more:

Opening Supercomputing to All Agencies April 24, 2019 (story)

LLNL’s Ian Lee discusses the importance of open-source software and cloud computing for HPC centers and government agencies in this GCN.com article. He states, “We’ve been doing open source on big Unix systems for more than 20 years. Back then, if we produced open source software for our supercomputers, we were the only ones who could use that software. Now, the software can be ported out and mainstreamed, and it’s a lot easier to make use of supercomputing in other places.”

Spack Team Visits RIKEN April 23, 2019 (event-report)

Spack’s first tutorial in Japan took place on April 23, 2019. With more than 40 participants, the onsite tutorial at RIKEN’s Kobe research center was the latest international event for the Spack team and collaborators. Read more about Spack’s European tour of HPC facilities. Everything you need to get started with Spack is available on the website.

MemSurfer 1.0 Released April 17, 2019 (release)

This is MemSurfer’s initial release. MemSurfer is an efficient and versatile tool to compute and analyze membrane surfaces found in a wide variety of large-scale molecular simulations. MemSurfer works independent of the type of simulation, directly on the 3D point coordinates, and can handle a variety of membranes as well as atomic simulations. It provides many in-built analysis tasks, such as computing the membrane curvature, density and normals of lipids, and area per lipid.

Learn more:

Caliper Library Highlighted at 31st VI-HPS Tuning Workshop April 15, 2019 (event-report)

The Virtual Institute – High Productivity Supercomputing (VI-HPS) conducts a long-running series of tuning workshops, where participants can learn about programming tools developed by the institute partners. Morning sessions consist of tool presentations and hands-on exercises. In the afternoon, users can apply the tools to their own codes with the help of the instructors. Whilst most of the workshops take place in Europe, the 31st tuning workshop was held at the University of Tennessee, Knoxville (UTK), on April 9–12, 2019.

As part of the workshop, LLNL computer scientist David Boehme conducted a 75-minute tutorial on Caliper, an open-source performance profiling library for HPC software. The session included hands-on exercises using the Lulesh proxy application as an example. There were around 15–20 participants, primarily HPC software developers from UTK and Oak Ridge National Laboratory, as well as the other HPC tool presenters. This tutorial marked the first time Caliper was presented within the VI-HPS tuning workshop series. Boehme’s tutorial was well received, and several participants were able to successfully apply Caliper to their programs.

The workshop also provided an opportunity to discuss common software infrastructure as well as integration and interoperability possibilities with other performance analysis tools. For example, the PAPI team plans to explore using Caliper’s data collection and processing functionality. Finally, as a VI-HPS member organization, LLNL’s participation in the tuning workshop series helped showcase the Lab’s strong portfolio of open-source programming tools among the VI-HPS partners and in the HPC community at large.

Learn more about Caliper:

Charliecloud 0.9.9 Released April 13, 2019 (release)

Charliecloud provides user-defined software stacks (UDSS) for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources.

This release includes:

  • Docker environment variables available in images
  • Alpine example images upgraded to 3.9
  • Documentation improvements and more

Learn more:

CTR: An Introduction Using Recent Tech Refresh Experiences on VisIt April 12, 2019 (story)

This LLNL-authored blog post describes the practice of continuous technology refreshment, or CTR – the periodic upgrade or replacement of infrastructure to deliver continued reliability, improved speed, capacity, and/or new features. Using the VisIt code’s recent migration to GitHub as an example, the post explains the development team’s process through wrangling binary content, revision control, issue tracking, documentation, and other refreshments.

Learn more:

RAJAPerf 0.5.1 Released April 12, 2019 (release)

The RAJA performance suite (RAJAPerf) is designed to explore performance of loop-based computational kernels found in HPC applications. It is used to assess, monitor, and compare runtime performance of kernels implemented using RAJA and variants implemented using standard or vendor-supported parallel programming models directly.

v0.5.1 contains several documentation updates and changes to default CMake configuration so that RAJA tests and examples are not built unless explicitly turned on by passing the proper options to CMake.

Learn more:

Umpire 0.3.3 Released April 11, 2019 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures.

v0.3.3 includes:

  • NUMA strategy that allows allocating memory to specific NUMA nodes
  • Updates to the replay tool
  • GitHub workflow to check for CHANGELOG updates
  • Dockerfile for multi-stage builds
  • and much more!

Learn more:

SCR 2.0 Released March 29, 2019 (release)

The Scalable Checkpoint/Restart (SCR) library enables MPI applications to utilize distributed storage on Linux clusters to attain high file I/O bandwidth for checkpointing, restarting, and writing large datasets. The 2.0 release marks a milestone in SCR’s long history of bringing dependable, scalable, file set management to multiple HPC platforms.

Some highlights include:

  • Support for multiple platform specific hardware technologies, including Cray DataWarp
  • Portability across many HPC centers via scheduler integration
  • Scalable checkpoint resilience and restart capabilities

Learn more:

SUNDIALS 5.0.0-dev.0 Released March 28, 2019 (release)

SUNDIALS is a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. In this release, an additional N_Vector implementation, NVECTOR_MANYVECTOR, was created to support flexible partitioning of solution data among different processing elements (e.g., CPU + GPU) or for multi-physics problems that couple distinct MPI-based simulations together. Eleven new optional vector operations have also been added to the N_Vector API to support the new NVECTOR_MANYVECTOR implementation.

Learn more:

RAJA 0.8.0 & RAJAPerf 0.5.0 Released March 28, 2019 (release)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption. The RAJA performance suite (RAJAPerf) is designed to explore performance of loop-based computational kernels of the sort found in HPC applications.

In RAJA v0.8.0, the build system was updated to use the latest version of BLT (or close to it). Depending on how one builds RAJA, this could require changes to how information is passed to CMake. The RAJAPerf 0.5.0 release contains several new kernels, plus substantial changes to many CUDA kernel variants to improve performance.

Learn more:

The Linux Foundation's Open Source Leadership Summit March 15, 2019 (event-report)

The Linux Foundation’s Open Source Leadership Summit occurred in Half Moon Bay, California, on Thursday, March 14. LLNL’s Todd Gamblin presented “Open Source in the Exascale Computing Project: Building a Software Ecosystem for Science.” Check out the conference schedule.

This presentation covered the challenges of building software for machines that don’t exist yet, and how government laboratories, academia, and industry are collaborating to build a highly optimized software distribution. From deploying services like GitLab CI and JupyterHub in high-security HPC centers, challenges for architecture-specific containers, the use of Spack to package and distribute optimized binaries, and the social hurdles of scientists and developers working together, this talk summarized the open source challenges in DOE’s largest-ever HPC software project.

New Repo: FGPU March 14, 2019 (new-repo)

FGPU is a collection of code examples focusing on porting FORTRAN codes to run on GPU architectures. The repo includes learning aids for developers and a regression test for compilers supporting OpenMP4.5, OpenACC, CUDA FORTRAN, and more. While FGPU’s examples have a heavy FORTRAN emphasis, some examples also include C++ usage. Check out the GitHub repo and LLNL project summary.

Charliecloud 0.9.8 Released March 11, 2019 (release)

Charliecloud provides user-defined software stacks (UDSS) for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources.

This release includes:

  • New RPM spec file and supporting scripts
  • New example workflow using Buildah
  • ch-tar2dir: support tarball extension
  • Refactoring and more

Learn more:

The Great Migration: VisIt Moves from SVN to GitHub March 08, 2019 (story)

Software development is often a story of teamwork and determination. It’s a tale of persistence through failure toward, ideally, success. At LLNL, this story plays out in countless daily iterations as software teams strive to advance the Lab’s national security mission. When it comes to supporting both stockpile stewardship and foundational science, the VisIt visualization tool is the backbone of LLNL’s computer simulation analysis and visualization capabilities.

For the VisIt team, migration is modernization. Some of VisIt’s original development technologies are now considered ancient. But migrating 2 million lines of code is easier said than done. Go behind the scenes as an LLNL team discusses the logistics, challenges, and benefits of VisIt’s complicated move to GitHub.

Learn more:

CCT 1.0.4-M2.1 Released March 06, 2019 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. After the January 25 release, you spoke and we listened! This is a minor bugfix and feature update release based on community feedback. Changes include:

  • Make optimization for Path correction significantly more aggressive
  • Reweight GT spectra with stress drop values defined to be 1.0 across all frequencies
  • Make noise floor display consistent across the board
  • Show ‘bad’ autopicks so humans get more feedback on what the autopicker is doing
  • Remove AP pick if a human moves them (consider as ‘reviewed’)

Learn more:

Caliper 2.0 Released March 04, 2019 (release)

Caliper is a program instrumentation and performance measurement framework. It is designed as a performance analysis toolbox in a library, allowing one to bake performance analysis capabilities directly into applications and activate them at runtime. Caliper is primarily aimed at HPC applications but works for any C/C++/Fortran program on Unix/Linux.

Functionality in v2.0 includes the new Channel API, which allows multiple, independent measurement configurations to be active at the same time.

Learn more:

Magpie 2.1 Released March 02, 2019 (release)

Magpie allows Hadoop and similar data analytics frameworks to run on LLNL’s HPC systems. Magpie instantiates the framework within the context of a batch job – rather than on a persistent, dedicated cluster – and by reading and writing from the Lustre parallel HPC file system instead of local disk drives.

v2.1 includes support for several versions of Hbase, Spark, Hadoop, and Zeppelin.

Learn more:

Conduit 0.4 Released March 01, 2019 (release)

Conduit provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python. It is used for data coupling between packages in-core, serialization, and I/O tasks. The Core API provides a flexible way to describe and access hierarchical data. v0.4 includes several new functions, new Blueprint protocols, and enhanced Relay support.

Learn more:

Umpire 0.3.2 Released February 25, 2019 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures. (Please download the umpire-0.3.2.tar.gz file, rather than the automatically generated files. These do not include all the necessary submodule code.)

v0.3.1 includes:

  • Added a “cookbook” of examples on using Umpire in complex situations
  • Allow users to provide a heuristic to modify pool behavior, determining when unused blocks will be coalesced
  • Modify the CudaAdvice* operations to take a specific device id
  • Improve error message when running a CUDA-enabled version of Umpire on a machine without GPUs

v0.3.2 includes:

  • New functions to create Allocators to the C interface and ensure all C interface files are correctly installed
  • New tool to only replay AllocationMap operations

Learn more:

New Repo: UMAP February 20, 2019 (new-repo)

UMAP is a library that provides an mmap()-like interface to a simple, user- space page fault handler based on the userfaultfd Linux feature (starting with 4.3 linux kernel). The use case is to have an application specific buffer of pages cached from a large file, i.e. out-of-core execution using memory map.

Learn more:

Inaugural NAHOMCon19 Coming to San Diego February 14, 2019 (event)

To all computational scientists, mathematicians, scientists, and engineers interested in high-order methods and PDEs: Several institutions have joined together to organize the inaugural North American High Order Methods Conference (NAHOMCon19). The conference will be held in San Diego in the summer of 2019 and will focus on the many developments in high-order discretizations and applications taking place in North America.

The DOE co-design Center for Efficient Exascale Discretizations (CEED) is pleased to participate in the conference. CEED is a partnership between two U.S. DOE laboratories (Livermore & Argonne) and five universities in support of the Exascale Computing Project.

Learn more:

SUNDIALS 4.1.0 Released February 13, 2019 (release)

In this release:

  • Added an additional N_Vector implementation for Tpetra vector from Trilinos library (user docs and examples are updated to reflect this)
  • Fixed a bug where a nonlinear solver object could be freed twice in some use cases
  • Fixed a bug in ARKodeButcherTable_Write when printing a Butcher table without an embedding
  • Removed EXAMPLES_ENABLE_RAJA CMake option

Important notes:

  • The implementation header files (e.g., arkode_impl.h) are no longer installed. Users who are directly manipulating package memory structures will need to update their code to use the package’s public API.
  • Python is no longer required to run make test and make test_install.

Learn more:

ESGF Conference Caps a Productive Year February 12, 2019 (event-report)

Held in Washington, DC, the Earth System Grid Federation’s (ESGF) 8th annual face-to-face conference was a lively, fruitful affair. The event packed 40 presentations, several plenary sessions, a poster session, guest speakers, an awards ceremony, and an executive committee meeting into the week.

The federation houses an enormous database of global observational and simulation data—more than 5 petabytes—and manages the HPC hardware and software infrastructure necessary for scientific climate research. In the nearly two decades since its launch, ESGF has grown to serve 25,000 users on 6 continents.

Among ESGF’s 2018 milestones were support for CMIP6 data (thanks to input4MIPs and obs4MIPs initiatives), beta v3.0 of the software stack installer, OAuth single sign-on integration, and progress in containerized architecture. Read more about the conference and check out ESGF’s GitHub repo.

Charliecloud 0.9.7 Released February 12, 2019 (release)

Charliecloud provides user-defined software stacks (UDSS) for HPC centers. It uses Linux user namespaces to run containers with no privileged operations or daemons and minimal configuration changes on center resources.

This release includes:

  • Upgrade OpenMPI examples to 3.1.3
  • New example image build with skopeo and umoci
  • Re-mount images read-only reliably
  • Documentation improvements & miscellaneous bug fixes

Learn more:

LBANN 0.9 Released February 11, 2019 (release)

The Livermore Big Artificial Neural Network toolkit (LBANN) is an open-source, HPC-centric, deep learning training framework that is optimized to compose multiple levels of parallelism.

v0.9 is LBANN’s initial release. The release notes linked below contain details about v0.9x iterations. Some deprecated features have been retired. At a high level, this release includes new development in these areas:

  • Support for new training algorithms (e.g., generative adversarial networks)
  • Support for new network structures
  • Support for new layers (e.g., learning, metrics, optimizers, activations)
  • Performance optimizations (e.g., GPU model-parallel softmax layer)
  • Model portability & usability
  • Support for an online, distributed data store
  • Overhauled I/O & data readers
  • Overhauled code base (see README_coding_style.txt)
  • New features & build system (e.g., support for convolutional and pooling layers, GPU acceleration of local Elemental GEMM operations)
  • and much more!

Learn more:

HiOp 0.2 Released February 01, 2019 (release)

HiOp is an optimization solver for solving certain mathematical optimization problems expressed as nonlinear programming problems. This lightweight HPC solver leverages application’s existing data parallelism to parallelize the optimization iterations by using specialized linear algebra kernels.

HiOp’s initial release occurred in December 2017. This v0.2 includes:

  • Implementation of various strategies to deal with fixed variables
  • Comprehensive testing and bug fixing for MacOS
  • Minor fixes of bugs found on various HPC platforms
  • Minor interface and options refinement required by the integration with MFEM mesh optimization interface

Learn more:

Aluminum 0.2 Released January 30, 2019 (release)

First released in September 2018, Aluminum provides a generic interface to high-performance communication libraries with a focus on allreduce algorithms. Blocking and non-blocking algorithms and GPU-aware algorithms are supported. Aluminum also contains custom implementations of select algorithms to optimize for certain situations.

Improvements included in this release:

  • Host-transfer implementations of standard collectives in the MPI-CUDA backend
  • Experimental RMA Put/Get operations
  • Improved algorithm specification, point-to-point operations, testing, and benchmarks

Learn more:

CCT 1.0.4 Released January 25, 2019 (release)

The Coda Calibration Tool (CCT) calculates reliable moment magnitudes for small- to moderate-sized seismic events. The v1.0.4 release includes several performance and stability improvements along with a few new features:

  • Shared interaction between data plots and the map display
  • Data point selection highlights relevant elements on the map (events/stations) and vice-versa
  • Support for arbitrary user-defined lists of WMS 1.3.0-compliant map tile servers/layers for display on the map
  • Automatic display of context-sensitive information based on which tab the user is actively looking at

Learn more:

SUNDIALS 4.0.2 Released January 23, 2019 (release)

This release is a patch with many changes, including (but not limited to):

  • unified linear solver interfaces in all SUNDIALS packages
  • encapsulated nonlinear solvers in all SUNDIALS integrators
  • reorganization of ARKode to allow for the development of new integration methods
  • new ARKode stepper for two-rate explicit/explicit multirate infinitesimal step methods
  • Fortran 2003 interfaces to CVODE and several SUNDIALS modules
  • an OpenMP 4.5+ NVECTOR

Learn more:

New Repo: VisIt January 19, 2019 (new-repo)

VisIt (Visualization and Data Analysis for Mesh-based Scientific Data) is an interactive, parallel visualization and graphical analysis tool for viewing scientific data on Unix and PC platforms. While this repo has been around for a while enjoying a robust developer community, it is newly housed on GitHub. Stay up to date with the latest release notes.

With VisIt, users can quickly generate visualizations from their data, animate them through time, manipulate them, and save the resulting images for presentations.

VisIt contains a rich set of visualization features so that you can view your data in a variety of ways. It can be used to visualize scalar and vector fields defined on 2D and 3D structured and unstructured meshes. VisIt was designed to handle very large data set sizes in the peta-scale range, yet it can also handle small data sets in the kilobyte range.

Learn more:

RAJA 0.7.0 Released January 10, 2019 (release)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption. The v0.7.0 release contains several major changes, new features, a variety of bug fixes, and expanded user documentation and accompanying example codes. Major changes include:

  • RAJA::forallN and RAJA::forall methods were marked deprecated in the v0.6.0 release and have been removed.
  • CUDA execution policies for use in RAJA::kernel policies have been significantly reworked and redefined to be much more flexible and provide improved run time performance.
  • Improved support for loop tiling algorithms, CPU cache blocking, CUDA GPU thread local data, and shared memory
  • Expanded documentation and example codes for the RAJA::kernel interface

Learn more:

New Repo: MemSurfer January 10, 2019 (new-repo)

MemSurfer computes bilayer membrane surfaces found in a wide variety of large-scale molecular simulations. The tool works independent of the type of simulation, directly on the 3D point coordinates; as a result, it can handle a variety of membranes as well as atomic simulations.

Core functionality is written in Python and C++. Check out the GitHub repo for more information.

New Repo: Cardioid (Cardiac Simulation Toolkit) December 28, 2018 (multimedia) (new-repo)

Cardioid is a cardiac multiscale simulation suite spanning from subcellular mechanisms up to simulations of organ-level clinical phenomena. The suite contains tools for simulating cardiac electrophysiology, cardiac mechanics, torso-ECGs, cardiac meshing, and fiber-generation tools.

This project’s history goes back a few years – it was a finalist for the 2012 Gordon Bell Prize – but only now is the code available as open source. Initially developed by a team of LLNL and IBM scientists, Cardioid divides the heart into a large number of manageable subdomains. This replicates the electrophysiology of the human heart, accurately simulating the activation of each heart muscle cell and cell-to-cell electric coupling.

SUNDIALS 4.0 Released December 20, 2018 (release)

This release includes unified linear solver interfaces in all SUNDIALS packages, encapsulated nonlinear solvers in all SUNDIALS integrators, a reorganization of ARKode to allow for the development of new integration methods, a new ARKode stepper for two-rate explicit/explicit multirate infinitesimal step methods, Fortran 2003 interfaces to CVODE and several SUNDIALS modules, an OpenMP 4.5+ NVECTOR, managed memory capabilities for the CUDA NVECTOR, and other improvements.

A patch release v4.0.1 was also released to fix a bug in ARKode where single precision builds would fail to compile.

Read more about v4.0.0 and the complete SUNDIALS release history. Downloads are available from the SUNDIALS website and GitHub.

ScrubJay: A Bird's-Eye View of Computing Performance December 10, 2018 (story)

ScrubJay, an open-source performance data analysis tool, helps ensure that the Laboratory’s HPC center lives up to its name. Check out this new writeup in LLNL’s magazine, Science & Technology Review. Fork the repo on GitHub.

ScrubJay is an intuitive, scalable framework for automatic analysis of disparate HPC data. ScrubJay decouples the task of specifying data relationships from the task of analyzing data. Domain experts can store reusable transformations that describe the projection of one domain onto another. The program also automates performance analysis. Analysts provide a query over logical domains of interest, and ScrubJay automatically derives the needed steps to transform raw measurements. This process makes large-scale analysis tractable and reproducible, thus providing crucial insights into HPC facilities.

ESGF Installer 3.0 Beta Released December 06, 2018 (release)

The long-awaited Earth System Grid Federation (ESGF) installer software v3.0 beta release is here!

LLNL’s William Hill unveiled the beta at ESGF’s annual conference in Washington, DC. His slides can be downloaded here – look for the second link on Day 3.

v3.0 is a complete rewrite of the ESGF installation stack and includes a 2.x migration script to upgrade an existing node. This release addresses several long-standing problems such as a lack of error handling, lack of extensibility, and a complicated installation process. Note that the Conda environment must be activated to run this installer. Documentation is updated accordingly.

vCDAT 1.0 Released December 01, 2018 (release)

LLNL’s Community Data Analysis Tools (CDAT) provide a synergistic approach to climate modeling, allowing researchers to advance scientific visualization of large-scale climate data sets.

vCDAT is part of the CDAT suite. After beta testing, the new v1.0 is now available on GitHub. vCDAT is a desktop application that provides the graphical frontend for the CDAT package, using CDAT’s VCS and CDMS modules to render high-quality visualizations within a browser. Check out

With vCDAT you can export and import custom colormaps in multiple image formats. Tutorials and documentation are provided here. Installation requires Anaconda.

Stay tuned for v2.0, coming in spring 2019, which will leverage Jupyter Notebooks UI.

New Repo: Unify November 26, 2018 (new-repo)

Hierarchical storage systems are the wave of the future for HPC centers like LLNL’s Livermore Computing Complex. The Unify project aims to improve I/O performance by utilizing distributed, node-local storage systems. This design scales bandwidth and capacity according to the computer resources used by a given job. Furthermore, Unify avoids inter-job interference from parallel file systems or shared burst buffers.

Unify is a suite of specialized, flexible file systems – the first is available on GitHub with more on the way – that can be included in a user’s job allocations. A user can request which Unify file system(s) to be loaded and the respective mount points. Tests on LLNL’s Catalyst cluster show more than 2x improvement in write performance.

Like much of LLNL’s HPC performance improvement software, Unify is open source. The first Unify file system, UnifyCR (since renamed as UnifyFS) (for checkpoint/restart workloads), is already available on GitHub. The team is working on another file system in the Unify “family” designed for machine learning workloads, in which large data sets need to be distributed quickly. Additional Unify file systems are in development.

DOE Machines Dominate Record-Breaking SC18 November 20, 2018 (event-report)

Supercomputing ‘18 (SC18), held Nov. 11–16 in Dallas, broke records for attendees and exhibitors and saw LLNL once again make its presence felt on the world’s biggest HPC stage. For the first time in five years, the U.S. captured the top two spots on the TOP500 List of the world’s fastest supercomputers: Summit at ORNL and Sierra at LLNL.

Highlights from the conference include:

  • Student program keynote from Bruce Hendrickson, associate director for Computing
  • Women in HPC workshop led by Elsa Gonsiorowski
  • Student technical program vice-chaired by Olga Pearce
  • Spack tutorial
  • Flux workshop
  • P3HPC (performance, portability, and productivity) workshop
  • Talks by LLNL experts at industry booths (e.g., Penguin Computing, NVIDIA)

New Repo: NLPVis November 19, 2018 (new-repo)

Machine learning gurus, this one’s for you! NLPVis enables visualization of neural networks in natural-language ML models. Setup is straightforward and includes a pre-trained model.

New Computing Cluster Coming to LLNL November 13, 2018 (story)

The Lab is looking forward to Corona, a new unclassified HPC cluster that will provide unique capabilities for Lab researchers and industry partners to explore data science, machine learning, and big data analytics. Corona will help NNSA assess future architectures, fill institutional needs to develop leadership in data science and machine learning capabilities at scale, and provide access to HPC partners.

Read more about LLNL’s commodity clusters.

Sierra Supercomputer Dedicated and Ranked November 12, 2018 (story) (multimedia)

LLNL recently unveiled the new 125-petaflop-capable Sierra supercomputer. Sierra will serve the NNSA’s three nuclear security laboratories: LLNL, Sandia National Laboratories, and Los Alamos National Laboratory, providing high-fidelity simulations in support of NNSA’s core mission of ensuring the safety, security, and effectiveness of the nation’s nuclear stockpile. Its arrival represents years of procurement, design, code development and installation, requiring the efforts of hundreds of computer scientists, developers and operations personnel working in close partnership with IBM, NVIDIA, and Mellanox.

Just a few weeks later, Sierra rose from third to second place on the TOP500 list of the world’s fastest computing systems after reaching 94.6 petaflops on the Linpack benchmark test. The latest rankings were announced at SC18.

See Sierra’s system details and watch a video of the dedication.

Earth System Grid Federation's Annual Conference Coming Up November 03, 2018 (event)

The LLNL-led international Earth System Grid Federation (ESGF) will meet December 3-7 in Washington, DC, to plan the future of Earth system data analysis and more. Registration info is available on the ESGF website along with the conference agenda. Fork this 2017 R&D 100 winner on GitHub.

Good Times at GitHub Universe November 01, 2018 (event-report)

LLNL open-source champions Laura Weber, Ian Lee, and David Beckingsale attended the 2018 GitHub Universe conference in San Francisco. Billed as “a conference for the builders, planners, and leaders defining the future of software”, the team enjoyed hearing about upcoming GitHub enhancements and being able to network with GitHub Federal employees and other GitHub users.

One recurring theme was inner source, the use of open source software development best practices and the establishment of an open-source-like culture within organizations. With this practice the organization may still develop proprietary software, but internally opens up its development.

Audio/Video: Spotlight on Spack October 30, 2018 (multimedia)

HPC developers build software from source code and optimize it for the targeted computer’s architecture. LLNL-developed Spack handles the process of downloading a tool and all the necessary dependencies – which can be tens or hundreds of other packages – and assembles those components and ensures they are properly linked and optimized for the machine. Todd Gamblin, Spack’s lead developer, talks with the Exascale Computing Project’s Exascale podcast. Both audio and video versions are available. Total runtime is 13:54.

Outline:

  • Spack: a US Department of Energy lab-developed app store for supercomputers (1:24)
  • Spack’s role in ECP (2:26)
  • The origins and evolution of Spack (5:23)
  • Spack’s benefits and advantages (7:42)
  • The use of Spack on Mac laptops and Linux machines (10:53)
  • The plans for Spack (11:18)

Flux and Spack Events Coming to Supercomputing '18 October 27, 2018 (event)

LLNL staff are heading to Dallas, Texas, for the 30th annual Supercomputing Conference (SC18) on November 11–16. LLNL is leading 6 tutorials and 16 workshops with topics ranging from data analytics and data compression to performance analysis and productivity. LLNL-developed open-source tools Flux and Spack are subjects of a workshop and a tutorial, respectively. We hope to see you there!

Read more about our past experiences and tips for first-timers. A complete list of LLNL-led sessions can be found on the LLNL Computing website. All times are listed in Central Standard Time.

Open-Source Developer Greg Becker Scales Projects and Mountains October 26, 2018 (profile)

Is there a connection between rock climbing and software development? In this profile, LLNL’s Greg Becker describes his career path, motivation for improving HPC tools, and recent work with open-source projects like SCR, Caliper, and Spack.

Umpire 0.2.4 Released October 25, 2018 (release)

Umpire is a resource management library that allows the discovery, provision, and management of memory on next-generation architectures. It uses CMake and BLT to handle builds. New features in this version include:

  • Support for allocating “constant” memory on CUDA GPUs
  • A way of toggling introspection, to improve performance for allocators where you don’t need tracking

Fixes and enhancements in v0.2.4:

  • Ability to deallocate nullptr
  • Fixed a bug when compiling with clang that would cause problems in the AllocationMap
  • Ensured all classes with virtual functions have virtual destructors

New Repo: ScrubJay October 15, 2018 (new-repo)

ScrubJay is a framework for automatic and scalable data integration. Describe your datasets (files, formats, database tables), then describe the integrated dataset(s) you desire, and let ScrubJay derive it for you in a consistent and reproducible way.

ScrubJay is used at our HPC center to help analysts evaluate operations with data collected from every component. More news about this innovative project is on the way from LLNL’s science and technology magazine… stay tuned!

Sandia Open-Source Simulator Helps Solve the Mysteries of Metal Hardening October 08, 2018 (story)

HPC materials simulations at LLNL are revealing surprising insights into how metals behave under extreme pressure. Check out this research highlight on metal hardening from Science & Technology Review. Using Vulcan and Sequoia, two of our most powerful computers, a research team leveraged the LAMMPS (Large-Scale Atomic/Molecular Massively Parallel Simulator) molecular dynamics simulator to run simulations of a corrosion-resistant metal called tantalum. Developed by our colleagues at Sandia National Laboratories, LAMMPS is an open-source code that allows users to study the physical movement of atoms and molecules.

SUNDIALS 3.2 Released October 01, 2018 (release)

This latest release includes a constraint handling in CVODE/CVODES, hybrid MPI/CUDA support, and a number of bug fixes and build system updates. In addition, the SUNDIALS team has put out a development release, v4.0.0-dev.2, which includes encapsulated nonlinear solvers for all time integrators, streamlining of the linear solver interfaces in CVODE, ARKode, IDA, and KINSOL, and a reorganization of ARKode to allow for more time stepping options. The development release is another step toward a larger major release scheduled for the end of 2018. The full 4.0.0 release will also include the streamlined linear solver interfaces for CVODES and IDAS as well as a two-rate explicit/explicit integrator.

Read more about v3.2 and the complete SUNDIALS release history including v4.0.0-dev.2. Downloads are available from the SUNDIALS website and GitHub.

Second Annual Developer Day Continues to Build on Success September 20, 2018 (story)

On August 15, LLNL hosted Developer Day. The all-day event featured discussion panels, lightning talks, and deep dives intended to bring the LLNL developer community together. Many presentations featured open-source projects developed at the Lab, including:

XBraid Interweaves Timelines for Faster Solutions September 19, 2018 (story)

LLNL’s science and technology magazine highlights XBraid, homegrown open-source software that reduces the time to solution for HPC applications and simulations. XBraid provides a nonintrusive, powerful solution to the bottleneck posed by performing sequential time steps for problems involving thousands or millions of time steps. Fork XBraid on GitHub to start reducing your time to solution today.

Spack, a Lab-Developed App Store for Supercomputers, Becoming Standard-Bearer September 18, 2018 (story)

Spack has gone global! LLNL’s open-source package manager is making waves throughout the HPC community, including internationally, as evidenced by a recent tour of European HPC facilities by the tool’s developers. Everything you need to get started is available on the Spack website.

OSS Spotlight: Lawrence Livermore National Laboratory and ZFS on Linux September 04, 2018 (story)

This spotlight article on Medium explains the history of LLNL’s ZFS on Linux open-source project, which is now indexed by Code.gov. Follow @OpenZFSonLinux on Twitter and fork the code on GitHub.

SUNDIALS 3.1.2 Released July 31, 2018 (release)

SUNDIALs consists of six solvers and is implemented with the goal of providing robust time integrators and nonlinear solvers that can easily be incorporated into existing simulation codes. We have created a robust portal for users that includes documentation, usage notes, related publication, support information, and downloads. Detailed release history is available. Users can also fork the code on GitHub.

Video: How Open Source Supports the Largest Computers on the Planet July 26, 2018 (multimedia)

Computer engineer Ian Lee presents a webinar for the Exascale Computing Project, describing LLNL’s engagement with the open-source community. Speaker’s notes are also available online.

The Case for Open Source Software July 12, 2018 (story)

LLNL computer engineer Ian Lee writes about the benefits of open-source software in this guest blog post for 18F, a tech agency within the U.S. General Services Administration.

PRUNERS: Providing Reproducibility for Uncovering Non-Deterministic Errors June 26, 2018 (story)

Non-deterministic software bugs are one of the most time-consuming and expensive problems to solve in software development. Furthermore, non-deterministic debugging of parallel applications running on large supercomputers, such as those at LLNL, presents even greater challenges. The PRUNERS toolset offers four novel debugging and testing tools to assist programmers with detecting, remediating, and preventing these errors in a coordinated manner.

Learn more on the LLNL Computing website, explore the toolset, and fork the code.

MFEM 3.4 Released May 29, 2018 (release)

Version 3.4 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable high-performance scalable finite element discretization research and application development on a wide variety of platforms, ranging from laptops to exascale supercomputers.

It has many features, including:

  • 2D and 3D, arbitrary order H1, H(curl), H(div), L2, NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming/nonconforming adaptive mesh refinement (AMR), including anisotropic refinement, derefinement and parallel load balancing.
  • Galerkin, mixed, isogeometric, discontinuous Galerkin, hybridized, and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements, including arbitrary order curvilinear meshes.
  • Scalable algebraic multigrid, time integrators, and eigensolvers.
  • Lightweight interactive OpenGL visualization with the MFEM-based GLVis tool.

Some of the new additions in version 3.4 are:

  • Significantly improved non-conforming unstructured AMR scalability.
  • Integration with PUMI, the Parallel Unstructured Mesh Infrastructure from RPI.
  • Block nonlinear operators and variable order NURBS.
  • Conduit Mesh Blueprint support
  • General “high-order”-to-“low-order refined” field transfer.
  • New specialized time integrators (symplectic, generalized-alpha).
  • Twelve new examples and miniapps.

MFEM is being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full CHANGELOG.

LLNL Magazine Cover Story & Video: Ambassadors of Code March 20, 2018 (multimedia) (story)

The January/February 2018 issue of Science & Technology Review features the Lab’s leadership in open-source software, with cover art showing an MFEM-generated simulation. Contributors to the article include LLNL developers Ian Lee, Brian Behlendorf, John Fisher, Todd Gamblin, Sei Jung Kim, Tzanio Kolev, Greg Pope, and Dan Quinlan.

Bruce Hendrickson, LLNL’s associate director for Computing, wrote the accompanying commentary, The High Value of Open-Source Software.

A video about the article, starring Lee, is available on the Lab’s YouTube channel.

Hackvideo March 13, 2018 (multimedia)

As this video demonstrates, thrice-yearly hackathons at LLNL provide 24-hour opportunities to brainstorm, foster creativity, prototype, and explore. Participants work in groups or individually to learn new skills, languages, and tools. Many hackers use the time to use open-source tools and contribute to the open-source community.

MacPatch Keeps Thousands of LLNL Computers Running Smoothly February 26, 2018 (story)

Now in its third generation, LLNL-developed MacPatch handles software installation and patching for the Laboratory’s Mac computers. It’s open source, of course!

Conduit 0.3.1 Released February 26, 2018 (release)

Conduit version 0.3.1 (Read the Docs) is now available. Conduit provides APIs focused on simplifying data exchange in HPC simulations. It provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python and is used for data coupling between packages in-core, serialization, and I/O tasks.

The 0.3.1 release includes:

  • New Node::diff and Node::diff_compatible methods
  • Updates to uberenv to use a newer Spack version and removed several custom packages
  • Changes to C++ Node::set methods to take const pointers for data
  • A Python version of basic tutorial
  • An expanded the Node Python Capsule API
  • Python API bug fixes
  • Fixes for API exports for static libs on Windows

Caliper: Application Introspection System December 12, 2017 (story)

Comprehensive understanding of performance behavior of large-scale simulations requires the ability to compile, analyze, and compare measurements and contexts from many independent sources. Caliper, a general-purpose application introspection system, makes that task easier by acting as the “glue” that connects various independent context annotations, measurement services, and data processing services.

Learn more on the LLNL Computing website, and download the software on GitHub.

SCR: Scalable Checkpoint/Restart for MPI November 27, 2017 (story)

Multilevel checkpointing allows HPC applications to take both frequent inexpensive checkpoints and less frequent, more resilient checkpoints, resulting in better efficiency and reduced load on the parallel file system. Accordingly, LLNL researchers developed the Scalable Checkpoint/Restart (SCR) library for the large-scale, production system context.

Learn more on the LLNL Computing website. Read the SCR user guide and fork the code on GitHub.

MFEM 3.3.2 Released November 10, 2017 (release)

Version 3.3.2 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable high-performance scalable finite element discretization research and application development on a wide variety of platforms, ranging from laptops to exascale supercomputers.

MFEM has many features, including:

  • 2D and 3D, arbitrary order H1, H(curl), H(div), L2, NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming/nonconforming adaptive mesh refinement (AMR), including anisotropic refinement, derefinement and parallel load balancing.
  • Galerkin, mixed, isogeometric, discontinuous Galerkin, hybridized, and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements, including arbitrary order curvilinear meshes.
  • Scalable algebraic multigrid, time integrators, and eigensolvers.
  • Lightweight interactive OpenGL visualization with the MFEM-based GLVis tool.

Some of the new additions in version 3.3.2 are:

  • Support for high-order mesh optimization based on the target-matrix optimization paradigm from the ETHOS project.
  • Implementation of the community policies in xSDK, the Extreme-scale Scientific Software Development Kit.
  • Integration with the STRUMPACK parallel sparse direct solver and preconditioner.
  • Several new linear interpolators, five new examples and miniapps.
  • Various memory, performance, discretization and solver improvements, including physical-to-reference space mapping capabilities.
  • Continuous integration testing on Linux, Mac and Windows.

MFEM is being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full CHANGELOG.

CHAI: Copy Hiding Application Interface August 07, 2017 (story)

LLNL’s Advanced Architecture Portability Specialists have developed a new abstraction model called CHAI, which automates the movement of data between main memory and other memory locations with minimal intrusion on the source code. This streamlined process provides productivity and efficiency boosts.

Learn more on the LLNL Computing website, and fork the software on GitHub.

Spack Featured in Podcast on Open Source and Supercomputers July 13, 2017 (multimedia)

LLNL’s Todd Gamblin joins the “Request for Commits” podcast to talk about Spack, a versatile HPC package manager.

VisIt 2.12.3 Released June 30, 2017 (release)

Version 2.12.3 of VisIt is now available at: visit.llnl.gov

VisIt is an open source, cross platform, interactive, scalable, visualization and analysis tool for simulation data. VisIt 2.12.3 is primarily a bug fix release.

2.12.3 release highlights:

  • The ANSYS reader was improved to support more general kinds of NBLOCK format strings.
  • The GUI performance was improved on databases with large numbers of variables.
  • A bug was corrected with query-over-time where it would yield different results in certain instances than repeatedly changing the time state and querying the value.
  • A couple of bugs were corrected with the Silo reader.

For a complete list of changes see the 2.12.3 release notes

Video: PRUNERS: Warding Off Non-Deterministic Software Bugs at Scale May 16, 2017 (multimedia)

This video introduces PRUNERS, a software toolset to fight non-deterministic bugs on supercomputers.

MFEM: Accelerating Simulation Software with Graphics Processing Units May 08, 2017 (story)

LLNL scientists are redesigning simulation software to leverage the capabilities of next-generation exascale computing. Read more about MFEM’s role in our transition to exascale technology.

NARAC Software Team Begins Modernization of GUI Framework March 30, 2017 (story)

As any computer systems professional knows, the “leading edge” is a moving target. When the system belongs to LLNL’s National Atmospheric Release Advisory Center (NARAC) — the DOE’s premier atmospheric transport and dispersion simulation facility — ensuring the reliability of core operational systems requires thoughtful consideration of new technology alongside evolving needs. NARAC’s software development team continually evaluates current capabilities and weighs appropriate solutions to meet NARAC’s critical national and international missions. The team is moving to a web-based technology stack, leveraging the stability of many open-source tools.

Spindle: Scalable Shared Library Loading March 16, 2017 (story)

Spindle is an LLNL-developed open-source tool for improving the library-loading performance of dynamically-linked HPC applications.

Learn more on the LLNL Computing website, and download v0.10 on GitHub.

MFEM 3.3 Released January 28, 2017 (release)

Version 3.3 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable high-performance scalable finite element discretization research and application development on a wide variety of platforms, ranging from laptops to exascale supercomputers.

It has many features, including:

  • 2D and 3D, arbitrary order H1, H(curl), H(div), L2, NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming/nonconforming adaptive mesh refinement (AMR), including anisotropic refinement, derefinement and parallel load balancing.
  • Galerkin, mixed, isogeometric, discontinuous Galerkin, hybridized, and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements, including arbitrary order curvilinear meshes.
  • Scalable algebraic multigrid, time integrators, and eigensolvers.
  • Lightweight interactive OpenGL visualization with the MFEM-based GLVis tool.

Some of the new additions in version 3.3 are:

  • Comprehensive support for the linear and nonlinear solvers, preconditioners, time integrators and other features from the PETSc and SUNDIALS suites.
  • Linear system interface for action-only linear operators including support for matrix-free preconditioning and low-order-refined spaces.
  • General quadrature and nodal finite element basis types.
  • Scalable parallel mesh format.
  • Thirty-six new integrators for common families of operators.
  • Sixteen new serial and parallel example codes.
  • Support for CMake, on-the-fly compression of file streams, and HDF5-based output following the Conduit mesh blueprint specification.

MFEM is being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full CHANGELOG.

Strawman 0.1.0 Released January 10, 2017 (release)

Strawman is an open source many-core capable lightweight in situ visualization and analysis infrastructure for multi-physics HPC simulations.

Version 0.1.0, the first release of Strawman, is now available.

For more details, see Strawman’s Documentation.

Conduit 0.2.1 Released January 06, 2017 (release)

Conduit provides APIs focused on simplifying data exchange in HPC simulations. It provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python and is used for data coupling between packages in-core, serialization, and I/O tasks.

The 0.2.1 version is primarily a bug fix release, which includes:

  • Fixes to support static builds, including on BGQ using xlc and gcc
  • Bug fixes for Blueprint verify routines.
  • The elimination of separate Fortran libs by moving Fortran symbols into their associated main libs

For more details, see Conduit’s Release Notes.

VisIt 2.12.0 Released November 10, 2016 (release)

Version 2.12.0 of VisIt is now available at: visit.llnl.gov

VisIt is an open source, cross platform, interactive, scalable, visualization and analysis tool for simulation data.

2.12.0 release highlights:

  • Improvements for rendering streamlines with the Pseudocolor Plot
  • Added gzstream support for ASCII-based database readers
  • Added experimental topological segmentation expressions (merge_tree,split_tree, and local_threshold)
  • Several bug fixes to VisIt and Libsim
  • Ship numpy with VisIt’s CLI

For a complete list of the changes see the 2.12.0 release notes.

Conduit 0.2.0 Released November 03, 2016 (release)

Conduit version 0.2.0 is now available. Conduit provides APIs focused on simplifying data exchange in HPC simulations. It provides an intuitive model for describing hierarchical scientific data in C++, C, Fortran, and Python and is used for data coupling between packages in-core, serialization, and I/O tasks.

The 0.2.0 release includes:

  • Changes to clarify concepts in the conduit::Node API
  • Added const access to conduit::Node’s children and a new NodeConstIterator
  • Added support for building on Windows
  • Added conduit::blueprint verify support and examples for the mcarray and mesh protocols
  • Added extensive HDF5 I/O support to conduit::relay for reading and writing between HDF5 files and conduit Node trees

How One National Lab is Opening Up Code without Compromising National Security September 14, 2016 (story)

In this FedSCoop article, LLNL Computer Engineer Ian Lee explains how he’s helping laboratory staff understand what they can develop in open source.

GridDyn Initial Release August 17, 2016 (new-repo)

GridDyn is a power system simulator developed at Lawrence Livermore National Laboratory. The name is a concatenation of Grid Dynamics, and as such usually pronounced as “Grid Dine”. It was created to meet a research need for exploring coupling between transmission, distribution, and communications system simulations.

While good open source tools existed on the distribution side, the open source tools on the transmission side were limited in usability either in the language or platform or simulation capability, and commercial tools, while quite capable, simply did not allow the access to the internal components and data required to conduct the research. Thus, the decision was made to design a platform that met the needs of the research project. Building off of prior efforts in grid simulation, GridDyn was designed to meet the current and future research needs of the various power grid related research and computational efforts.

It is written in C++, making use of recent improvements in the C++ standards. It is intended to be cross platform with regard to operating system and machine scale. The design goals were for the software to be easy to couple with other simulations, and to be easy to modify and extend. It is very much still in development and as such, the interfaces and code are likely to change, in some cases significantly as more experience and testing is done. It is our expectation that the performance, reliability, capabilities, and flexibility will continue to improve as projects making use of the code continue and new ones develop. We expect there are still many issues so any bug reports or fixes are welcome. And hopefully even in its current state and as the software improves the broader power systems research community will find it useful.

GridDyn is Open Source software, publicly available on GitHub at: github.com/llnl/griddyn under a BSD License.

VisIt 2.10.3 Released July 21, 2016 (release)

Version 2.10.3 of VisIt, a cross platform Open Source, interactive, scalable, visualization, animation and analysis tool is now available at: visit.llnl.gov

VisIt 2.10.3 is primarily a bug fix release that resolves about twenty important issues.

For a complete list of the changes see the 2.10.3 release notes.

STAT: Discovering Supercomputers' Code Errors July 06, 2016 (multimedia) (story)

LLNL’s Stack Trace Analysis Tool (STAT) reduces the number of processes requiring more in-depth analysis by organizing processes within a parallel application based on behavioral patterns. This analytic tool was designed and developed by LLNL computer scientists with collaborators at the University of Wisconsin at Madison and the University of New Mexico. A video explains more.

Learn more on the LLNL Computing website, and download the software on GitHub.

MFEM 3.2 Released June 30, 2016 (release)

Version 3.2 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable high-performance scalable finite element discretization research and application development. It has many features, including:

  • 2D and 3D, arbitrary order H1, H(curl), H(div), L2, NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming/nonconforming adaptive mesh refinement (AMR), including anisotropic refinement, derefinement and parallel load balancing.
  • Galerkin, mixed, isogeometric, discontinuous Galerkin, hybridized, and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements, including arbitrary order curvilinear meshes.
  • Scalable algebraic multigrid, time integrators, and eigensolvers.
  • Lightweight interactive OpenGL visualization with the MFEM-based GLVis tool.

Some of the new additions in version 3.2 are:

  • Dynamic AMR with parallel load balancing, derefinement of non-conforming meshes.
  • Tensor-based high-performance finite element operator assembly and (matrix-free) evaluation.
  • Support for discontinuous Galerkin and hybridization methods on parallel non-conforming meshes.
  • Support for Gmsh and CUBIT meshes.
  • Secure socket communications in class socketstream based on GnuTLS.
  • Four new serial and parallel example codes.

MFEM is being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full CHANGELOG.

GLVis 3.2 Released June 30, 2016 (release)

Version 3.2 of GLVis, a lightweight OpenGL tool for accurate and flexible finite element visualization, is now available.

The goal of GLVis is to enable quick but precise visualization of general finite element meshes and functions in a wide variety of applications. It has many features, including:

  • Support for arbitrary high-order and NURBS meshes.
  • Visualization of parallel meshes and solutions.
  • Accurate functional representation of many finite elements.
  • Server mode accepting multiple socket connections.

Some of the new additions in version 3.2 are:

  • Secure socket connections based on the GnuTLS library.
  • Optional plot caption support.
  • Various other small improvements and bug fixes.

GLVis being developed in CASC, LLNL and is freely available under LGPL 2.1.

For more details, see the full CHANGELOG.

Hypre 2.11.1 June 09, 2016 (release)

Congratulations to the Hypre team, that today released version 2.11.1, now available from their GitHub project page.

The notable changes from the CHANGELOG are:

  • Fixed one more bug related to SStructSetSharedPart and SetNeighborPart
  • Fixed a bug in PFMG red/black relaxation for 2D problems
  • Fixed various other bugs in ParCSR and the FEI
  • Fixed configure option --without-MLI and removed option --with-examples
  • Modified code to enable compilation with a C++ compiler.
  • Added several missing Fortran interface routines in Struct and BoomerAMG
  • Updated the AME and LOBPCG interfaces to work correctly with both absolute and relative tolerances.

Hypre is freely available under LGPL 2.1.

For the latest version, please visit the Hypre project on GitHub or on the LLNL Computing site.

XBraid: Parallel Time Integration with Multigrid May 23, 2016 (story)

LLNL scientists have developed an open-source, non-intrusive, and general purpose parallel-in-time code, XBraid. This tool solves for all time steps simultaneously with the help of a new multilevel algorithm and the massively parallel processing capabilities of current and future high-performance computers.

Learn more on the LLNL Computing website, and download the software on GitHub.

OpenZFS on Linux 0.6.5.6 March 22, 2016 (release)

Version 0.6.5.6 of OpenZFS on Linux, the native Linux kernel port of the ZFS filesystem, is now available at: http://zfsonlinux.org

Some notable improvements in version 0.6.5.6 are:

  • Bugs fixes for case-insensitive filesystem support. Users running Samba servers that export ZFS filesystems will benefit from this update.
  • Bug fixes and improved scalability for zvols. Support for asynchronous creation of device nodes. This fixes several hangs and allows pools with many zvols to be imported quickly.
  • Add -gLP to zpool subcommands to print vdev names as a GUID, a real path resolving all symbolic links, and as a full path. This change enables better ZFS integration in Ubuntu’s GRUB utilities.
  • Fix a corruption bug where, in certain circumstances, zfs send -i (incremental send) can produce a stream which will result in incorrect sparse file contents on the target.

For more details, check out the full changelog.

VisIt 2.10.1 Released March 09, 2016 (release)

Source code and prebuilt executables are available on the VisIt web site.

VisIt 2.10.1 contains the following enhancements:

  • VisIt now permits the -socket-bridge-host command line argument to override the host name passed to compute engines when VCL starts a socket bridge. This is useful for login nodes that are attached to multiple network interfaces such as on BlueGene/Q where compute nodes may need to attach to the socket bridge host (typically the LAC node) using an alias.
  • The PF3D database plugin was enhanced so that it reads the new multilevel file format.
  • The SPH Resample Operator now supports zone-centered data.
  • VTK’s higher order elements are now exposed via Libsim.
  • The Silo database plugin now supports all-empty multi-block objects.
  • The interpretation of “_meshtv_searchpath” and “_visit_searchpath” was changed in the Silo database plugin. If the search path is blank it will now be ignored instead of causing the plugin to ignore all variables located in subdirectories. The plugin will now ignore all variables located in subdirectories when the search path contains a path that doesn’t exist in the Silo file. This change in behavior was necessitated when we discovered that codes had been unintentionally outputting Silo files with blank search paths for years. Because the Silo plugin wasn’t handling a blank search path properly, this never caused a problem. When the behavior was fixed in VisIt 2.10, VisIt no longer displayed the variables in the subdirectories in its menus when it encountered such a file. Since we couldn’t fix all the existing files, we decided to change the interpretation of the search path in VisIt.
  • The pre-built Ubuntu distributions now contain support for reading ITAPS files.
  • The PDB Z File database plugin was enhanced to support marker meshes and variables.
  • The MFEM database plugin was updated to use MFEM 3.1, which provides support for MFEM AMR meshes. See http://mfem.org/ for more details.
  • The ADIOS database plugin was upgraded to use ADIOS 1.9.0.

As well as the following bug fixes:

  • The VisItAddPlot() function in Libsim was incorrectly using the global “Apply operators to all plots” setting when creating plots. The behavior for VisItAddPlot() has been changed so new plots are not created with previously applied operators to more closely match the operation of the VisIt CLI.
  • Large tecplot files can now be read on Windows.
  • A potential memory overwrite was fixed in the Fortran visitgetenv function in Libsim.
  • Fixed a bug where the QT4 include and archive files were missing after doing a ‘make install’.
  • Re-enabled adaptive csg discretization for Windows, which was inadvertently disabled for previous release.
  • Fixed a bug with the PF3D database plugin where the time and cycle were reported as zero for all the time states accessed after the initial time state accessed.
  • Fixed a bug preventing the reading of DOS-formatted .visit files on Linux.
  • Fixed bug whereby setting ‘ssh command’ would not work correctly on Windows. If the path to ssh contains spaces, the full path and command need to be surrounded in double-quotes, e.g., “C:\Program Files (x86)\Putty\plink.exe”. If manually adding this to an .xml host profile, the quotes and path-separators should be escaped: “"C:\Program Files (x86)\Putty\plink.exe"”.
  • Fixed a bug opening Silo files larger than 4 Gbytes on Windows.
  • Fixed the tensorVectorMult bug in the SPH Resample Operator found by Cody Raskin.
  • Fixed a bug that prevented the SPH Resample Operator from working with the Volume Plot.
  • Fixed handling of buggy mmesh_name member of multi-block objects in Silo files.

More information can be found on the Release Notes for VisIt 2.10.1 page.

A Flexible Package Manager for HPC Software February 19, 2016 (story)

Learn more about the origins of Spack, whose community of users and contributors continues to grow.

MFEM 3.1 Released February 16, 2016 (release)

Version 3.1 of MFEM, a lightweight, general, scalable C++ library for finite element methods, is now available.

The goal of MFEM is to enable research and development of scalable finite element discretization and solver algorithms through general finite element abstractions, accurate and flexible visualization, and tight integration with the hypre linear solvers library. It has many features, including:

  • 2D and 3D, arbitrary high-order H1, H(curl), H(div), L2 and NURBS elements.
  • Parallel version scalable to hundreds of thousands of MPI cores.
  • Conforming or nonconforming adaptive mesh refinement (AMR), including anisotropic refinement.
  • Galerkin, mixed, isogeometric, DG and DPG discretizations.
  • Support for triangular, quadrilateral, tetrahedral and hexahedral elements with curved boundaries.
  • Lightweight interactive OpenGL visualization with GLVis.

Some of the new additions in version 3.1 are:

  • Substantially improved non-conforming adaptive mesh refinement, which now works also in parallel.
  • General finite element spaces and solvers on surfaces and mesh skeletons.
  • Support for hybridization and static condensation, with a new FEM <-> linear system interface.
  • New eigensolvers and improved linear solvers and preconditioners.
  • Visualization of non-conforming meshes and grid functions, and vector fields on surface meshes.
  • Six new examples codes for parallel AMR, eigenvalue problems and DG diffusion.
  • Five new electromagnetic and meshing miniapps.

MFEM is freely available under LGPL 2.1.

For more details, see the interactive documentation and the full description of the changes.

GLVis 3.1 Released February 05, 2016 (release)

Version 3.1 of GLVis, a lightweight OpenGL tool for accurate and flexible finite element visualization, is now available.

The goal of GLVis is to enable research and development of general finite element discretization algorithms through accurate OpenGL visualization, and tight integration with the MFEM library. It has many features, including:

  • Support for arbitrary high-order and NURBS meshes.
  • Visualization of parallel meshes and solutions.
  • Accurate functional representation of many finite elements.
  • Server mode accepting multiple socket connections.

Some of the new additions in version 3.1 are:

  • Support for visualization of non-conforming meshes and grid functions.
  • New visualization of vector fields on surface meshes.
  • Improved build system, command line options and PDF screenshots.

GLVis is freely available under LGPL 2.1.

For more details, see the full description of the changes.

Flux: Building a Framework for Resource Management February 01, 2016 (story)

Flux is a next-generation resource and job management framework that expands the scheduler’s view beyond the single dimension of “nodes.” Instead of simply developing a replacement for SLURM and Moab, Flux offers a framework that enables new resource types, schedulers, and framework services to be deployed as data centers continue to evolve. This approach is especially important for extremely large Linux clusters like those at LLNL.

Learn more on the LLNL Computing website and fork the code on GitHub.

SAMRAI: Structured Adaptive Mesh Refinement Application Infrastructure January 30, 2016 (story)

The SAMRAI (Structured Adaptive Mesh Refinement Application Infrastructure) library is LLNL’s code base for exploring application, numerical, parallel computing, and software issues associated with SAMR.

Learn more on the LLNL Computing website, which includes documentation and software downloads.

ROSE Compiler: Enabling Easy Access to Automated Compiler Technology January 11, 2016 (story)

ROSE is a compiler infrastructure with robust analysis, debugging, and optimization tool development capabilities developed by a group of LLNL computer scientists and external collaborators.

Learn more on the LLNL Computing website, and download the software on the ROSE website.

RAJA: Managing Application Portability for Next-Generation Platforms January 11, 2016 (story)

RAJA is a software abstraction that systematically encapsulates platform-specific code to enable applications to be portable across diverse hardware architectures without major source code disruption. RAJA is designed to integrate with existing codes and provide a development model for new codes to be portable from inception.

Learn more on the LLNL Computing website and fork the code.

Qbox and Qb@ll: Computing Electronic Structures at the Quantum Level January 11, 2016 (story)

Qbox is a first-principles molecular dynamics code that is used to compute the electronic structure of atoms, molecules, solids, and liquids within the density functional theory formalism. LLNL’s version of Qbox is an extension called Qb@ll.

Learn more on the LLNL Computing website and fork the Qb@ll code.

GLVis: Finite Element Visualization January 07, 2016 (story)

GLVis is a lightweight OpenGL-based tool for accurate and flexible finite element visualization, based on MFEM.

Learn more on the LLNL Computing website, and visit the GLVis website.

High-Order Finite Element Library Provides Scientists with Access to Cutting-Edge Algorithms January 06, 2016 (story)

Learn more about the origins of MFEM, one of our flagship open-source projects.