Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “code 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 127 records · Page 7

Data Sciences Summer Institute Topology Optimization

DSSI_TOPOPT is a 2D topology optimization code that designs stiff structures made of a single linear elastic material and void space. The code generates a finite element mesh of a rectangular design domain on which the user specifies displacement and load boundary conditions. The code iteratively designs a structure that minimizes the compliance (maximizes the stiffness) of the structure under the given loading, subject to an upper bound on the amount of material used. Depending on user options, the code can evaluate the performance of a user-designed structure, or create a design from scratch. Output includes the finite element mesh, design, and visualizations of the design.

Watts, Seth↗

Experiences evaluating functionality and performance of IBM Power8+ systems

InpreparationforSummit,OakRidgeNationalLaboratory’s next generation supercomputer, two IBM Power-based systems were deployed in late 2016 at the Oak Ridge Leadership Computing Facility (OLCF). This paper presents a detailed description of the acceptance of the first IBM Power-based early access systems installed at the OLCF. The two systems, Summitdev and Tundra, contain IBM Power8+ processors with NVIDIA Pascal GPUs and were acquired to provide researchers with a platform to optimize codes for the Power architecture. In addition, this paper presents early functional and performance results obtained on Summitdev with the latest software stack available.

Melesse Vergara, Veronica↗

Scalable Yet Rigorous Floating-Point Error Analysis

Automated techniques for rigorous floating-point round-off error analysis are a prerequisite to placing important activities in HPC such as precision allocation, verification and code optimization on a formal footing. Yet existing techniques cannot provide tight bounds for expressions beyond a few dozen operators; barely enough for HPC. In this work, we offer an approach embedded in a new tool called SATIRE that scales error analysis by four orders of magnitude compared to today’s best-of-class tools. We explain how three key ideas underlying SATIRE help it attain such scale: path strength reduction, bound optimization and abstraction. SATIRE provides tight bounds and rigorous guarantees on significantly larger expressions with well over a hundred thousand operators, covering important examples including FFT, matrix multiplication and PDE stencils.

Das, Arnab↗

Performance of supercritical CO{sub 2} Brayton cycle with additive gases at varying critical points for SFR application

The supercritical carbon dioxide Brayton cycle (S-CO{sub 2} cycle) has received attention as alternative to the energy conversion system for a Sodium-cooled Fast Reactor (SFR). The high cycle efficiency of S-CO{sub 2} cycle is attributed to significantly reduced compressor work. This is because the compressor operates like a pump in the vicinity of CO{sub 2} critical point. To make use of this feature, the minimum cycle operating range of S-CO{sub 2} cycle, which is the main compressor inlet condition, should be located close to the critical point of CO{sub 2}. This translated into that the critical point of CO{sub 2} is the limitation of the lowest cycle condition of S-CO{sub 2} cycles. To increase the flexibility and broaden the applicability of the cycle, changing the critical point of CO{sub 2} by mixing additive gases could be adopted. An increase in the efficiency of the S-CO{sub 2} cycle could be achieved by decreasing critical point of CO{sub 2}. In addition, increasing critical point of CO{sub 2} could be utilized to obtain improved cycle performances at ascending heat sink temperature of hot arid areas. Due to the rapid fluctuations of thermo-physical properties of gas mixtures near the critical point, an in-house cycle analysis code coupled to NIST property database was developed. Several gases were selected as potential additives through the screening process for thermal stability and chemical interaction with sodium. By using the developed cycle code, optimized cycles of each gas mixture were compared with the reference case of S-CO{sub 2} cycle. For decreased critical temperatures, CO{sub 2}-Xe and CO{sub 2}-Kr showed an increase in the total cycle efficiency. At increasing critical temperatures, the performance of CO{sub 2}-H{sub 2}S and CO{sub 2}-cyclohexane is superior to S-CO{sub 2}cycle when the compressor inlet temperature is above the critical temperature of CO{sub 2}. (authors)

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Static versioning in the polyhedral model

An approach is presented to enhancing the optimization process in a polyhedral compiler by introducing compile-time versioning, i.e., the production of several versions of optimized code under varying assumptions on its run-time parameters. We illustrate this process by enabling versioning in the polyhedral processor placement pass. We propose an efficient code generation method and validate that versioning can be useful in a polyhedral compiler by performing benchmarking on a small set of deep learning layers defined for dynamically-sized tensors.

