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 181 records · Page 10

Enhancing quantum memory lifetime with measurement-free local error correction and reinforcement learning

Reliable quantum computation requires systematic identification and correction of errors that occur and accumulate in quantum hardware. To diagnose and correct such errors, standard quantum error-correcting protocols utilize global error information across the system obtained by mid-circuit readout of ancillary qubits. We investigate circuit-level error-correcting protocols that are measurement-free and based on local error information. Such a local error correction (LEC) circuit consists of faulty multi-qubit gates to perform both syndrome extraction and ancilla-controlled error removal. We develop and implement a reinforcement learning framework that takes a fixed set of faulty gates as inputs and outputs an optimized LEC circuit. To evaluate this approach, we quantitatively characterize an extension of logical qubit lifetime by a noisy LEC circuit. For the two-dimensional (2D) classical Ising model and four-dimensional toric code, our optimized LEC circuit performs better at extending a memory lifetime compared with a conventional LEC circuit based on Toom's rule in a subthreshold gate error regime. We further show that such circuits can be used to reduce the rate of mid-circuit readouts to preserve a 2D toric code memory. Lastly, we discuss the application of the LEC protocol on dissipative preparation of quantum states with topological phases.

74 ATOMIC AND MOLECULAR PHYSICS↗

Computational Tools and Algorithms for Designing Customized Synthetic Genes

Advances in DNA synthesis have enabled the construction of artificial genes, gene circuits, and genomes of bacterial scale. Freedom in de novo design of synthetic constructs provides significant power in studying the impact of mutations in sequence features, and verifying hypotheses on the functional information that is encoded in nucleic and amino acids. To aid this goal, a large number of software tools of variable sophistication have been implemented, enabling the design of synthetic genes for sequence optimization based on rationally defined properties. The first generation of tools dealt predominantly with singular objectives such as codon usage optimization and unique restriction site incorporation. Recent years have seen the emergence of sequence design tools that aim to evolve sequences toward combinations of objectives. The design of optimal protein-coding sequences adhering to multiple objectives is computationally hard, and most tools rely on heuristics to sample the vast sequence design space. In this review, we study some of the algorithmic issues behind gene optimization and the approaches that different tools have adopted to redesign genes and optimize desired coding features. We utilize test cases to demonstrate the efficiency of each approach, as well as identify their strengths and limitations.

60 APPLIED LIFE SCIENCES↗

An MLIR-based Compiler Flow for System-Level Design and Hardware Acceleration

The generation of custom hardware accelerators for applications implemented within high-level productive programming frameworks requires considerable manual effort. To automate this process, we introduce \sodaopt, a compiler tool that extends the MLIR infrastructure. \sodaopt automatically searches, outlines, tiles, and pre-optimizes relevant code regions to generate high-quality accelerators through high-level synthesis. \sodaopt can support any high-level programming framework and domain-specific language that interface with the MLIR infrastructure. By leveraging MLIR, \sodaopt solves compiler optimization problems with specialized abstractions. Backend synthesis tools connect to \sodaopt through progressive intermediate representation lowerings. \sodaopt interfaces to a design space exploration engine to identify the combination of compiler optimization passes and options that provides high-performance generated designs for different backends and targets. We demonstrate the practical applicability of the compilation flow by exploring the automatic generation of accelerators for deep neural networks operators outlined at arbitrary granularity and by combining outlining with tiling on large convolution layers. Experimental results with kernels from the PolyBench benchmark show that \sodaopt high-level optimizations improve execution delays of synthesized accelerators up to 60x. We also show that for the selected kernels, our solution outperforms the current of state-of-the art in more than 70% of the benchmarks and provides better average speedup in 55% of them.

Bohm Agostini, Nicolas↗

Static Graphs for Coding Productivity in OpenACC

The main contribution of this work is to increase the coding productivity for GPU programming by using the concept of Static Graphs. To do so, we have combined the new CUDA Graph API with the OpenACC programming model. We use as test cases a well-known and widely used problems in HPC and AI: the Particle Swarm Optimization. We complement the OpenACC functionality with the use of CUDA Graph, achieving accelerations of more than one order of magnitude, and a performance very close to a reference and optimized CUDA code. Finally, we propose a new specification to incorporate the concept of Static Graphs into the OpenACC specification.

Toledo, Leonel↗

Boron-lined parallel-plate Collar

This report presents boron-lined parallel plate technology features, experimental benchmarking of initial MCNP model, and parallel-plate UNCL collar optimization.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

COMPOSE-HPC: A Transformational Approach to Exascale

