Search NASA⌕ Search

SEARCH · Search NASA

Results for “Memory Optimization”

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 775 records · Page 43

Improved Evaluation of Large Network Matrices for Linear Power Flow Within Optimization Problems

This work presents methods for evaluating the Power Transfer Distribution Factor (PTDF) and Line Outage Distribution Factor (LODF) matrices by employing sparse linear algebra for large-scale computing applications. These matrices play a critical role in many power system applications, such as the Unit Commitment Problem (UC), pre- and post-contingency power flow analysis, and transmission expansion. These matrices are typically dense, which means they require a significant amount of time and memory to be computed for large networks. However, by analyzing the structure of the matrices and their computation method, it is possible to use reduced memory methods based on sparse matrix operations. This paper shows that sparse linear algebra algorithms are faster and require less memory and time than traditional dense approaches. Additionally, we explore the effect of matrix sparsification by eliminating trailing digits on power flow calculations.

large scale↗

Collaborative Research: Improved Efficiency and Coupling of the Radiation Code in the ACME Earth System Model (Final Report)

The complexity of radiative transfer, its importance to the exchange of energy in the climate system, and its high computational cost establishes importance of an accurate and efficient radiative transfer parameterization for climate simulation. Previous work by the proposing team at AER led to the development of the radiation code, RRTMG, which has been widely accepted by the global modeling community as a fast and accurate advancement over the previous generation of radiation codes. It has been in use in the NCAR CESM for many years, and it has been implemented in the initial version the DOE E3SM model. However, its computational cost remains high relative to other components in part due to its complexity and to its inefficient use of modern optimization strategies, and this project helped address this limitation for the code’s application in E3SM. Under other funding, the Investigators of this project led an effort to develop a high-performance broadband radiation code, called RTE+RRTMGP, which is a completely restructured code that will take advantage of modern computational capabilities to enhance its performance while retaining the strengths and accuracy of the original code. Designed to perform over a range of computer architectures, RTE+RRTMGP makes extensive use of Fortran 2003 features to improve both its efficiency and its use of memory. RTE+RRTMGP is expected to be adopted in the next generation of RTE+RRTMGP. This project allowed for advancements to the code’s computational capabilities and adding new and enhanced features. This included revising RTE+RRTMGP to run on GPU processors, analysis of and improvements to the code’s timing, modifying the gas optics in RRTMGP to increase the code’s accuracy, extensive validation of computed fluxes, heating rates and forcings, generating a cloud optical property and vertical sampling capabilities for RTE+RRTMGP, implementing a fast and accurate longwave scattering capability, and groundwork for the inclusion of a capability to specify solar variability. Many of the accomplishment in this project necessitated significant collaboration with the E3SM development team. The result of this project was optimization of a key physical component (radiative transfer calculations) of E3SM, directly supporting E3SM’s overarching global modeling objectives. More broadly, this project provided overall advancements in the use of radiative transfer calculations in atmospheric modeling and simulation, particularly for climate.

58 GEOSCIENCES↗

kokkos-fft: A shared-memory FFT for the Kokkos ecosystem

kokkos-fft provides a unified, performance-portable interface for Fast Fourier Transforms (FFTs) within the Kokkos ecosystem (C. Trott et al., 2021). It seamlessly integrates with leading local FFT libraries including FFTW, cuFFT, rocFFT, and oneMKL. Designed for simplicity and efficiency, kokkos-fft offers a user experience akin to numpy.fft for in-place and out-of-place transforms, while leveraging the raw speed of vendor-optimized libraries. A demonstration solving 2D Hasegawa-Wakatani turbulence with the Fourier spectral method illustrates how kokkos-fft can deliver significant speedups over Python-based alternatives without drastically increasing code complexity, empowering researchers to perform high-performance FFTs simply and effectively.

97 MATHEMATICS AND COMPUTING↗

Coupling a recurrent neural network to SPAD TCSPC systems for real-time fluorescence lifetime imaging