Meister, Benoit J.↗

Optimizing fusion PIC code performance at scale on Cori Phase 2

In this paper we present the results of optimizing the performance of the gyrokinetic full-f fusion PIC code XGC1 on the Cori Phase Two Knights Landing system. The code has undergone substantial development to enable the use of vector instructions in its most expensive kernels within the NERSC Exascale Science Applications Program. We study the single-node performance of the code on an absolute scale using the roofline methodology to guide optimization efforts. We have obtained 2x speedups in single node performance due to enabling vectorization and performing memory layout optimizations. On multiple nodes, the code is shown to scale well up to 4000 nodes, near half the size of the machine. We discuss some communication bottlenecks that were identified and resolved during the work.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Optimization of the CMDFT Code

This report outlines the optimization of the CMDFT code by Xiaoguang Zhang during June-July 2006. The overall improvement in speed is nearly 40%. Possible further optimizatins are also discussed.

99 GENERAL AND MISCELLANEOUS↗

Matlab Code for Multiscale Topology Optimization

This Matlab script implements a simple topology optimization algorithm that minimizes the compliance of a structure within a 3D prismatic design domain. It uses a simple linear elastic finite element solver to solve the equilibrium equations, and the optimality criterion (00) method to update the design iteratively. This functionality is identical to, or the simplest possible extension from 2D to 3D of, a 99-line Matlab code released in 2001 in a journal article by Sigmund. What is new in this code is our implementation of simple surrogate models for several truss micro-architectures, which converts this code to a multiscale design tool, whereas the original code is single-scale. The development of these surrogate models and their implementation is described in a journal article we intend to submit. We plan to include the full source code in an Appendix in this paper. The code’s primary function is as a pedagogical tool rather than as a finished software product. Sigmund’s 2001 paper describes the implementation line-by-line. We are including this updated version of the code to allow the reader to understand exactly what changes must be made to a “standard” topology optimization code to implement the surrogate models and thus multiscale design optimization.

Watts, Seth↗

Optimization and Diagnostics Code for Technological Processes: Radiochemical Production Simulator

A software-hardware complex with the possibility of simulating the functioning of technological processes with APCS in real and accelerated time is being developed as part of Project Breakthrough in order to determine the optimal operating regimes of the technological processes of the units in a closed nuclear fuel cycle. It makes possible monitoring and control functions and the visualization and archiving of the results of simulation, which makes it possible at the development stages of technologies to evaluate the degree of adherence to the requirements of the technological equipment, regulating organs and final-control mechanisms, measurement apparatus, and monitoring channels, to analyze the control and diagnostics algorithms, blocking and protection, and to make when necessary changes in the design being developed. The developed software-hardware complex is a stimulator that will make it possible not only to investigate process schemes with their corresponding algorithms but also to develop training complexes for the training and certification of service personnel.

42 ENGINEERING↗

Using Verified Lifting to Optimize Legacy Stencil Codes (Final Project Report)

This project investigated new techniques for compiling stencil and stencil-like computations. Stencils computations are commonly found in applications such as image processing, physical simulations, image processing, and machine learning. In recent years, many high-performance domain-specific languages (DSLs) have been proposed to optimize stencil computations. To leverage such DSLs, however, existing codes often need to be rewritten. Such rewriting is manual, labor intensive, and error-prone. To alleviate such issues, this project investigated the application of program synthesis and artificial learning techniques to enable stencil computations to automatically leverage new high-performance DSLs. Rather than constructing syntax driven rules, verified lifting uses program synthesis to search for a target code fragment to compile the given input code into. In addition, it also searches for a proof that validates how the found target code fragment preserves the semantics of the original input. Thus, the target code fragment is guaranteed to be semantically equivalent to the input.

97 MATHEMATICS AND COMPUTING↗

Optimal Multicarrier Phase-Coded Waveform Design for Detection of Extended Targets

