Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Compilers”

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 451 records · Page 25

pLiner

Compiler optimizations can alter significantly the numerical results of scientific computing applications. When numerical results differ significantly between compilers, optimization levels, and floating-point hardware, these numerical inconsistencies can impact programming productivity. pLiner is a framework that helps programmers identify locations in the source code that are highly affected by compiler optimizations. pLiner uses a novel approach to identify such code locations by enhancing the floatingpoint precision of variables and expressions. Using a guided search to locate the most significant code regions, pLiner can report to users such locations at different granularities, file, function, and line of code.

Laguna Peralta, Ignacio↗

National Brackish Groundwater Assessment 2017

Brackish groundwater (BGW), defined for this assessment as having a dissolved-solids concentration between 1,000 and 10,000 milligrams per liter, is an unconventional source of water that may offer a partial solution to current (2016) and future water challenges. In support of the National Water Census, the U.S. Geological Survey has completed a BGW assessment to gain a better understanding of the occurrence and characteristics of BGW resources of the United States as an alternative source of water. Analyses completed as part of this assessment relied on previously collected data from multiple sources, and no new data were collected. One of the most important contributions of this assessment was the creation of a database containing chemical data and aquifer information for the known quantities of BGW in the United States. Data were compiled from single publications to large datasets and from local studies to national assessments, and includes chemical data on the concentrations of dissolved solids, major ions, trace elements, nutrients, radionuclides, and physical properties of the resource (pH, temperature, specific conductance). This database represents data from a compilation of water-quality samples from 100,000+ (major-ions data) to 300,000+ (dissolved-solids data) groundwater wells across the continental U.S., Alaska, Hawaii, Puerto Rico, the U.S. Virgin Islands, Guam, and American Samoa. The data are published here as an ESRI geodatabase with a point feature class and associated attribute table, and also as non-proprietary comma-separated value table. It was not possible to compile all data available for the Nation, and data selected for this investigation were mostly limited to larger datasets that were available in a digital format.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

Assessment of the Geothermal System Near Stanley, Idaho

The City of Stanley, Idaho (population 63) is situated in the Salmon River valley of the central Idaho highlands. Due to its location and elevation (6270 feet amsl) it is one of the coldest locales in the continental U.S., on average experiencing frost 290 days of the year as well as 60 days of below zero (oF) temperatures. Because of high snowfall (76 inches on average) and the fact that it is at the terminus of its rural grid, the city also frequently endures extended power outages during the winter. To evaluate its options for reducing heating costs and possible local power generation, the city obtained a rural development grant from the USDA and commissioned a feasibility study through author Roy Mink to determine whether a comprehensive site characterization and/or test drilling program was warranted. Geoscience students and faculty at Idaho State University (ISU), together with scientists from the Idaho Geological Survey (IGS) and Idaho National Laboratory (INL) conducted three field data collection campaigns between June, 2011 and November, 2012 with the assistance of author Beckwith who arranged for food, lodging and local property access throughout the field campaigns. Some of the information collected by ISU and the IGS were compiled by author Mink and Boise State University in a series of progress reports (Makovsky et al., 2011a, b, c, d). This communication summarizes all of the data collected by ISU including data that were compiled as part of the IGS’s effort for the National Geothermal Data System’s (NGDS) data compilation project funded by the Department of Energy and coordinated by the Arizona Geological Survey.

58 GEOSCIENCES↗

Toward Abstracting the Communication Intent in Applications to Improve Portability and Productivity

Programming with communication libraries such as the Message Passing Interface (MPI) obscures the high-level intent of the communication in an application and makes static communication analysis difficult to do. Compilers are unaware of communication libraries specifics, leading to the exclusion of communication patterns from any automated analysis and optimizations. To overcome this, communication patterns can be expressed at higher-levels of abstraction and incrementally added to existing MPI applications. In this paper, we propose the use of directives to clearly express the communication intent of an application in a way that is not specific to a given communication library. Our communication directives allow programmers to express communication among processes in a portable way, giving hints to the compiler on regions of computations that can be overlapped with communication and relaxing communication constraints on the ordering, completion and synchronization of the communication imposed by specific libraries such as MPI. The directives can then be translated by the compiler into message passing calls that efficiently implement the intended pattern and be targeted to multiple communication libraries. Thus far, we have used the directives to express point-to-point communication patterns in C, C++ and Fortran applications, and have translated them to MPI and SHMEM.