Fluorescence lifetime imaging (FLI) has been receiving increased attention in recent years as a powerful diagnostic technique in biological and medical research. However, existing FLI systems often suffer from a tradeoff between processing speed, accuracy, and robustness. Inspired by the concept of Edge Artificial Intelligence (Edge AI), we propose a robust approach that enables fast FLI with no degradation of accuracy. This approach couples a recurrent neural network (RNN), which is trained to estimate the fluorescence lifetime directly from raw timestamps without building histograms, to SPAD TCSPC systems, thereby drastically reducing transfer data volumes and hardware resource utilization, and enabling real-time FLI acquisition. We train two variants of the RNN on a synthetic dataset and compare the results to those obtained using center-of-mass method (CMM) and least squares fitting (LS fitting). Results demonstrate that two RNN variants, gated recurrent unit (GRU) and long short-term memory (LSTM), are comparable to CMM and LS fitting in terms of accuracy, while outperforming them in the presence of background noise by a large margin. To explore the ultimate limits of the approach, we derive the Cramer-Rao lower bound of the measurement, showing that RNN yields lifetime estimations with near-optimal precision. To demonstrate real-time operation, we build a FLI microscope based on an existing SPAD TCSPC system comprising a 32 x 32 SPAD sensor named Piccolo. Four quantized GRU cores, capable of processing up to 4 million photons per second, are deployed on the Xilinx Kintex-7 FPGA that controls the Piccolo. Powered by the GRU, the FLI setup can retrieve real-time fluorescence lifetime images at up to 10 frames per second. The proposed FLI system is promising and ideally suited for biomedical applications, including biological imaging, biomedical diagnostics, and fluorescence-assisted surgery, etc.

47 OTHER INSTRUMENTATION↗

Parallel k-means Clustering of Geospatial Data Sets Using Manycore CPU Architectures

The increasing availability of high-resolution geospatiotemporal data sets from sources such as observatory networks, remote sensing platforms, and computational Earth system models has opened new possibilities for knowledge discovery and mining of weather, climate, ecological, and other geoscientific data sets fused from disparate sources. Many of the standard tools used on individual workstations are impractical for the analysis and synthesis of data sets of this size; however, new algorithmic approaches that can effectively utilize the complex memory hierarchies and the extremely high levels of parallelism available in state-of-the-art high-performance computing platforms can enable such analysis. Here, we describe pKluster, an open-source tool we have developed for accelerated k-means clustering of geospatial and geospatiotemporal data, and discuss algorithmic modifications and code optimizations we have made to enable it to effectively use parallel machines based on novel CPU architectures—such as the Intel “Knights Landing” Xeon Phi and Skylake Xeon processors—with many cores and hardware threads, and employing significant single instruction, multiple data (SIMD) parallelism. We outline some applications of the code in ecology and climate science contexts and present a detailed discussion of the performance of the code for one such application, LiDAR-derived vertical vegetation structure classification.

Mills, Richard T↗

Scaling Irregular Applications through Data Aggregation and Software Multithreading

Bioinformatics, data analytics, semantic databases, knowledge discovery are emerging high performance application areas that exploit dynamic, linked data structures such as graphs, unbalanced trees or unstructured grids. These data structures usually are very large, requiring significantly more memory than available on single shared memory systems. Additionally, these data structures are difficult to partition on distributed memory systems. They also present poor spatial and temporal locality, thus generating unpredictable memory and network accesses. The Partitioned Global Address Space (PGAS) programming model seems suitable for these applications, because it allows using a shared memory abstraction across distributed-memory clusters. However, current PGAS languages and libraries are built to target regular remote data accesses and block transfers. Furthermore, they usually rely on the Single Program Multiple Data (SPMD) parallel control model, which is not well suited to the fine grained, dynamic and unbalanced parallelism of irregular applications. In this paper we present {\bf GMT} (Global Memory and Threading library), a custom runtime library that enables efficient execution of irregular applications on commodity clusters. GMT integrates a PGAS data substrate with simple fork/join parallelism and provides automatic load balancing on a per node basis. It implements multi-level aggregation and lightweight multithreading to maximize memory and network bandwidth with fine-grained data accesses and tolerate long data access latencies. A key innovation in the GMT runtime is its thread specialization (workers, helpers and communication threads) that realize the overall functionality. We compare our approach with other PGAS models, such as UPC running using GASNet, and hand-optimized MPI code on a set of typical large-scale irregular applications, demonstrating speedups of an order of magnitude.

Aggregation↗

