Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “SOURCE CODE”

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 541 records · Page 30

Development of Internal Non-Contacting Profilomerty Superconducting RF Cavities

Under the scope of this CRADA Microdynamics contributed only by transferring to JLab the control source code (on non-disclosure basis) for the CYCLOPS system that we purchased from them earlier. They invested no additional design or engineering time. They made the business decision that there was no market for this system as a product. We at JLab budgeted in-house funds to work on on continued improvements. Per Costpoint, we spent a total of $21,699 loaded on this project. Additional funds were available to hire a contract programmer to make needed program changes, however, the source language used is an older one, no longer taught or in use. I was unable to find any capable programmer. So, the work came to a halt. The CRADA expired. The system is not presently functional. We estimate that a meaningful redesign would require $250,000 in labor and materials. So, while the promised function of the system would be unique and very helpful for some of our technical trouble-shooting needs, it is presently dead in the water and very, very far down on our unfunded priorities list.

Reece, Charles↗

Shifting Left for Machine Learning: An Empirical Study of Security Weaknesses in Supervised Learning-based Projects

Context: Supervised learning-based projects (SLPs), i.e., software projects that use supervised learning algorithms, such as decision trees are useful for performing classification-related tasks. Yet, security weaknesses, such as the use of hard-coded passwords in SLPs, can make SLPs susceptible to security attacks. A characterization of security weaknesses in SLPs can help practitioners understand the security weaknesses that are frequent in SLPs and adopt adequate mitigation strategies. Objective: The goal of this paper is to help practitioners se-curely develop supervised learning-based projects by conducting an empirical study of security weaknesses in supervised learning-based projects. Methodology: We conduct an empirical study by quantifying the frequency of security weaknesses in 278 open source SLPs. Results: We identify 22 types of security weaknesses that occur in SLPs. We observe ‘use of potentially dangerous function’ to be the most frequently occurring security weakness in SLPs. Of the identified 3,964 security weaknesses, 23.79 % and 40.49 % respectively, appear for source code files used to train and test models. We also observe evidence of co-location, e.g., instances of command injection co-locates with instances of potentially dangerous function. Conclusion: Based on our findings, we advocate for a shift left approach for SLP development with security-focused code reviews, and application of security static analysis.

Bhuiyan, Farzana Ahamed↗

CLC: A cross-level program characterization method

Characterization of program execution plays a key role in performance improvement. There are numerous transformations applied to each step that a program takes on its lowering from source code to a compiler intermediate representation to machine language to microarchitecture-specific execution. The unpredictable benefit of each transformation step could lead a notionally superior algorithm to exhibit inferior performance once actually run, and it can be hard to discern which step in the transformation path contradicted the code developer’s assumptions. Conventional approaches to program-execution characterization consider the behavior after only a single one of those steps, which limits the information that can be provided to the user. To help address the issue of myopic views of program execution, this paper presents a novel cross-level characterization approach for understanding the behavior of program execution at different levels in the process of writing, compiling, and running a program. We show that this approach provides a richer view of the sources of performance gains and losses and helps identify program execution in a more accurate manner.

97 MATHEMATICS AND COMPUTING↗

ANTLR Tree Grammar Generator and Extensions

A computer program implements two extensions of ANTLR (Another Tool for Language Recognition), which is a set of software tools for translating source codes between different computing languages. ANTLR supports predicated- LL(k) lexer and parser grammars, a notation for annotating parser grammars to direct tree construction, and predicated tree grammars. [ LL(k) signifies left-right, leftmost derivation with k tokens of look-ahead, referring to certain characteristics of a grammar.] One of the extensions is a syntax for tree transformations. The other extension is the generation of tree grammars from annotated parser or input tree grammars. These extensions can simplify the process of generating source-to-source language translators and they make possible an approach, called "polyphase parsing," to translation between computing languages. The typical approach to translator development is to identify high-level semantic constructs such as "expressions," "declarations," and "definitions" as fundamental building blocks in the grammar specification used for language recognition. The polyphase approach is to lump ambiguous syntactic constructs during parsing and then disambiguate the alternatives in subsequent tree transformation passes. Polyphase parsing is believed to be useful for generating efficient recognizers for C++ and other languages that, like C++, have significant ambiguities.