We design a parametric multicarrier phase-coded (MCPC) waveform that achieves the optimal performance in detecting an extended target in the presence of signal-dependent interference. Traditional waveform design techniques provide only the optimal energy spectral density of the transmit waveform and suffer a performance loss in the synthesis process of the time-domain signal. Therefore, we opt for directly designing an MCPC waveform in terms of its time-frequency codes to obtain the optimal detection performance. First, we describe the modeling assumptions considering an extended target buried within the signal-dependent clutter with known power spectral density, and deduce the performance characteristics of the optimal detector. Then, considering an MCPC signal transmission, we express the detection characteristics in terms of the phase-codes of the MCPC waveform and propose to optimally design the MCPC signal by maximizing the detection probability. Our numerical results demonstrate that the designed MCPC signal attains the optimal detection performance and requires a lesser computational time than the other parametric waveform design approach.

Sen, Satyabrata↗

Stochastic optimization of GeantV code by use of genetic algorithms

GeantV is a complex system based on the interaction of different modules needed for detector simulation, which include transport of particles in fields, physics models simulating their interactions with matter and a geometrical modeler library for describing the detector and locating the particles and computing the path length to the current volume boundary. The GeantV project is recasting the classical simulation approach to get maximum benefit from SIMD/MIMD computational architectures and highly massive parallel systems. This involves finding the appropriate balance between several aspects influencing computational performance (floating-point performance, usage of off-chip memory bandwidth, specification of cache hierarchy, etc.) and handling a large number of program parameters that have to be optimized to achieve the best simulation throughput. This optimization task can be treated as a black-box optimization problem, which requires searching the optimum set of parameters using only point-wise function evaluations. Here, the goal of this study is to provide a mechanism for optimizing complex systems (high energy physics particle transport simulations) with the help of genetic algorithms and evolution strategies as tuning procedures for massive parallel simulations. One of the described approaches is based on introducing a specific multivariate analysis operator that could be used in case of resource expensive or time consuming evaluations of fitness functions, in order to speed-up the convergence of the black-box optimization problem.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

Global Simulation of Plasma Microturbulence at the Petascale & Beyond: Optimizing the GTC Code for Blue Gene/Q (ALCF-2 Early Science Program Technical Report)

Figure 1 shows, schematically, the tokamak device, whose intent is to magnetically confine a high-temperature plasma and produce energy through nuclear fusion. The confined plasma, shown in pink, is toroidal in shape. For several decades now, scientists have been studying and improving these devices, working toward a successful fusion ignition—creating a burning plasma—and sustaining it to generate more power than it took to create it. The next big experimental step will be the International Thermonuclear Experimental Reactor, a twenty billion dollar burning plasma device under construction in France, involving the partnership of seven governments. The human in Figure 2 illustrates the scale of ITER. The magnetic field in the tokamak confines the plasma—ions, electrons, and their heat and momentum. Various kinds of instabilities in the plasma work against that confinement. Turbulent fluctuations can cause transport of particles and energy across the magnetic field lines, toward the outside of the plasma, where it is lost. Loss of plasma and energy, of course, works against confinement and successful fusion. This microturbulence is something the fusion community needs to understand and control. In past and present tokamaks, measurements have shown that the transport of energy and particles caused by microturbulence depends on the size of the tokamak—larger means more transport. This is Bohm scaling. However, theoretical arguments predict that beyond a certain size, which ITER will be beyond, the size dependence goes away, leading to relatively smaller turbulent losses and thus better confinement. This is GyroBohm scaling. The key target of this ESP project is to simulate microturbulent transport for devices of different sizes up through ITER size, and validate and understand GyroBohm scaling.

Tang, William M.↗

gRASPA

GPU Monte Carlo Simulation Code with a taste of RASPA We present enhancements in Monte Carlo simulation speed and functionality within an open-source code, gRASPA, which uses graphical processing units (GPUs) to achieve significant performance improvements compared to serial, CPU implementations of Monte Carlo. The code supports a wide range of Monte Carlo simulations, including canonical ensemble (NVT), grand canonical, NVT Gibbs, Widom test particle insertions, and continuous-fractional component Monte Carlo. Implementation of grand canonical transition matrix Monte Carlo (GC-TMMC) and a novel feature to allow different moves for the different components of metal-organic framework (MOF) structures exemplify the capabilities of gRASPA for precise free energy calculations and enhanced adsorption studies, respectively. The introduction of a High-Throughput Computing (HTC) mode permits many Monte Carlo simulations on a single GPU device for accelerated materials discovery. The code can incorporate machine learning (ML) potentials. The open-source nature of gRASPA promotes reproducibility and openness in science, and users may add features to the code and optimize it for their own purposes. The code is written in CUDA/C++ and SYCL/C++ to support different GPU vendors. The gRASPA code is publicly available at https://github.com/snurr-group/gRASPA.