PETSc/TAO Users Manual: Revision 3.18

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual (Rev. 3.19)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and opti mization that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than packages such as MATLAB or a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++, python, or Fortran and experience using a debugger such as gdb or lldb, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself. For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. There are several packages, built on PETSc, that may satisfy your needs without requiring directly using PETSc. We recommend reviewing these packages functionality before starting to code directly with PETSc. PETSc can be used to provide a “MPI parallel linear solver” in an otherwise sequential, or OpenMP parallel code. This approach cannot provide extremely large improvements in the application time by utilizing large numbers of MPI processes but can still improve the performance. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect true scalability to large numbers of MPI processes. See PCMPI for details on how to utilize the PETSc MPI linear solver server. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc has been supported for twenty-five years; see mailing list information on our website for information on contacting support.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual (Rev. 3.20)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

Development of a Machine-Learned Cruise Guide Indicator for Rotorcraft

This paper presents a machine-learned virtual cruise guide indicator (vCGI) for Chinook helicopters. Two temporal neural networks were trained and evaluated on measured data from 55 flight tests, one for the fore rotor and another for the aft rotor, to predict a vCGI value, which protects 23 components from fatigue damage during steady-state conditions. Three different classes of machine learning architectures were evaluated for prediction of the vCGI from time sequences: a temporal convolutional neural network with 1D dilated causal convolutions, a long short-term memory recurrent neural network, and an attention-based transformer architecture. The final average model accuracy on unseen flight data is currently greater than 93% for CGI values which could result in fatigue damage and 90% for normal operation CGI values. Model accuracy was improved through a series of advancements in:(1) selection of optimal training data using temporal collective variables and unsupervised learning, (2) dataset augmentation with maximum-entropy temporal collective variables, and (3) implementation of a mixture-of-experts classification- regression approach using an adversarial classification approach to assign maneuver labels. The results are presented for each advancement in model development along with lessons learned in training machine learning models on real- world, time-dependent rotorcraft data.

Boyer, Mathew↗

Effects of phase transformation on the microstructures and magnetostriction of Fe-Ga and Fe-Ga-Zn ferromagnetic shape memory alloys

The phase transformation and magnetostriction of bulk Fe{sub 73}Ga{sub 27} and Fe{sub 73}Ga{sub 18}Zn{sub 9} (at. %) ferromagnetic shape memory alloys (FSMs) were investigated by transmission electron microscopy (TEM), x-ray diffraction (XRD), and a magnetostrictive-meter setup. For the Fe{sub 73}Ga{sub 27} FSM alloy solution treated at 1100 °C for 4 h and quenched in ice brine, the antiphase boundary segments of the D0{sub 3} domain were observed in the A2 (disordered) matrix, and the Fe{sub 73}Ga{sub 27} FSM alloy had an optimal magnetostriction (λ{sub ‖}{sup s }= 71 × 10{sup −6} and λ{sub ⊥}{sup s }= −31 × 10{sup −6}). In Fe{sub 73}Ga{sub 27} FSM alloy as-quenched, aged at 700 °C for 24 h, and furnace cooled, D0{sub 3} nanoclusters underwent phase transformation to an intermediate tetragonal phase (i.e., L1{sub 0}-like martensite) via Bain distortion, and finally L1{sub 2} (Fe{sub 3}Ga) structures precipitated, as observed by TEM and XRD. The L1{sub 0}-like martensite and L1{sub 2} phases in the aged Fe{sub 73}Ga{sub 27} FSM alloy drastically decreased the magnetostriction from positive to negative (λ{sub ‖}{sup s }= −20 × 10{sup −6} and λ{sub ⊥}{sup s }= −8 × 10{sup −6}). However, in Fe{sub 73}Ga{sub 18}Zn{sub 9} FSM alloy as-quenched and aged, the phase transformation of D0{sub 3} to an intermediate tetragonal martensite phase and precipitation of L1{sub 2} structures were not found. The results indicate that the aged Fe{sub 73}Ga{sub 18}Zn{sub 9} FSM alloy maintained stable magnetostriction (λ{sub ‖}{sup s }= 36 × 10{sup −6} and λ{sub ⊥}{sup s }= −31 × 10{sup −6}). Adding Zn can improve the ferromagnetic shape memory effect of aged Fe{sub 73}Ga{sub 18}Zn{sub 9} alloy, which may be useful in application of the alloy in high temperature environments.

75 CONDENSED MATTER PHYSICS, SUPERCONDUCTIVITY AND↗

Optimized Quantum Phase Estimation for Simulating Electronic States in Various Energy Regimes

