Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Performance Tuning”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 37 records · Page 2

Interplay of molten salt and dopants in tuning the performance of single-crystalline LiNiO 2

Single-crystalline layered oxide cathodes have seen great research interest in recent years. Adoption of single-crystal morphology improves mechanical robustness and eliminates intergranular boundaries, improving the chemical stability of the cathode. Furthermore, single-crystal cathodes also suffer from worsened lithium-diffusion kinetics stemming from the significantly increased diffusion path lengths. Sluggish lithiation kinetics induce concentration gradients within the cathode particle during cell operation, resulting in the accumulation of lattice strain, which deteriorates cell performance. Foreign dopants have been shown to greatly improve ion diffusion in many high-Ni layered oxide cathode systems. In particular, we identify Ti and Te as promising dopants to ameliorate the slow diffusion kinetics. We find that doping 1 mol.% Te into single crystal LiNiO 2 greatly improves Li + diffusivity, as determined through galvanostatic intermittent titration technique. Further incorporating 2 mol.% Al and pairing with lithium-metal anode in a localized high concentration electrolyte (LHCE) delivers 206 mA h g -1 at C/3 rate and retains 94% capacity after 100 cycles in Li metal half cells. By addressing kinetically mediated degradation with Te doping, and surface-based degradation with Al and LHCE, the cathode experiences very little polarization and overpotential growth, enabling stable cycling with high accessible capacity.

25 ENERGY STORAGE↗

Tuning the Performance of a Computational Persistent Homology Package

In recent years, persistent homology has become an attractive method for data analysis. It captures topological features, such as connected components, holes, and voids from point cloud data and summarizes the way in which these features appear and disappear in a filtration sequence. In this project, we focus on improving the performanceof Eirene, a computational package for persistent homology. Eirene is a 5000-line open-source software library implemented in the dynamic programming language Julia. We use the Julia profiling tools to identify performance bottlenecks and develop novel methods to manage them, including the parallelization of some time-consuming functions on multicore/manycore hardware. Empirical results show that performance can be greatly improved.

Persistent Homology↗

Performance Debugging and Tuning of Flash-X with Data Analysis Tools

State-of-the-art multiphysics simulations running on large scale leadership computing platforms have many variables contributing to their performance and scaling behavior. We recently encountered an interesting performance anomaly in Flash-X, a multiphysics multicomponent simulation software, when characterizing its performance behavior on several large-scale HPC platforms. The anomaly was tracked down to the interaction between the use of dynamic allocation of scratch data and data locality in the cache hierarchy. In this paper we present the details of unexpected performance variability of Flash-X, its extensive analysis using the performance measurement tool TAU to collect the data and Python data analysis libraries to explore the data, and our insights from this experience. In this process, we discovered and removed or mitigated two additional performance limiting bottlenecks for performance tuning.

Huck, Kevin↗

Developing Ultrahigh-Resolution E3SM Land Model for GPU Systems

Designing and refactoring complex scientific code, such as the E3SM land model (ELM), for new computing architectures is challenging. This paper presents design strategies and technical approaches to develop a data-oriented, GPU-ready ELM model using compiler directives (OpenACC/OpenMP). We first analyze the datatypes and processes in the original ELM code. Then we present design considerations for ultrahigh-resolution ELM (uELM) development for massive GPU systems. These techniques include the global data-oriented simulation workflow, domain partition, code porting and data copy, memory reduction, parallel loop restructure and flattening, and race condition detection. We implemented the first version of uELM using OpenACC targeting the NVidia GPUs in the Summit supercomputer at Oak Ridge National Laboratory. During the implementation, we developed a software tool (named SPEL) to facilitate code generation, verification, and performance tuning using these techniques. The first uELM implementation for Nvidia GPUs on Summit delivered promising results: 1) over 98% of the ELM code was automatically generated and tuned by scripts. Most ELM modules had better computational performances than the original ELM code for CPUs. The GPU-ready uELM is more scalable than the CPU code on fully-loaded Summit nodes. Example profiling results from several modules are also presented to illustrate the performance improvements and race condition detection. The lessons learned and toolkit developed in the study are also suitable for further uELM deployment using OpenMP on the first US exascale computer, Frontier, equipped with AMD CPUs and GPUs.

Schwartz, Peter↗

I/O Access Patterns in HPC Applications: A 360-Degree Survey