The goal of the COMPOSE-HPC project is to 'democratize' tools for automatic transformation of program source code so that it becomes tractable for the developers of scientific applications to create and use their own transformations reliably and safely. This paper describes our approach to this challenge, the creation of the KNOT tool chain, which includes tools for the creation of annotation languages to control the transformations (PAUL), to perform the transformations (ROTE), and optimization and code generation (BRAID), which can be used individually and in combination. We also provide examples of current and future uses of the KNOT tools, which include transforming code to use different programming models and environments, providing tests that can be used to detect errors in software or its execution, as well as composition of software written in different programming languages, or with different threading patterns.

99 GENERAL AND MISCELLANEOUS↗

The Secret Life of Quarks, Final Report for the University of North Carolina at Chapel Hill

This final report summarizes activities and results at the University of North Carolina as part of the the SciDAC-2 Project The Secret Life of Quarks: National Computational Infrastructure for Lattice Quantum Chromodynamics. The overall objective of the project is to construct the software needed to study quantum chromo- dynamics (QCD), the theory of the strong interactions of subatomic physics, and similar strongly coupled gauge theories anticipated to be of importance in the LHC era. It built upon the successful efforts of the SciDAC-1 project National Computational Infrastructure for Lattice Gauge Theory, in which a QCD Applications Programming Interface (QCD API) was developed that enables lat- tice gauge theorists to make effective use of a wide variety of massively parallel computers. In the SciDAC-2 project, optimized versions of the QCD API were being created for the IBM Blue- Gene/L (BG/L) and BlueGene/P (BG/P), the Cray XT3/XT4 and its successors, and clusters based on multi-core processors and Infiniband communications networks. The QCD API is being used to enhance the performance of the major QCD community codes and to create new applications. Software libraries of physics tools have been expanded to contain sharable building blocks for inclusion in application codes, performance analysis and visualization tools, and software for au- tomation of physics work flow. New software tools were designed for managing the large data sets generated in lattice QCD simulations, and for sharing them through the International Lattice Data Grid consortium. As part of the overall project, researchers at UNC were funded through ASCR to work in three general areas. The main thrust has been performance instrumentation and analysis in support of the SciDAC QCD code base as it evolved and as it moved to new computation platforms. In support of the performance activities, performance data was to be collected in a database for the purpose of broader analysis. Third, the UNC work was done at RENCI (Renaissance Computing Institute), which has extensive expertise and facilities for scientific data visualization, so we acted in an ongoing consulting and support role in that area.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

Optimizing Excited-State Electronic-Structure Codes for Intel Knights Landing: A Case Study on the BerkeleyGW Software

We profile and optimize calculations performed with the BerkeleyGW code on the Xeon-Phi architecture. BerkeleyGW depends both on hand-tuned critical kernels as well as on BLAS and FFT libraries. We describe the optimization process and performance improvements achieved. We discuss a layered parallelization strategy to take advantage of vector, thread and node-level parallelism. We discuss locality changes (including the consequence of the lack of L3 cache) and effective use of the on-package high-bandwidth memory. We show preliminary results on Knights-Landing including a roofline study of code performance before and after a number of optimizations. We find that the GW method is particularly well-suited for many-core architectures due to the ability to exploit a large amount of parallelism over plane-wave components, band-pairs, and frequencies.

97 MATHEMATICS AND COMPUTING↗

Nonlinear Optimization in "Synchrotron Radiation Workshop" Code

"Synchrotron Radiation Workshop" (SRW) is an open source physical optics computer code for calculation of detailed characteristics of Synchrotron Radiation (SR) generated by relativistic electrons in magnetic fields of arbitrary configuration. SRW also supports high-accuracy simulations of fully- and partially-coherent radiation propagation through X-ray optical beamlines, facilitated by so-called “Virtual Beamline” module. In this present tech note, we discuss the nonlinear optimization features of SRW with emphasis on the optimization library in SRW. This optimization library not only can be used to optimize the simulation beamline in SRW, it also can be integrated with real beamline operations and optimize the parameters based on real measurements. We also show some demos of the optimization library recently developed in SRW.

36 MATERIALS SCIENCE↗

SU-F-T-193: Evaluation of a GPU-Based Fast Monte Carlo Code for Proton Therapy Biological Optimization

Purpose: Biological treatment plan optimization is of great interest for proton therapy. It requires extensive Monte Carlo (MC) simulations to compute physical dose and biological quantities. Recently, a gPMC package was developed for rapid MC dose calculations on a GPU platform. This work investigated its suitability for proton therapy biological optimization in terms of accuracy and efficiency. Methods: We performed simulations of a proton pencil beam with energies of 75, 150 and 225 MeV in a homogeneous water phantom using gPMC and FLUKA. Physical dose and energy spectra for each ion type on the central beam axis were scored. Relative Biological Effectiveness (RBE) was calculated using repair-misrepair-fixation model. Microdosimetry calculations were performed using Monte Carlo Damage Simulation (MCDS). Results: Ranges computed by the two codes agreed within 1 mm. Physical dose difference was less than 2.5 % at the Bragg peak. RBE-weighted dose agreed within 5 % at the Bragg peak. Differences in microdosimetric quantities such as dose average lineal energy transfer and specific energy were < 10%. The simulation time per source particle with FLUKA was 0.0018 sec, while gPMC was ∼ 600 times faster. Conclusion: Physical dose computed by FLUKA and gPMC were in a good agreement. The RBE differences along the central axis were small, and RBE-weighted dose difference was found to be acceptable. The combined accuracy and efficiency makes gPMC suitable for proton therapy biological optimization.