While quantum algorithms for simulation exhibit better asymptotic scaling than their classical counterparts, they currently cannot be implemented on real-world devices. Instead, chemists and computer scientists rely on costly classical simulations of these quantum algorithms. In particular, the quantum phase estimation (QPE) algorithm is among several approaches that have attracted much attention in recent years for its genuine quantum character. However, it is memory-intensive to simulate and intractable for moderate system sizes. Herein, this paper discusses the performance and applicability of QPESIM, a new simulation of the QPE algorithm designed to take advantage of modest computational resources. In particular, we demonstrate the versatility of QPESIM in simulating various electronic states by examining the ground and core-level states of H 2 O. For these states, we also discuss the effect of the active-space size on the quality of the calculated energies. For the high-energy core-level states, we demonstrate that new QPE simulations for active spaces defined by 15 active orbitals significantly reduce the errors in core-level excitation energies compared to earlier QPE simulations using smaller active spaces.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Accelerating Random Forest Classification on GPU and FPGA

Random Forests (RFs) are a commonly used machine learning method for classification and regression tasks spanning a variety of application domains, including bioinformatics, business analytics, and software optimization. While prior work has focused primarily on improving performance of the training of RFs, many applications, such as malware identification, cancer prediction, and banking fraud detection, require fast RF classification. In this work, we accelerate RF classification on GPU and FPGA. In order to provide efficient support for large datasets, we propose a hierarchical memory layout suitable to the GPU/FPGA memory hierarchy. We design three RF classification code variants based on that layout, and we investigate GPU- and FPGA-specific considerations for these kernels. Our experimental evaluation, performed on an Nvidia Xp GPU and on a Xilinx Alveo U250 FPGA accelerator card using publicly available datasets on the scale of millions of samples and tens of features, covers various aspects. First, we evaluate the performance benefits of our hierarchical data structure over the standard compressed sparse row (CSR) format. Second, we compare our GPU implementation with cuML, a machine learning library targeting Nvidia GPUs. Third, we explore the performance/accuracy tradeoff resulting from the use of different tree depths in the RF. Finally, we perform a comparative performance analysis of our GPU and FPGA implementations. Our evaluation shows that for high accuracy targets, our GPU implementation yields 5-9x speedup over CSR, and up to a 2x speedup over cuML.

FPGA, Xilinx FPGA, GPU, Random Forest classificati↗

Enhancing scalability of a matrix-free eigensolver for studying many-body localization

We propose several techniques to enhance the parallel scalability of a matrix-free eigensolver designed for studying many-body localization (MBL) of quantum spin chain models with nearest-neighbor interactions and on-site disorder. This type of problem is computationally challenging because the dimension of the associated Hamiltonian matrix grows exponentially with respect to the number of spins L, and we need to average over different realizations of the random disorder to obtain relevant statistical behavior. For each disorder realization, we need to compute eigenvalues from different regions of the spectrum and their corresponding eigenvectors. In previous work, the interior eigenstates for a single eigenvalue problem are computed via the shift-and-invert Lanczos algorithm. Due to the extremely high memory footprint of the LU factorizations, this technique is not well suited for large L’s. For example, we need thousands of compute nodes on modern high performance computing infrastructures to go beyond L = 24. The matrix-free approach does not suffer from this memory bottleneck, however, its scalability is limited by a computation and communication load imbalance. To reduce this imbalance and to significantly enhance the scalability of the matrix-free eigensolver, we reorder the matrix and leverage the consistent space runtime, CSPACER. We also show its efficiency in managing irregular communication patterns at scale compared to optimized MPI non-blocking two-sided and one-sided RMA implementation variants. This effort enables us to study MBL for spin chains with a larger number of spins. The efficiency and effectiveness of the proposed algorithm is demonstrated by computing eigenstates on a massively parallel many-core high performance computer.

METIS↗

Compact fiber-coupled narrowband two-mode squeezed light source