Mintz, Tiffany M↗

OECD NEA Benchmark Database of Spent Nuclear Fuel Isotopic Compositions for World Reactor Designs

Experimental data on the isotopic concentrations in irradiated nuclear fuel represent one of the primary methods for validating computational methods and nuclear data used for reactor and spent fuel depletion simulations that support nuclear fuel cycle safety and safeguards programs. Measurement data have previously not been available to users in a centralized or searchable format, and the majority of accessible information has been, for the most part, limited to light-water-reactor designs. This paper describes a recent initiative to compile spent fuel benchmark data for additional reactor designs used throughout the world that can be used to validate computer model simulations that support nuclear energy and nuclear safeguards missions. Experimental benchmark data have been expanded to include VVER-440, VVER-1000, RBMK, graphite moderated MAGNOX, gas cooled AGR, and several heavy-water moderated CANDU reactor designs. Additional experimental data for pressurized light water and boiling water reactor fuels has also been compiled for modern assembly designs and more extensive isotopic measurements. These data are being compiled and uploaded to a recently revised structured and searchable database, SFCOMPO, to provide the nuclear analysis community with a centrally-accessible resource of spent fuel compositions that can be used to benchmark computer codes, models, and nuclear data. The current version of SFCOMPO contains data for eight reactor designs, 20 fuel assembly designs, more than 550 spent fuel samples, and measured isotopic data for about 80 nuclides.

Gauld, Ian C↗

Program structure-based blocking

Embodiments relate to program structure-based blocking. An aspect includes receiving source code corresponding to a computer program by a compiler of a computer system. Another aspect includes determining a prefetching section in the source code by a marking module of the compiler. Yet another aspect includes performing, by a blocking module of the compiler, blocking of instructions located in the prefetching section into instruction blocks, such that the instruction blocks of the prefetching section only contain instructions that are located in the prefetching section.

97 MATHEMATICS AND COMPUTING↗

Program structure-based blocking

Embodiments relate to program structure-based blocking. An aspect includes receiving source code corresponding to a computer program by a compiler of a computer system. Another aspect includes determining a prefetching section in the source code by a marking module of the compiler. Yet another aspect includes performing, by a blocking module of the compiler, blocking of instructions located in the prefetching section into instruction blocks, such that the instruction blocks of the prefetching section only contain instructions that are located in the prefetching section.

97 MATHEMATICS AND COMPUTING↗

Behavior specification, finding main, and call graph visualizations

A process transforms compiled software into a semantic form. The process transforms the code into a semantic form. The process analyzes behavior functionality by processing precise programming behavior abstractions stored in a memory and classifies the code as malware based on the code behavior. Another method identifies the starting point of execution of a compiled program. The method calculates a complexity measure by calculating the number of potential execution paths of local functions; identifies the number of arguments passed to local functions; and identifies the starting point of execution of the compiled program. Another method provides interactive, dynamic visualization of a group of related functions wherein a user can explore the rendered graph and select a specific function and display functions that are color coded by their ancestral relation and their function call distance to the selected function.

97 MATHEMATICS AND COMPUTING↗

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.↗

Bridging Python to Silicon: The SODA Toolchain

Systems performing scientific computing, data analysis, and machine learning tasks have a growing demand for application-specific accelerators that can provide high computational performance while meeting strict size and power requirements. However, the algorithms and applications that need to be accelerated are evolving at a rate that is incompatible with manual design processes based on hardware description languages. Agile hardware design tools based on compiler techniques can help by quickly producing an application-specific integrated circuit (ASIC) accelerator starting from a high-level algorithmic description. Here, we present the software-defined accelerator (SODA) synthesizer, a modular and open-source hardware compiler that provides automated end-to-end synthesis from high-level software frameworks to ASIC implementation, relying on multilevel representations to progressively lower and optimize the input code. Our approach does not require the application developer to write any register-transfer level code, and it is able to reach up to 364 giga floating point operations per second (GFLOPS)/W efficiency (32-bit precision) on typical convolutional neural network operators.