Craymer, Loring↗

ITS Version 6.7: The Integrated TIGER Series of Coupled Electron/Photon Monte Carlo Transport Codes User's Manual

ITS is a powerful software package permitting state-of-the-art Monte Carlo solution of linear time-independent coupled electron/photon radiation transport problems, with or without the presence of macroscopic electric and magnetic fields of arbitrary spatial dependence. Our goal has been to simultaneously maximize operational simplicity and physical accuracy. Through a set of preprocessor directives, the user selects one of the many ITS codes. The ease with which the make system is applied combines with an input scheme based on order-independent descriptive keywords that makes maximum use of defaults and internal error checking to provide experimentalists and theorists alike with a method for the routine but rigorous solution of sophisticated radiation transport problems. Physical rigor is provided by employing accurate cross sections, sampling distributions, and physical models for describing the production and transport of the electron/photon cascade from 1.0 GeV down to 1.0 keV. The availability of source code permits the more sophisticated user to tailor the codes to specific applications and to extend the capabilities of the codes to more complex applications. Version 6, the latest version of ITS, contains (1) improvements to the ITS 5.0 codes, and (2) conversion to Fortran 95. The general user friendliness of the software has been enhanced through memory allocation to reduce the need for users to modify and recompile the code.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

pysrim: Automation, Analysis, and Plotting of SRIM Calculations

The behavior of ions traveling through a material is of great interest to many fields. For instance, radiation damage in nuclear materials and ion beam modification of materials are most concerned with understanding the formation and evolution of defects along the ion path (Was 2016). Some of the important properties that can be gleaned from investigating the initial damage from the ion include: numbers of interstitials and vacancies produced, energy deposited per unit length to electrons and atomic nuclei, track diameter, and implanted ion profile. These properties enable further simulations and allow computing a common unit of radiation damage dose, displacements per atom (dpa), which can be used to compare irradiation experiments with different ions (Backman et al. 2013) (Stoller et al. 2013). Additionally, the ejection of materials near the surface due to incident ions is important to sputtering and ion-beam analysis techniques, such as elastic recoil detection analysis (ERDA) and secondary ion mass spectrometry (SIMS) (Vickerman and Gilmore 2011). The interaction of ions within a material can be broken into two parts: electronic and nuclear stopping. Electronic stopping is the energy lost from the ion due to inelastic collisions with electrons along its path. Nuclear stopping is the energy lost due to elastic collisions between the ion and atomic nuclei within the material. The Stopping and Range of Ions in Matter (SRIM) code is a well known software in the radiation damage and ion-beam communities that allows the simulation, via Monte Carlo, of ions through a material by modeling the energy transfer through electronic and nuclear stopping (J. F. Ziegler, Ziegler, and Biersack 2010). SRIM was originally developed in 1985 and has had numerous updates on the electronic stopping powers since then, with the nuclear stopping well explained by the ZBL potential (J. F. Ziegler 1988). The executable SRIM is free to use for non-commercial use but the source code is not available to the community despite requests. While SRIM is a scientifically accurate code it does not get updated frequently and has many bugs from a usability standpoint.

97 MATHEMATICS AND COMPUTING↗

The Design and Evaluation of "CAPTools"--A Computer Aided Parallelization Toolkit