Quantum correlated states of light, such as squeezed states, are a fundamental resource for the development of quantum technologies, as they are needed for applications in quantum metrology, quantum computation, and quantum communications. It is thus critical to develop compact, efficient, and robust sources to generate such states. Here, we report on a compact, narrowband, fiber-coupled source of two-mode squeezed states of light at 795 nm based on four-wave mixing (FWM) in an 85 Rb atomic vapor. The source is designed in a small modular form factor, with two input fiber-coupled beams, the seed and pump beams required for the FWM, and two output fibers, one for each of the modes of the squeezed state. The system is optimized for low pump power (135 mW) to achieve a maximum intensity-difference squeezing of 4.4 dB after the output of fibers at an analysis frequency of 1 MHz. Furthermore, the narrowband nature of the source makes it ideal for atomic-based quantum sensing and quantum networking configurations that rely on atomic quantum memories. Such a source paves the way for a versatile and portable platform for applications in quantum information science.

Jain, Umang [University of Oklahoma, Norman, OK (U↗

Toward Performance Portable Programming for Heterogeneous System-on-Chips: Case Study with Qualcomm Snapdragon SoC

Future heterogeneous Domain-Specific System-on-Chips (DSSoC) will be extraordinarily complex in terms of processors, memory hierarchies, and interconnection networks.To manage this complexity, architects, system software designers, and application developers need programming technologies that are flexible, accurate, efficient, and productive. These technologies will need to be as independent of any one specific architecture as is practical, because the sheer dimensionality and scale of the complexity will not allow porting and optimizing applications foreach given DSSoC. To address these issues, we are developing Cosmic Castle, a performance portable programming toolchain for streaming applications on heterogeneous architectures. The primary focus of Cosmic Castle is on enabling efficient and performant code generation through the smart compiler and intelligent runtime system. This paper presents the preliminary evaluation of our ongoing work toward Cosmic Castle. Specifically, we detail our code porting efforts and evaluate various benchmarks on the Qualcomm Snapdragon SoC using tools developed through Cosmic Castle.

Cabrera, Anthony↗

Quantitative proton radiography and shadowgraphy for arbitrary intensities

Charged-particle radiography and shadowgraphy data can be directly inverted to obtain a line-integrated transverse Lorentz force or a line-integrated transverse refractive index gradient if intensity modulations due to scattering and absorption are negligible, and angular deflections are small. We develop a new direct-inversion algorithm based on plasma physics and compare it to a new Monge–Ampère code and an existing power diagram code. The measured or source intensity is represented by electrons subject to drag, and the other intensity by fixed ions. The decrease in kinetic plus electrostatic energy determines convergence. The displacement of the electrons from their initial to their equilibrium positions determines the line-integrated force or refractive index gradient. We have implemented two approaches: PIC (particle in cell) and Lagrangian fluid, in 1-D and 2-D. The PIC code works for arbitrary intensities, can work efficiently in parallel, and can make use of existing codes. The Lagrangian code requires less memory and is faster than the PIC code without massively parallel processing, but fails in 2-D for large intensity modulations. The Monge–Ampère code is by far the fastest in 2-D, without massively parallel processing, but fails for intensities with large voids, high contrast ratios and large deflections across the boundaries, and could not obtain the degree of convergence possible with the PIC code. As a result, the power diagram code was by far the slowest and most memory intensive, and failed for large peaks in the measured intensity.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

A High-Throughput Solver for Marginalized Graph Kernels on GPU

Here, we present the design and optimization of a solver for efficient and high-throughput computation of the marginalized graph kernel on General Purpose GPUs. The graph kernel is computed using the conjugate gradient method to solve a generalized Laplacian of the tensor product between a pair of graphs. To cope with the large gap between the instruction throughput and the memory bandwidth of the GPUs, our solver forms the graph tensor product on-the-fly without storing it in memory. This is achieved by using threads in a warp cooperatively to stream the adjacency and edge label matrices of individual graphs by small square matrix blocks called tiles, which are then staged in registers and the shared memory for later reuse. Warps across a thread block can further share tiles via the shared memory to increase data reuse. We exploit the sparsity of the graphs hierarchically by storing only non-empty tiles using a coordinate format and nonzero elements within each tile using bitmaps. We propose a new partition-based reordering algorithm for aggregating nonzero elements of the graphs into fewer but denser tiles to further exploit sparsity. We carry out extensive theoretical analyses on the graph tensor product primitives for tiles of various density and evaluate their performance on synthetic and real-world datasets. Our solver delivers three to four orders of magnitude speedup over existing CPU-based solvers such as GraKeL and GraphKernels. The capability of the solver enables kernel-based learning tasks at unprecedented scales.

97 MATHEMATICS AND COMPUTING↗