60 APPLIED LIFE SCIENCES↗

A Linac Simulation Code for Macro-Particles Tracking and Steering Algorithm Implementation

In this paper, a linac simulation code written in Fortran90 is presented and several simulation examples are given. This code is optimized to implement linac alignment and steering algorithms, and evaluate the accelerator errors such as RF phase and acceleration gradient, quadrupole and BPM misalignment. It can track a single particle or a bunch of particles through normal linear accelerator elements such as quadrupole, RF cavity, dipole corrector and drift space. One-to-one steering algorithm and a global alignment (steering) algorithm are implemented in this code.

43 PARTICLE ACCELERATORS↗

A Linac Simulation Code for Macro-particles Tracking and Steering Algorithm Implementation

n this paper, a linac simulation code written in Fortran90 is presented and several simu lation examples are given. This code is optimized to implement linac alignment and steering algorithms, and evaluate the accelerator errors such as RF phase and acceleration gradient, quadrupole and BPM misalignment. It can track a single particle or a bunch of particles through normal linear accelerator elements such as quadrupole, RF cavity, dipole corrector and drift space. One-to-one steering algorithm and a global alignment (steering) algorithm are implemented in this code.

Accelerators↗

Gregarious Data Re-structuring in a Many Core Architecture

this paper, we have developed a new methodology that takes in consideration the access patterns from a single parallel actor (e.g. a thread), as well as, the access patterns of “grouped” parallel actors that share a resource (e.g. a distributed Level 3 cache). We start with a hierarchical tile code for our target machine and apply a series of transformations at the tile level to improve data residence in a given memory hierarchy level. The contribution of this paper includes (a) collaborative data restructuring for group reuse and (b) low overhead transformation technique to improve access pattern and bring closely connected data elements together. Preliminary results in a many core architecture, Tilera TileGX, shows promising improvements over optimized OpenMP code (up to 31% increase in GFLOPS) and over our own previous work on fine grained runtimes (up to 16%) for selected kernels

data restructuring↗

Adaptive finite differencing in high accuracy electronic structure calculations

Abstract A multi-order Adaptive Finite Differencing (AFD) method is developed for the kinetic energy operator in real-space, grid-based electronic structure codes. It uses atomic pseudo orbitals produced by the corresponding pseudopotential codes to optimize the standard finite difference (SFD) operators for improved precision. Results are presented for a variety of test systems and Bravais lattice types, including the well-known Δ test for 71 elements in the periodic table, the Mott insulator NiO, and borax decahydrate, which contains covalent, ionic, and hydrogen bonds. The tests show that an 8th-order AFD operator leads to the same average Δ value as that achieved by plane-wave codes and is typically far more accurate and has a much lower computational cost than a 12th-order SFD operator. The scalability of real-space electronic calculations is demonstrated for a 2016-atom NiO cell, for which the computational time decreases nearly linearly when scaled from 18 to 144 CPU-GPU nodes.

Briggs, E. L. (ORCID:0000000343983492)↗

A Framework for the Analysis of Compiler Optimizations

Compilers transform program source code to machine executable code. During this transformation, they perform a number of compiler optimizations to improve the performance of the generated executable code. Importantly, applying those optimizations depends on the source code structure, such as the parallel programming model used to parallelize an algorithm. Often, implementations of the same algorithm with different programming models have vastly different performance because the compiler optimized them differently. We create FAROS, a framework to structure and automate the analysis of compiler optimizations on programs. FAROS automates the building process, execution profiling, and analysis of compiler optimization of programs, through a configuration interface. It outputs compiler optimization reports to show which optimizations applied to which line of source code, leveraging compilation remarks output by the compiler. Also, FAROS supports benchmarking performance of different program versions by collecting execution time results. In this first release of FAROS, we provide a configuration file to analyze compiler optimization differences for sequential vs OpenMP compilation, including 38 programs consisting of HPC proxy/mini/large applications, and NAS and Rodina kernels for analysis.

Georgakoudis, Giorgis↗

Portability for GPU-accelerated molecular docking applications for cloud and HPC: can portable compiler directives provide performance across all platforms?

