Skip to main content

NAS Software Downloads

NAS experts develop and adapt software programs to complement and enhance the work performed on our supercomputers. This work includes software for scientific visualization, supercomputer benchmarking, computational fluid dynamics, and simulation grid processing. The following NAS-developed software tools can be downloaded for use on your own system.

Unrestricted Downloads

    Ballast   

Ballast is a tool for balancing user load across SSH servers based on configurable criteria such as CPU load and system availability. Ballast is invoked as part of the SSH login process, hence has access to the user name, which is not available in traditional load balancers. This gives ballast the unique ability to perform user-specific load balancing, which has several benefits including separating users who have historically generated high loads and providing a common login interface to users who may be separated based on other criteria such as system accessibility. Ballast includes a simple client, a lightweight data server, and a data collection agent. This software is NASA open source.   

 

Ballast details and download links

 
    Bash-Accessible SSH File System (BASSHFS)   

BASSHFS allows users to perform simple tasks on remote file systems as if they were locally mounted. This tool is similar SSHFS except it does not require FUSE kernel support. Instead, BASSHFS uses the aliasing and function mechanisms of the bash shell to intercept supported program invocations and remap those to its own versions. These internal versions determine if files on the command line are local or remote. Remote files are processed transparently using a persistent SSH connection to the associated host(s). Output associated with the local and remote files is then multiplexed together into the standard unified format associated with the original command to present all files as if they were local. This software is NASA open source.   

 

BASSHFS details and download links
Contact: Paul Kolano

 
    Filtering and Reorganization of Excessive Email Emanation (FreeMe)   

FreeMe reduces admin email clutter during large-scale outages within HPC environments while highlighting messages of interest. It allows each administrator to manage their individual subscriptions with the ability to match full regular expressions against any email field, providing fine-grained filtering. Emails can be processed as they are received in procmail-like fashion or read from an existing inbox. Options include ignoring uninteresting messages, resending messages on demand, or sending them in a consolidated digest format to dramatically reduce the number of messages received. Original emails are kept in an archive that can be queried on demand. FreeMe can also be used in a single-user configuration. This software is NASA open source.   

 

FreeMe details and download links
Contact: Paul Kolano

 
    Mesh   

Mesh is a secure, lightweight grid middleware that is based on the addition of a single sign-on capability to the built-in public key authentication mechanism of SSH using system call interposition. Resources may be added to a Mesh-based grid in a matter of minutes using just five small files and two environment variable settings. Mesh adheres to fundamental security principles and was designed to be compatible with strong security mechanisms including two-factor authentication, SSH bastions, and restrictive firewalls. Mesh uses a remote command model, which is based on stock SSH clients and the syntax and commands already understood by users, thus requires no additional software or knowledge to utilize effectively. Several existing services have been integrated with Mesh to provide resource discovery and query, high performance file transfer, and job management. This software is NASA open source.   

 

Mesh details and download links
Contact: Paul Kolano

 
    Mutil   

Mutil is a set of standard utilities that employ multiple types of parallelism and other optimizations to achieve maximum performance on modern file systems. Multi-threading is used to ensure that nodes are kept as busy as possible. Double buffering allows individual operations within a single task to be overlapped using asynchronous I/O. Multi-node cooperation allows different nodes to take part in the same task. Split file processing allows multiple threads to operate concurrently on the same file. Finally, additional optimizations such as buffer management help eliminate other bottlenecks that can reduce performance. Mutil currently includes drop-in replacements for cp and md5sum from GNU coreutils, which have achieved 10/30x rates on one/many nodes. This software is NASA open source.   

 

Mutil details and download links
Contact: Paul Kolano

 
    NAS Parallel Benchmarks (NPB/NGB)   

The NAS Parallel Benchmarks have been developed for performance evaluation of highly parallel supercomputers. These benchmarks consist of five parallel kernels and three simulated application benchmarks. Together they mimic the computation and data movement characteristics of large-scale CFD applications. In version 2.4, options for measuring I/O were added. In version 3.0 new parallelization paradigms were added. In version 3.0-MZ, a multi-zone capability for testing multi-level parallelism was added.   

 

The Grid NAS Parallel Benchmarks have been developed for performance evaluation of computational grids. These benchmarks consist of four compound tasks composed of NPB problems. Together they mimic the computation and data movement characteristic of scientific grid applications.

Full details and download links are available on the NAS Parallel Benchmarks page
Contact: Henry Jin

 
    Retools   

Retools is a set of modifications to the commonly used open source utilities bzip2, gzip, rsync, and tar that automatically selects the Lustre stripe count for created and/or extracted files according to the sizes of the files involved. By striping large files over a higher number of physical disks and small files over a lower number, aggregate I/O bandwidth for large files is maximized and the impact to the file system due to small files is minimized. This software is NASA open source.   

 

Retools details and download links
Contact: Paul Kolano

 
    Save   