Writing applications for high performance computers is a challenging task. Although writing code by hand still offers the best performance, it is extremely costly and often not very portable. The Computer Aided Parallelization Tools (CAPTools) are a toolkit designed to help automate the mapping of sequential FORTRAN scientific applications onto multiprocessors. CAPTools consists of the following major components: an inter-procedural dependence analysis module that incorporates user knowledge; a 'self-propagating' data partitioning module driven via user guidance; an execution control mask generation and optimization module for the user to fine tune parallel processing of individual partitions; a program transformation/restructuring facility for source code clean up and optimization; a set of browsers through which the user interacts with CAPTools at each stage of the parallelization process; and a code generator supporting multiple programming paradigms on various multiprocessors. Besides describing the rationale behind the architecture of CAPTools, the parallelization process is illustrated via case studies involving structured and unstructured meshes. The programming process and the performance of the generated parallel programs are compared against other programming alternatives based on the NAS Parallel Benchmarks, ARC3D and other scientific applications. Based on these results, a discussion on the feasibility of constructing architectural independent parallel applications is presented.

Yan, Jerry↗

Testing of ENDF71x: A new ACE-formatted neutron data library based on ENDF/B-VII.1

The ENDF71x library [1] is the most thoroughly tested set of ACE-format data tables ever released by the Nuclear Data Team at Los Alamos National Laboratory (LANL). It is based on ENDF/B-VII. 1, the most recently released set of evaluated nuclear data files produced by the US Cross Section Evaluation Working Group (CSEWG). A variety of techniques were used to test and verify the ENDF7 1x library before its public release. These include the use of automated checking codes written by members of the Nuclear Data Team, visual inspections of key neutron data, MCNP6 calculations designed to test data for every included combination of isotope and temperature as comprehensively as possible, and direct comparisons between ENDF71x and previous ACE library releases. Visual inspection of some of the most important neutron data revealed energy balance problems and unphysical discontinuities in the cross sections for some nuclides. Doppler broadening of the total cross sections with increasing temperature was found to be qualitatively correct. Test calculations performed using MCNP prompted two modifications to the MCNP6 source code and also exposed bad secondary neutron yields for {sup 231,233}Pa that are present in both ENDF/B-VII.1 and ENDF/B-VII.0. A comparison of ENDF71x with its predecessor ACE library, ENDF70, showed that dramatic changes have been made in the neutron cross section data for a number of isotopes between ENDF/B-VII.0 and ENDF/B-VII.1. Based on the results of these verification tests and the validation tests performed by Kahler, et al. [2], the ENDF71x library is recommended for use in all Monte Carlo applications. (authors)

97 MATHEMATICS AND COMPUTING↗

Hardware Aware Mitigation of Timing Side-Channel Vulnerabilities in Critical Infrastructure Software

Program runtime/timing attacks exploit variations in a program’s execution times to extract sensitive information from the program (e.g. encryption keys, sensitive variable data, intellectual property). State-of-the-art solutions to runtime sidechannel attacks attempt to balance the execution time of the sensitive code for different control flow paths to eliminate the timing leakage. However, during the mitigation process, most techniques do not consider the underlying hardware/device on which the target program is supposed to run on. This can lead to over-fixing (unnecessary extra operations), under-fixing (not solving the imbalance properly), and even failures. We propose DISARM, a joint hardware-software methodology (unlike any existing solution) for mitigating runtime side-channel vulnerabilities that utilizes timing values from real embedded devices to generate targeted software fixes. We implement DISARM to support C/C++/Java source codes and validate it across 22 standard benchmarks. DISARM outperforms state-of-the-art solutions such as PENDULUM and DifFuzzAR in terms of execution time overhead (up to −46%), code size overhead (up to −10%), and correctness (no failures) on five different embedded/edge devices.

Suha, Tasneem [University of Maine]↗

Numerical Implementation of Source Terms to Evaluate Active Porosity Control using a Transpiration Cooled Thermal Protection System