The high-performance computing I/O stack has been complex due to multiple software layers, the inter-dependencies among these layers, and the different performance tuning options for each layer. In this complex stack, the definition of an “I/O access pattern” has been reappropriated to describe what an application is doing to write or read data from the perspective of different layers of the stack, often comprising a different set of features. It has become common to have to redefine what is meant when discussing a pattern in every new study, as no assumption can be made. This survey aims to propose a baseline taxonomy, harnessing the I/O community’s knowledge over the past 20 years. This definition can serve as a common ground for high-performance computing I/O researchers and developers to apply known I/O tuning strategies and design new strategies for improving I/O performance. We seek to summarize and bring a consensus to the multiple ways to describe a pattern based on common features already used by the community over the years.

97 MATHEMATICS AND COMPUTING↗

Matrix Multiply Performance of GPUs on Exascale-class HPE/Cray Systems

The computation of dense matrix-matrix products (GEMMs) is central to many modeling and simulation workloads as well as AI/ML deep learning campaigns. In fact, millions of dollars are spent annually on computing GEMMs, and large model training demands are increasing exponentially. Specialized processors such as GPUs are designed to perform well for these operations. However, the performance of GEMMs on GPUs can exhibit complex behaviors depending on many factors, making it challenging to optimize the performance of GEMMs on these processors. In this study we undertake an examination of GEMM performance on several leading GPU models taken from product lines of GPUs to be deployed in forthcoming exascale computing systems. We show results to illustrate the many factors that can affect performance of GEMMs on GPUs. We then present data collected from a large number of test runs for an example GEMM operation to show the dependence behaviors of GEMM rate on matrix dimensions. Finally, we show results from machine learning-based performance models using novel feature engineering methods to fit the measured performance, providing a potential basis for GEMM performance tuning and autotuning methods for GPUs. Recommendations are also given for how to achieve high GEMM performance on modern GPUs.

Melesse Vergara, Veronica↗

A Broadband Mechanically Tuned Superconducting Cavity Design Suitable for the Fermilab Main Injector

Radio Frequency superconductivity has been a mainstay of accelerator science for decades. However, its benefits have yet to be applied to proton synchrotrons with demanding tuning requirements. For example, the Main Injector (MI), Fermilab's high-energy proton synchrotron, currently utilizes 20+ ferrite-loaded cavities for a targeted 1.2 s acceleration cycle. Harnessing the extremely high gradients associated with superconductivity, the required number of cavities could be reduced by an order of magnitude, dramatically lowering operational power requirements even with cryogenic considerations. Additionally, the current plans for the Fermilab accelerator complex evolution initiative involve almost doubling the number of cavities in MI if the same designs are to be used, further highlighting the potential benefits of superconductivity. These advantages are attractive, but to date, no tunable superconducting cavity suitable for MI has been proposed due to the incompatibility of conventional broadband tuning methods with superconductivity. Here, we present a tunable superconducting cavity concept capable of record-breaking performance. Tuning will be accomplished by using high-speed linear actuators to vary the insertion depth of metallic plungers into the cavity volume. This tuning concept is theoretically viable with currently available technology and will be fully compatible with a superconducting cavity.

43 PARTICLE ACCELERATORS↗

A Mechanically Tuned Superconducting Main Injector Cavity

Radio Frequency (RF) superconductivity has been a mainstay of accelerator science for decades. However, its benefits have yet to be applied to proton synchrotrons with demanding tuning requirements. For example, the Main Injector (MI), Fermilab's high-energy proton synchrotron, currently utilizes 20+ ferrite-loaded cavities for a targeted 1.2 s acceleration cycle. Harnessing the extremely high gradients associated with superconductivity, the required number of cavities could be reduced by an order of magnitude, dramatically lowering operational power requirements even with cryogenic considerations. Additionally, the current plans for the Fermilab Accelerator Complex Evolution (ACE) initiative involve almost doubling the number of cavities in MI if the same designs are to be used, further highlighting the potential benefits of superconductivity. These advantages are attractive, but to date, no tunable superconducting cavity suitable for MI has been proposed due to the incompatibility of conventional broadband tuning methods with superconductivity. Here, we present a tunable superconducting cavity concept capable of record-breaking performance. Tuning will be accomplished by using high-speed linear actuators to vary the insertion depth of metallic plungers into the cavity volume. This tuning concept is theoretically viable with currently available technology and will be fully compatible with a superconducting cavity.

43 PARTICLE ACCELERATORS↗

COOP 3D ARPA Experiment 109 National Center for Atmospheric Research