97 MATHEMATICS AND COMPUTING↗

Manage OpenMP GPU Data Environment Under Unified Address Space

OpenMP has supported the offload of computations to accelerators such as GPUs since version 4.0. A crucial aspect in OpenMP offloading is to manage the accelerator data environment. Currently, this has to be explicitly programmed by users, which is non-trival and often results in suboptimal performance. The unified memory feature available in recent GPU architectures introduces another option, implicit management. However, our experiments show that it incurs several performance issues, especially under GPU memory oversubscription. In this paper, we propose a compiler and runtime collaborative approach to manage OpenMP GPU data under unified memory. In our framework, the compiler performs data reuse analysis to assist runtime data management. The runtime combines static and dynamic information to make optimized data management decisions.We have implement the proposed technology in the LLVM framework. The evaluation shows our method can achieve significant performance improvement for OpenMP GPU offloading.

97 MATHEMATICS AND COMPUTING↗

Nuclear Data Sheets for A = 21

This evaluation of A = 21 has been updated from previous evaluations published in 2004Fi10, 1998En04, 1990En08, and 1978En02. Coverage includes properties of adopted levels and γ-rays, decay-scheme data (energies, intensities and placement of radiations), and cross reference entries. The following tables continue the tradition of showing the systematic relationships between levels in A = 21. Much of the new data in this evaluations were taken directly from the xundl database, compiled under the direction of Balraj Singh, McMaster University. The evaluator is particularly appreciative of the efforts of the xundl compilers.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Evaluation of Beta-Delayed Neutron Emission Probabilities and Half-Lives for Z = 2–28

We present an evaluation and compilation of β-delayed neutron probabilities and half-lives for nuclei in the region Z = 2–28 ({sup 8}He–{sup 80}Ni). This article includes the recommended values of these quantities as well as a compiled list of experimental measurements for each nucleus in the region for which β-delayed neutron emission is possible. The literature cut-off for this work is August 15{sup th}, 2015. Some notable cases as well as new standards for β-delayed neutron measurements in this mass region are also discussed.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Computational Benefit of GPU Optimization for the Atmospheric Chemistry Modeling

Abstract Global chemistry‐climate models are computationally burdened as the chemical mechanisms become more complex and realistic. Optimization for graphics processing units (GPU) may make longer global simulation with regional detail possible, but limited study has been done to explore the potential benefit for the atmospheric chemistry modeling. Hence, in this study, the second‐order Rosenbrock solver of the chemistry module of CAM4‐Chem is ported to the GPU to gauge potential speed‐up. We find that on the CPU, the fastest performance is achieved using the Intel compiler with a block interleaved memory layout. Different combinations of compiler and memory layout lead to ~11.02× difference in the computational time. In contrast, the GPU version performs the best when using a combination of fully interleaved memory layout with block size equal to the warp size, CUDA streams for independent kernels, and constant memory. Moreover, the most efficient data transfer between CPU and GPU is gained by allocating the memory contiguously during the data initialization on the GPU. Compared to one CPU core, the speed‐up of using one GPU alone reaches a factor of ~11.7× for the computation alone and ~3.82× when the data transfer between CPU and GPU is considered. Using one GPU alone is also generally faster than the multithreaded implementation for 16 CPU cores in a compute node and the single‐source solution (OpenACC). The best performance is achieved by the implementation of the hybrid CPU/GPU version, but rescheduling the workload among the CPU cores is required before the practical CAM4‐Chem simulation.

54 ENVIRONMENTAL SCIENCES↗

Optimized Quantum Program Execution Ordering to Mitigate Errors in Simulations of Quantum Systems