Transpiration cooling has renewed interest of study as a renewable system of thermal protection for atmospheric entry systems. The presence of coolant within the void space of a porous material changes its effective porosity and theorized to lend the external heatshield as a potential means of porous surface control. Effective porosity is explored in two forms: saturation of void space where exiting coolant creates ‘blowing’ over the surface, and partial evacuation of the void space where withdrawal of the coolant creates ‘suction’ on the surface. Thus this study evaluates using transpiration cooling as a as means of active aerodynamic control. The feasibility of the system is evaluated numerically using Reynolds-averaged Navier Stokes based computational fluid dynamics for the aerodynamic assessments by coding source terms of transpiration cooling products at a heat shield surface boundary at the wind side shoulder, creating an asymmetric scheme. Study results show induced moments about the pitch axis incurred following the source terms of a cooling fluid at a near-shoulder location on the heat shield. Lift and drag saw increasing modulation with increase in mass flux rate. Pitch moment was altered a total of 388 N-m between lowest and highest ‘suction’ rates and changed 194 N-m maximum between ‘blowing’ rates.

transpiration cooling↗

DISARM: Target Electronic Device Informed Mitigation of Software Runtime Side-Channel Vulnerabilities

Program runtime/timing attacks exploit variations in a program’s execution times to extract sensitive information from the program (e.g. encryption keys, sensitive variable data, intellectual property). State-of-the-art solutions to runtime side-channel attacks attempt to balance the execution time of the sensitive code for different control flow paths to eliminate the timing leakage. However, during the mitigation process, most techniques do not consider the underlying hardware/device on which the target program is supposed to run on. This can lead to over-fixing (unnecessary extra operations), under-fixing (not solving the imbalance properly), and even failures. Here, we propose DISARM, a joint hardware-software methodology (unlike any existing solution) for mitigating runtime side-channel vulnerabilities that utilizes timing values from real embedded devices to generate targeted software fixes. We implement DISARM to support C/C++/Java source codes and validate it across 22 standard benchmarks. DISARM outperforms state-of-the-art solutions such as PENDULUM and DifFuzzaR in terms of execution time overhead, code size overhead, and correctness on five different embedded/edge devices.

Timing/runtime side-channel↗

RVA: A Plugin for ParaView 3.14