High-throughput structure-based screening of drug-like molecules has become a common tool in biomedical research. Recently, acceleration with graphics processing units (GPUs) has provided a large performance boost for molecular docking programs. Both cloud and high-performance computing (HPC) resources have been used for large screens with molecular docking programs; while NVIDIA GPUs have dominated cloud and HPC resources, new vendors such as AMD and Intel are now entering the field, creating the problem of software portability across different GPUs. Ideally, software productivity could be maximized with portable programming models that are able to maintain high performance across architectures. While in many cases compiler directives have been used as an easy way to offload parallel regions of a CPU-based program to a GPU accelerator, they may also be an attractive programming model for providing portability across different GPU vendors, in which case the porting process may proceed in the reverse direction: from low-level, architecture-specific code to higher-level directive-based abstractions. MiniMDock is a new mini-application (miniapp) designed to capture the essential computational kernels found in molecular docking calculations, such as are used in phar-maceutical drug discovery efforts, in order to test different solutions for porting across GPU architectures. Here we extend MiniMDock to GPU offloading with OpenMP directives, and compare to performance of kernels using CUDA and HIP on NVIDIA and AMD GPUs, respectively, as well as across different compilers, exploring performance bottlenecks. We document this reverse-porting process, from highly optimized device code to a higher-level version using directives, compare code structure, and describe barriers that were overcome in this effort.

Thavappiragasam, Mathialakan↗

An optimized model and test of the China's first high temperature parabolic trough solar receiver

The vacuum solar receiver is the key component of a parabolic trough solar plant, which plays a prominent role in the gross system efficiency. Recently, China's first high temperature vacuum receiver, Sanle-3 HCE, has been developed and produced by Southeast University and Sanle Electronic Group. Before being utilized in China's first parabolic trough solar plant, accurately estimating the thermal properties of this new receiver is important. This paper first establishes and optimizes a 1-D theoretical model at Matlab program to compute the receiver's major heat loss through glass envelope, and then systematically analyzes the major influence factors of heat loss. With the laboratorial steady state test stand, the heat losses of both good vacuum and non-vacuum Sanle-3 receivers were surveyed. Comparison shows the original 1-D model agrees with the ends covered test while remarkably deviating from end exposed test. For the purpose of identifying the influence of receiver's end to total heat loss, an additional 3-D model is built by CFD software to further investigate the different heat transfer processes of receiver's end components. The 3-D end model is verified by heating power and IR temperature distribution images in the test. Combining the optimized 1-D model with the new 3-D end model, the comparison with test data shows a good accordance. At the same time the heat loss curve and emittance curve of this new receiver are given and compared with those of several other existing receivers as references. (author)

14 SOLAR ENERGY↗

SU-E-T-786: Utility of Gold Wires to Optimize Intensity Modulation Capacity of a Novel Directional Modulated Brachytherapy Tandem Applicator for Image Guided Cervical Cancer Brachytherapy

Purpose: To evaluate the impact of using gold wires to differentially fill various channels on plan quality compared with conventional T&R applicator, inside a novel directional modulated brachytherapy (DMBT) tandem applicator for cervical cancer brachytherapy. Materials and Methods: The novel DMBT tandem applicator has a 5.4-mm diameter MR-compatible tungsten alloy enclosed in a 0.3-mm thick plastic tubing that wraps around the tandem. To modulate the radiation intensity, 6 symmetric peripheral holes of 1.3-mm diameter are grooved along the tungsten alloy rod. These grooved holes are differentially filled with gold wires to generate various degrees of directional beams. For example, three different fill patterns of 1) all void, 2) all filled except the hole containing the 192-Ir source, and 3) two adjacent holes to the 192-Ir source filled were Monte Carlo simulated. The resulting 3D dose distributions were imported into an in-house-coded inverse optimization planning system to generate HDR brachytherapy clinical plans for 19 patient cases. All plans generated were normalized to the same D90 as the clinical plans and D2cc doses of OARs were evaluated. Prescription ranged between 15 and 17.5Gy. Results: In general, the plans in case 1) resulted in the highest D2cc doses for the OARs with 11.65±2.30Gy, 7.47±3.05Gy, and 9.84±2.48Gy for bladder, rectum, and sigmoid, respectively, although the differences were small. For the case 2), D2cc doses were 11.61±2.29Gy, 7.41±3.07Gy, and 9.75±2.45Gy, respectively. And, for the case 3), D2cc doses were 11.60±2.28Gy, 7.41±3.05Gy, and 9.74±2.45Gy, respectively. Difference between 1) and 2) cases were small with the average D2cc difference of <0.64%. Difference between 1) and 3) cases were even smaller with the average D2cc difference of <0.1%. Conclusions: There is a minimal clinical benefit by differentially filling grooved holes in the novel DMBT tandem applicator for image guided cervical cancer brachytherapy.

60 APPLIED LIFE SCIENCES↗