Coupled atmospheric and hydrodynamic forecast models were executed on the supercomputing resources of the National Center for Atmospheric Research (NCAR) in Boulder, Colorado and the Ohio Supercomputing Center (OSC)in Columbus, Ohio. respectively. The interoperation of the forecast models on these geographically diverse, high performance Cray platforms required the transfer of large three dimensional data sets at very high information rates. High capacity, terrestrial fiber optic transmission system technologies were integrated with those of an experimental high speed communications satellite in Geosynchronous Earth Orbit (GEO) to test the integration of the two systems. Operation over a spacecraft in GEO orbit required modification of the standard configuration of legacy data communications protocols to facilitate their ability to perform efficiently in the changing environment characteristic of a hybrid network. The success of this performance tuning enabled the use of such an architecture to facilitate high data rate, fiber optic quality data communications between high performance systems not accessible to standard terrestrial fiber transmission systems. Thus obviating the performance degradation often found in contemporary earth/satellite hybrids.

Source record↗

Scalable Performance Environments for Parallel Systems

As parallel systems expand in size and complexity, the absence of performance tools for these parallel systems exacerbates the already difficult problems of application program and system software performance tuning. Moreover, given the pace of technological change, we can no longer afford to develop ad hoc, one-of-a-kind performance instrumentation software; we need scalable, portable performance analysis tools. We describe an environment prototype based on the lessons learned from two previous generations of performance data analysis software. Our environment prototype contains a set of performance data transformation modules that can be interconnected in user-specified ways. It is the responsibility of the environment infrastructure to hide details of module interconnection and data sharing. The environment is written in C++ with the graphical displays based on X windows and the Motif toolkit. It allows users to interconnect and configure modules graphically to form an acyclic, directed data analysis graph. Performance trace data are represented in a self-documenting stream format that includes internal definitions of data types, sizes, and names. The environment prototype supports the use of head-mounted displays and sonic data presentation in addition to the traditional use of visual techniques.

Reed, Daniel A.↗

Remote Sensing of Rain

The first problem addressed concerns passive-microwave rain retrievals. Most current approaches start by building off-line a cloud-model-derived database. Given data, the retrieval algorithms search the database for the microwave temperatures "closest" to the observed data, then after some fine-tuning (performed in different ways by different implementations) the rain is estimated to be that which corresponds to the selected (and fine-tuned) set of database temperatures. These approaches have three drawbacks: they cannot properly take into account the ambiguities which arise from the fact that several rain scenarios can produce the same observed temperatures; they are quite inefficient since they require manipulating a large database along with often complex "fine-tuning" procedures; and they cannot refine their estimates if additional data is available. This past year we have derived closed formulae relating observed microwave brightness temperatures, T(sub b), and the underlying rain rates, R: average T(sub b) =f (rain) and average rain = g (T(sub b)), along with the corresponding covariance matrices. These results are sufficient to describe the conditional probabilities p(R/T(sub b)) and p(T(sub b)/R) to second order. Progress has also been made towards deriving a robust description of the rain drop size distribution (DSD). The widespread approach consisting in parameterizing the DSD as a gamma-distribution in terms of the drop diameter D suffers from the facts that, in reality, the DSD is not a smooth function of D and that the largely arbitrary Gamma model imposes unintended behavior, which has implications on any quantities derived from the DSD model. We have therefore developed a non-parametric yet practical description of the DSD, which is particularly well-suited for use in remote-sensing applications. The diagram on the left shows a comparison between an actual DSD sample and the truncated non-parametric representation. One figure shows the relation between radar reflectivity and rain rate derived using this representation. Validation of the Tropical Rainfall Measuring Mission (TRMM) radar-radiometer combined R and DSD algorithm is underway. This algorithm was designed to make optimal use of the instantaneous reflectivity profiles measured by the TRMM radar and the microwave brightness temperatures measured by the TRMM passive radiometer. So far, it appears to be the most reliable TRMM rain algorithm.

Haddad, Ziad S.↗

Evaluating Modern GPU Interconnect: PCIe, NVLink, NV-SLI, NVSwitch and GPUDirect