Li, Zhao [Purdue/Northwestern/Notre Dame Universit↗

Finding inputs that trigger floating-point exceptions in heterogeneous computing via Bayesian optimization

Testing code for floating-point exceptions is crucial as exceptions can quickly propagate and produce unreliable numerical answers. The state-of-the-art to test for floating-point exceptions in heterogeneous systems is quite limited and solutions require the application’s source code, which precludes their use in accelerated libraries where the source is not publicly available. We present an approach to find inputs that trigger floating-point exceptions in black-box CPU or GPU functions, i.e., functions where the source code and information about input bounds are unavailable. Our approach is the first to use Bayesian optimization (BO) to identify such inputs and uses novel strategies to overcome the challenges that arise in applying BO to this problem. Here, we implement our approach in the XSCOPE framework and demonstrate it on 58 functions from the CUDA Math Library and 81 functions from the Intel Math Library. XSCOPE is able to identify inputs that trigger exceptions in about 73% of the tested functions.

97 MATHEMATICS AND COMPUTING↗

Group Structure Optimization Using the PyGroup Code

Group constants are used as coefficients in the energy domain discretized Linear Boltzmann Equation (LBE), in which the Continuous-Energy (CE) fluxes are also integrated over energy bins and transformed into group fluxes. This procedure, based on the Multi-Group (MG) theory, is widely applied in radiation transport and diffusion simulations Careful preparation of MG cross section data, or group constants, is thus a prerequisite for success in acquiring high-fidelity LBE solutions. Generation of MG cross section data itself is a complicated multi-step task, since group constants are indispensably coupled with the solution of the LBE, i.e. the flux spectrum in the problem to be solved. Theoretically, a MG cross section library is only valid for the problem that it is built upon. Nevertheless, in practice MG cross section libraries are prepared for similar type of problems, such as thermal reactors, fast reactors, etc., to facilitate the neutronic simulations. Generally, CE point-wise cross section data set, generated by both theoretical models and experimental data, is first converted to Fine-Group (FG) libraries using a pre-defined or precalculated flux spectra, then, Broad-Group (BG) libraries are collapsed from the fine-group libraries using problem-dependent flux spectra. Proper treatments of energy and spatial self-shielding and resonance cross section are required in the CE-to-MG converting process Previously, we have developed a computer code, YGROUP, for fine-to-broad group cross section collapsing. To maintain high accuracy of the resulting BG libraries, YGROUP provides users several options on collapsing strategies and weighting schemes for group binning and evaluation of BG cross section data in users' specific problems.. An approach based on Particle Swarm Optimization was applied to automatically determine the optimal group structure. We also developed a hybrid weighting scheme to further improve BG library performance for Special Nuclear Materials (SNM) detection applications. In this work, a new computer code, PyGroup, has been developed to implement the PSO approach with an improved simulation-driven fitness function design that includes both response and forward/adjoint flux errors. Together with YGROUP, and deterministic transport code TITAN/PENMSHXP, the PyGroup code package is tested on a Dual Range Coincident Counter (DRCC) model. In this paper, we demonstrated the capability of the PyGroup code for group structure optimization using the DRCC detector model. In the future, an iteration scheme can be implemented to determine the number of broad groups based on a user-defined tolerance. we will also apply PyGroup to more complicated reactor models, and investigate physics-based fitness function designs to further reduce computational cost. (authors)

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Contraction Optimizer v1.0

Code to perform operation count minimization for the evaluation of a large number of tensor contractions. A possible application is the efficient evaluation of correlation functions in lattice QCD calculations, where a reduction of computational complexity by an order of magnitude is achieved

Walker-Loud, Andre↗