Simulating the time evolution of a physical system at quantum mechanical levels of detail - known as Hamiltonian Simulation (HS) - is an important and interesting problem across physics and chemistry. For this task, algorithms that run on quantum computers are known to be exponentially faster than classical algorithms; in fact, this application motivated Feynman to propose the construction of quantum computers. Nonetheless, there are challenges in reaching this performance potential. Prior work has focused on compiling circuits (quantum programs) for HS with the goal of maximizing either accuracy or gate cancellation. Our work proposes a compilation strategy that simultaneously advances both goals. At a high level, we use classical optimizations such as graph coloring and travelling salesperson to order the execution of quantum programs. Specifically, we group together mutually commuting terms in the Hamiltonian (a matrix characterizing the quantum mechanical system) to improve the accuracy of the simulation. We then rearrange the terms within each group to maximize gate cancellation in the final quantum circuit. Furthermore, these optimizations work together to improve HS performance and result in an average 40% reduction in circuit depth. This work advances the frontier of HS which in turn can advance physical and chemical modeling in both basic and applied sciences.

97 MATHEMATICS AND COMPUTING↗

SQUARE: Strategic Quantum Ancilla Reuse for Modular Quantum Programs via Cost-Effective Uncomputation

Compiling high-level quantum programs to machines that are size constrained (i.e. limited number of quantum bits) and time constrained (i.e. limited number of quantum operations) is challenging. In this paper, we present SQUARE (Strategic QUantum Ancilla REuse), a compilation infrastructure that tackles allocation and reclamation of scratch qubits (called ancilla) in modular quantum programs. At its core, SQUARE strategically performs uncomputation to create opportunities for qubit reuse. Current Noisy Intermediate-Scale Quantum (NISQ) computers and forward-looking Fault-Tolerant (FT) quantum computers have fundamentally different constraints such as data locality, instruction parallelism, and communication overhead. Our heuristic-based ancilla-reuse algorithm balances these considerations and fits computations into resource-constrained NISQ or FT quantum machines, throttling parallelism when necessary. To precisely capture the workload of a program, we propose an improved metric, the "active quantum volume," and use this metric to evaluate the effectiveness of our algorithm. Furthermore, our results show that SQUARE improves the average success rate of NISQ applications by 1.47X. Surprisingly, the additional gates for uncomputation create ancilla with better locality, and result in substantially fewer swap gates and less gate noise overall. SQUARE also achieves an average reduction of 1.5X (and up to 9.6X) in active quantum volume for FT machines.

compiler optimization↗

Renewable Energy Atlas of the United States

The Renewable Energy Atlas (Atlas) of the United States is a compilation of geospatial data focused on renewable energy resources, federal land ownership, and base map reference information. It is designed for the U.S. Department of Agriculture Forest Service (USFS) and other federal land management agencies to evaluate existing and proposed renewable energy projects. Much of the content of the Atlas was compiled at Argonne National Laboratory (Argonne) to support recent and current energy-related Environmental Impact Statements and studies, including the following projects: (1) West-wide Energy Corridor Programmatic Environmental Impact Statement (PEIS) (BLM 2008); (2) Draft PEIS for Solar Energy Development in Six Southwestern States (DOE/BLM 2010); (3) Supplement to the Draft PEIS for Solar Energy Development in Six Southwestern States (DOE/BLM 2011); (4) Upper Great Plains Wind Energy PEIS (WAPA/USFWS 2012, in progress); and (5) Energy Transport Corridors: The Potential Role of Federal Lands in States Identified by the Energy Policy Act of 2005, Section 368(b) (in progress). This report explains how to add the Atlas to your computer and install the associated software; describes each of the components of the Atlas; lists the Geographic Information System (GIS) database content and sources; and provides a brief introduction to the major renewable energy technologies.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

Summary Report of the Workshop on The Experimental Nuclear Reaction Data Database

The Workshop on the Experimental Nuclear Reaction Data Database (EXFOR) was held at IAEA Headquarters in Vienna from 6 to 10 October 2014. The workshop was organized to discuss various aspects of the EXFOR compilation process including compilation rules, different techniques for nuclear reaction data measurements, software developments, etc. A summary of the presentations and discussions that took place during the workshop is reported here.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