High performance multi-GPU computing becomes an inevitable trend due to the ever-increasing demand on computation capability in emerging domains such as deep learning, big data and planet-scale simulations. However, the lack of deep understanding on how modern GPUs can be connected and the real impact of state-of-the-art interconnect technology on multi-GPU application performance become a hurdle. In this paper, we fill the gap by conducting a thorough evaluation on five latest types of modern GPU interconnects: PCIe, NVLink-V1, NVLink-V2, NVLink-SLI and NVSwitch, from six high-end servers and HPC platforms: NVIDIA P100-DGX-1, V100-DGX-1, DGX-2, OLCF’s SummitDev and Summit supercomputers, as well as an SLI-linked system with two NVIDIA Turing RTX-2080 GPUs. Based on the empirical evaluation, we have observed four new types of GPU communication network NUMA effects: three are triggered by NVLink’s topology, connectivity and routing, while one is caused by PCIe chipset design issue. These observations indicate that, for a multi-GPU application running in a multi-GPU node, choosing the right GPU combination can impose considerable impact on GPU communication efficiency, as well as an application’s overall performance. Our evaluation can be leveraged in building practical multi-GPU performance models, which are vital for GPU task allocation, scheduling and migration in a shared environment (e.g., AI cloud and HPC centers), as well as communication-oriented performance tuning.

Performance Evaluation, GPU, Interconnect, NUMA, P↗

Efficacy of Code Optimization on Cache-based Processors

The current common wisdom in the U.S. is that the powerful, cost-effective supercomputers of tomorrow will be based on commodity (RISC) micro-processors with cache memories. Already, most distributed systems in the world use such hardware as building blocks. This shift away from vector supercomputers and towards cache-based systems has brought about a change in programming paradigm, even when ignoring issues of parallelism. Vector machines require inner-loop independence and regular, non-pathological memory strides (usually this means: non-power-of-two strides) to allow efficient vectorization of array operations. Cache-based systems require spatial and temporal locality of data, so that data once read from main memory and stored in high-speed cache memory is used optimally before being written back to main memory. This means that the most cache-friendly array operations are those that feature zero or unit stride, so that each unit of data read from main memory (a cache line) contains information for the next iteration in the loop. Moreover, loops ought to be 'fat', meaning that as many operations as possible are performed on cache data-provided instruction caches do not overflow and enough registers are available. If unit stride is not possible, for example because of some data dependency, then care must be taken to avoid pathological strides, just ads on vector computers. For cache-based systems the issues are more complex, due to the effects of associativity and of non-unit block (cache line) size. But there is more to the story. Most modern micro-processors are superscalar, which means that they can issue several (arithmetic) instructions per clock cycle, provided that there are enough independent instructions in the loop body. This is another argument for providing fat loop bodies. With these restrictions, it appears fairly straightforward to produce code that will run efficiently on any cache-based system. It can be argued that although some of the important computational algorithms employed at NASA Ames require different programming styles on vector machines and cache-based machines, respectively, neither architecture class appeared to be favored by particular algorithms in principle. Practice tells us that the situation is more complicated. This report presents observations and some analysis of performance tuning for cache-based systems. We point out several counterintuitive results that serve as a cautionary reminder that memory accesses are not the only factors that determine performance, and that within the class of cache-based systems, significant differences exist.

VanderWijngaart, Rob F.↗

Implementation of an Integrated On-Board Aircraft Engine Diagnostic Architecture

An on-board diagnostic architecture for aircraft turbofan engine performance trending, parameter estimation, and gas-path fault detection and isolation has been developed and evaluated in a simulation environment. The architecture incorporates two independent models: a realtime self-tuning performance model providing parameter estimates and a performance baseline model for diagnostic purposes reflecting long-term engine degradation trends. This architecture was evaluated using flight profiles generated from a nonlinear model with realistic fleet engine health degradation distributions and sensor noise. The architecture was found to produce acceptable estimates of engine health and unmeasured parameters, and the integrated diagnostic algorithms were able to perform correct fault isolation in approximately 70 percent of the tested cases

Armstrong, Jeffrey B.↗

Data Partitioning and Load Balancing in Parallel Disk Systems

Parallel disk systems provide opportunities for exploiting I/O parallelism in two possible waves, namely via inter-request and intra-request parallelism. In this paper we discuss the main issues in performance tuning of such systems, namely striping and load balancing, and show their relationship to response time and throughput. We outline the main components of an intelligent, self-reliant file system that aims to optimize striping by taking into account the requirements of the applications and performs load balancing by judicious file allocation and dynamic redistributions of the data when access patterns change. Our system uses simple but effective heuristics that incur only little overhead. We present performance experiments based on synthetic workloads and real-life traces.

Scheuermann, Peter↗