Save is a lightweight framework for creating high availability systems. Save manages IP addresses shared between multiple servers with the same function and monitors the health of those servers to determine which should be actively servicing requests at any given time. Save has additional features to facilitate the administration of high availability systems. Synchronization mechanisms allow configuration files to be kept consistent between systems as well as allowing commands to be executed across all servers of a particular type. Archival mechanisms provide automatic version control of configuration files to aid in recovery in case of errant configuration. Validation mechanisms allow configuration files to be automatically checked for correctness before they are installed on all peer servers. This software is NASA open source.   

 

Save details and download links
Contact: Paul Kolano

 
    Savors   

Savors is a visualization framework that supports the ingestion of data streams created by arbitrary command pipelines. Any number of data streams can be shown synchronized by time in the same or different views, which can be arranged in any layout. These capabilities combined with a powerful parallelization mechanism and interaction models already familiar to administrators allows Savors to display complex visualizations of data streamed from many different systems with minimal effort. This software is NASA open source.   

 

Savors details and download links
Contact: Paul Kolano

 
    Shift 

The Self-Healing Independent File Transfer (Shift) framework provides high performance and resilience for remote transfers of very large datasets to and from high-performance computing (HPC) facilities, as well as local transfers between filesystems within the facilities, by utilizing a variety of techniques.

 

Full details and download links are available on the Shift page
Contact: Paul Kolano

 
    SSH Interruption Mitigator (SSHIM)   

SSHIM adds resiliency to SSH remote commands. It is invoked using options that change the program used to spawn the SSHvchannel (for example, rsync's -e option or scp's -S option). When first invoked, SSHIM initiates the SSH channel and instead of calling the remote side of the local program, invokes itself on the remote system. This starts a limited daemon that invokes the remote side. Because both sides of the local program are connected to SSHIM instances instead of SSH, they are unaware when the SSH channel is broken. When SSHIM detects a channel failure, the local side re-spawns the connection and attempts to reconnect to its remote counterpart and continue operation as if the connection were stable. This software is NASA open source.   

 

SSHIM details and download links
Contact: Paul Kolano

 

Restricted Downloads

The following NASA codes have been evaluated for access restrictions and designated for a specific type of release according to the purpose for which the software code was designed. These codes are deemed restricted because they have been developed for a specific government purpose. Codes designated U.S. Government Purpose Release require the user to work for a federal agency or a business and/or university with an active contract, grant, or Space Act Agreement with the federal government. Requests are made through the NASA Software Catalog, and requestors must sign a Software Usage Agreement.

    Cart3D   

Cart3D is a high-fidelity inviscid analysis package for conceptual and preliminary aerodynamic design. It allows users to perform automated computational fluid dynamics (CFD) analysis on complex geometry. The package includes utilities for geometry import, surface modeling and intersection, mesh generation, and flow simulation. Cart3D is highly automated so that geometry acquisition and mesh generation can usually be performed within a matter of minutes on most modern UNIX workstations or PCs.   

 

Full details and download links are available on the Cart3D page.

 
 
    Chimera Grid Tools   

The Chimera Grid Tools software package contains a collection of software tools for performing geometry processing, surface and volume grid generation, grid manipulation and diagnostics, flow solver input preparation, multi-body dynamics input preparation and animation, flow solution visualization, debris trajectory analysis input preparation, strand grid and AMR Cartesian grid visualization, flow solution post-processing analysis including forces and moments computation, and convergence history visualization.   

 

Full details and download links are available on the Chimera Grid Tools page

 
 
    Discontinuous-Galerkin Spectral-Element Solver (eddy)   

The eddy solver is a fundamental research code for advancing spectral methods for complex geometry. This software is intended to enable researchers to collaborate through a common framework which enables three-dimensional simulations on practical problems. Areas of interest include advanced numerical algorithms, computational optimization, scale-resolving turbulence models, and high-order mesh generation.   

 

Further information is available on the eddy page.

 
 
    PEGASUS 5   

The Pegasus software is used as a pre-processor for overset-grid Computational Fluid Dynamics (CFD) simulations. It provides the hole-cutting and connectivity information between structured overset grids. The main features of the software include automated hole-cutting algorithms, a projection scheme for fixing small discretization errors in overset surface; efficient interpolation search methods; hole-size optimization based on adding additional layers of fringe points; and an automatic restart capability. The code can run in parallel using the Message-Passing Interface (MPI) standard. The parallel performance provides efficient speed-up of the execution time utilizing dozens or even hundreds of processors. The additional capabilities in the new 5.2 version include: support for cell-centered grids; triple-fringe option; automated domain decomposition into multiple hole-cutters; improved parallel execution load-balancing algorithm; and additional minor enhancements.   

 

Request PEGASUS 5 at the NASA Software Catalog

PEGASUS 5 Documentation

 
    PLOT3D   

PLOT3D is a computer graphics program designed to visualize the grid and solutions of structured computational fluid dynamics (CFD) datasets. Version 4.1 uses the OpenGL/GLUT graphics library. Several new features have been added to the code. These include: automatic computation of grid coordinate minimum/maximum; an orphan point plotting function; the ability to read double-precision unformatted data; negative grid index processing; random specification of colors for different walls; and simultaneous specification of walls and subsets for all zones.   

 

Request PLOT3D at the NASA Software Catalog