RVA is a plugin developed for the 64-bit Windows version of the ParaView 3.14 visualization package. RVA is designed to provide support in the visualization and analysis of complex reservoirs being managed using multi-fluid EOR techniques. RVA, for Reservoir Visualization and Analysis, was developed at the University of Illinois at Urbana-Champaign, with contributions from the Illinois State Geological Survey, Department of Computer Science and National Center for Supercomputing Applications. RVA was designed to utilize and enhance the state-of-the-art visualization capabilities within ParaView, readily allowing joint visualization of geologic framework and reservoir fluid simulation model results. Particular emphasis was placed on enabling visualization and analysis of simulation results highlighting multiple fluid phases, multiple properties for each fluid phase (including flow lines), multiple geologic models and multiple time steps. Additional advanced functionality was provided through the development of custom code to implement data mining capabilities. The built-in functionality of ParaView provides the capacity to process and visualize data sets ranging from small models on local desktop systems to extremely large models created and stored on remote supercomputers. The RVA plugin that we developed and the associated User Manual provide improved functionality through new software tools, and instruction in the use of ParaView-RVA, targeted to petroleum engineers and geologists in industry and research. The RVA web site (http://rva.cs.illinois.edu) provides an overview of functions, and the development web site (https://github.com/shaffer1/RVA) provides ready access to the source code, compiled binaries, user manual, and a suite of demonstration data sets. Key functionality has been included to support a range of reservoirs visualization and analysis needs, including: sophisticated connectivity analysis, cross sections through simulation results between selected wells, simplified volumetric calculations, global vertical exaggeration adjustments, ingestion of UTChem simulation results, ingestion of Isatis geostatistical framework models, interrogation of joint geologic and reservoir modeling results, joint visualization and analysis of well history files, location-targeted visualization, advanced correlation analysis, visualization of flow paths, and creation of static images and animations highlighting targeted reservoir features.

Source record↗

RVA: A Plugin for ParaView 3.14

RVA is a plugin developed for the 64-bit Windows version of the ParaView 3.14 visualization package. RVA is designed to provide support in the visualization and analysis of complex reservoirs being managed using multi-fluid EOR techniques. RVA, for Reservoir Visualization and Analysis, was developed at the University of Illinois at Urbana-Champaign, with contributions from the Illinois State Geological Survey, Department of Computer Science and National Center for Supercomputing Applications. RVA was designed to utilize and enhance the state-of-the-art visualization capabilities within ParaView, readily allowing joint visualization of geologic framework and reservoir fluid simulation model results. Particular emphasis was placed on enabling visualization and analysis of simulation results highlighting multiple fluid phases, multiple properties for each fluid phase (including flow lines), multiple geologic models and multiple time steps. Additional advanced functionality was provided through the development of custom code to implement data mining capabilities. The built-in functionality of ParaView provides the capacity to process and visualize data sets ranging from small models on local desktop systems to extremely large models created and stored on remote supercomputers. The RVA plugin that we developed and the associated User Manual provide improved functionality through new software tools, and instruction in the use of ParaView-RVA, targeted to petroleum engineers and geologists in industry and research. The RVA web site (http://rva.cs.illinois.edu) provides an overview of functions, and the development web site (https://github.com/shaffer1/RVA) provides ready access to the source code, compiled binaries, user manual, and a suite of demonstration data sets. Key functionality has been included to support a range of reservoirs visualization and analysis needs, including: sophisticated connectivity analysis, cross sections through simulation results between selected wells, simplified volumetric calculations, global vertical exaggeration adjustments, ingestion of UTChem simulation results, ingestion of Isatis geostatistical framework models, interrogation of joint geologic and reservoir modeling results, joint visualization and analysis of well history files, location-targeted visualization, advanced correlation analysis, visualization of flow paths, and creation of static images and animations highlighting targeted reservoir features.

Source record↗

Noncollinear ground states of solids with a source-free exchange correlation functional

In this paper, we expand upon the source-free (SF) exchange correlation (XC) functional developed by Sangeeta Sharma and coworkers to plane-wave density functional theory (DFT) based on the projector augmented wave (PAW) method. This constraint is implemented by the current authors within the VASP source code, using a fast Poisson solver that capitalizes on the parallel three-dimensional fast Fourier transforms (FFTs) implemented in VASP. Using this modified XC functional, we explore the improved convergence behavior that results from applying this constraint to the GGA-PBE+U+J functional. In the process, we compare the noncollinear magnetic ground state computed by each functional and their SF counterpart for a select number of magnetic materials in order to provide a metric for comparing with experimentally determined magnetic orderings. We observe significantly improved agreement with experimentally measured magnetic ground-state structures after applying the source-free constraint. Furthermore, we explore the importance of considering probability current densities in spin-polarized systems, even under no applied field. We analyze the XC torque as well, in order to provide theoretical and computational analyses of the net XC magnetic torque induced by the source-free constraint. Along these lines, we highlight the importance of properly considering the real-space integral of the source-free local magnetic XC field. Our analyses on probability currents, net torque, and constant terms draw additional links to the rich body of previous research on spin-current density functional theory (SCDFT), and pave the way for future extensions and corrections to the SF corrected XC functional.

75 CONDENSED MATTER PHYSICS, SUPERCONDUCTIVITY AND↗

Ongoing solution reproducibility of earth system models as they progress toward exascale computing

We present a methodology for solution reproducibility for the Energy Exascale Earth System Model during its ongoing software infrastructure development to prepare for exascale computers. The nonlinear chaotic nature of climate system simulations precludes traditional model verification approaches since machine precision differences—resulting from code refactoring, changes in software environment, and so on—grow exponentially to a different weather state. Here, we leverage the nature of climate as a statistical description of the atmosphere in order to establish model reproducibility. We evaluate the degree to which two-sample equality of distribution tests can confidently detect the change in climate from minor tuning parameter changes on model output variables in order to establish the level of difference that indicates a new climate. To apply this (baselined test), we target a section of the model’s development cycle wherein no intentional science changes have been applied to its source code. We compare an ensemble of short simulations that were conducted using a verified model configuration against a new ensemble with the same configuration but with the latest software infrastructure (Common Infrastructure for Modeling the Earth, CIME5.0), compiler versions, and software libraries. We also compare these against ensemble simulations conducted using the original version of the software infrastructure (CIME4.0) of the earlier model configuration, but with the latest compilers and software libraries, to test the impact of new compilers and libraries in isolation from additional software infrastructure. The two-sample equality of distribution tests indicates that these ensembles indeed represent the same climate.

97 MATHEMATICS AND COMPUTING↗

Real-time Object Bounding in LiDAR Data With Computer Vision

The Multimodal Measurement System is a roadside radiation measurement testbed used to detect radiation sources in passing vehicles. It works by combining sensor signals from various modalities to produce a thorough scan of the source. A LiDAR sensor is used to measure the dimensions of the vehicle and provide a velocity estimate. However, the current LiDAR setup uses propriety software for which the source code is unavailable and cannot be updated to improve performance. Therefore, it is imperative to the accuracy of the analysis to create a custom vehicle detection that can return the dimensions and velocity of passing vehicles in real time. This new custom detection is written in C++ using the PointCloud Library, which keeps it lightweight. It also utilizes Docker and the Robot Operating System, which allows the versatility of running both on a small computer or the Lawrence Livermore National Laboratory cluster while utilizing different models of LiDAR sensors. The custom detection outperforms the current detection model, which increases the accuracy of radiation source detection.

97 MATHEMATICS AND COMPUTING↗

Targeting GPUs with OpenMP directives on Summit: A simple and effective Fortran experience

We use OpenMP to target hardware accelerators (GPUs) on Summit, a newly deployed supercomputer at the Oak Ridge Leadership Computing Facility (OLCF), demonstrating simplified access to GPU devices for users of our astrophysics code GenASiS and useful speedup on a sample fluid dynamics problem. We modify our workhorse class for data storage to include members and methods that significantly streamline the persistent allocation of and association to GPU memory. Users offload computational kernels with OpenMP target directives that are rather similar to constructs already familiar from multi-core parallelization. In this initial example we ask, “With a given number of Summit nodes, how fast can we compute with and without GPUs?”, and find total wall time speedups of ~ 12X. We also find reasonable weak scaling up to 8000 GPUs (1334 Summit nodes). We make available the source code from this work at https://github.com/GenASiS/GenASiS_Basics.

97 MATHEMATICS AND COMPUTING↗

Model files for estimating snow dynamics and stable water isotopes across the East River, CO.

A coupled hydrologic and snowpack stable water isotope model is used to assesses controls on isotopic inputs across the East River, Colorado, a large, mountainous basin. The hydrologic model uses the semi-empirical, spatially distributed and publicly available U.S. Geological Survey numerical code Precipitation-Modelling Runoff System (PRMS). Water and energy are tracked daily through the atmosphere, canopy and subsurface at a 100-m grid resolution. The isotope mass balance model follows previous work by Ala-aho et al. (2017) to track stable isotopes entering the soil system as snowmelt or rain. Water stores and fluxes needed for the isotope model use hydrologic model output for each timestep and model modeled grid location. This data package provides all files related to the hydrologic model (executable, input and output files), the isotopic model calibration and the historic isotopic model (water years 2015-2020). The isotope model source code and executable are provided. The file "readme.txt" includes information on the file structure, steps to run the model, and description of included folders.

54 ENVIRONMENTAL SCIENCES↗