Search NASA⌕ Search

SEARCH · Search NASA

Results for “programing languages”

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 109 records · Page 6

PyFLOSIC: Python-based Fermi–Löwdin orbital self-interaction correction

We present pyflosic, an open-source, general-purpose python implementation of the Fermi–Löwdin orbital self-interaction correction (FLO-SIC), which is based on the python simulation of chemistry framework (pyscf) electronic structure and quantum chemistry code. Thanks to pyscf, pyflosic can be used with any kind of Gaussian-type basis set, various kinds of radial and angular quadrature grids, and all exchange-correlation functionals within the local density approximation, generalized-gradient approximation (GGA), and meta-GGA provided in the libxc and xcfun libraries. A central aspect of FLO-SIC is the Fermi-orbital descriptors, which are used to estimate the self-interaction correction. Importantly, they can be initialized automatically within pyflosic; they can also be optimized within pyflosic with an interface to the atomic simulation environment, a python library that provides a variety of powerful gradient-based algorithms for geometry optimization. Although pyflosic has already facilitated applications of FLO-SIC to chemical studies, it offers an excellent starting point for further developments in FLO-SIC approaches, thanks to its use of a high-level programming language and pronounced modularity.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Mathematical solutions in internal dose assessment: A comparison of Python-based differential equation solvers in biokinetic modeling

Abstract In biokinetic modeling systems employed for radiation protection, biological retention and excretion have been modeled as a series of discretized compartments representing the organs and tissues of the human body. Fractional retention and excretion in these organ and tissue systems have been mathematically governed by a series of coupled first-order ordinary differential equations (ODEs). The coupled ODE systems comprising the biokinetic models are usually stiff due to the severe difference between rapid and slow transfers between compartments. In this study, the capabilities of solving a complex coupled system of ODEs for biokinetic modeling were evaluated by comparing different Python programming language solvers and solving methods with the motivation of establishing a framework that enables multi-level analysis. The stability of the solvers was analyzed to select the best performers for solving the biokinetic problems. A Python-based linear algebraic method was also explored to examine how the numerical methods deviated from an analytical or semi-analytical method. Results demonstrated that customized implicit methods resulted in an enhanced stable solution for the inhaled 60 Co (Type M) and 131 I (Type F) exposure scenarios for the inhalation pathway of the International Commission on Radiological Protection (ICRP) Publication 130 Human Respiratory Tract Model (HRTM). The customized implementation of the Python-based implicit solvers resulted in approximately consistent solutions with the Python-based matrix exponential method ( expm ). The differences generally observed between the implicit solvers and expm are attributable to numerical precision and the order of numerical approximation of the numerical solvers. This study provides the first analysis of a list of Python ODE solvers and methods by comparing their usage for solving biokinetic models using the ICRP Publication 130 HRTM and provides a framework for the selection of the most appropriate ODE solvers and methods in Python language to implement for modeling the distribution of internal radioactivity.

61 RADIATION PROTECTION AND DOSIMETRY↗

Impurity transport studies at the HSX stellarator using active and passive CVI spectroscopy

The transport of carbon impurities has been studied in the helically symmetric stellarator experiment (HSX) using active and passive charge exchange recombination spectroscopy (CHERS). For the analysis of the CHERS signals, the STRAHL impurity transport code has been re-written in the python programming language and optimized for the application in stellarators. In addition, neutral hydrogen densities both along the NBI line of sight as well as for the background plasma have been calculated using the FIDASIM code. By using the basinhopping algorithm to minimize the difference between experimental and predicted active and passive signals, significant levels of impurity diffusion are observed. In this work, comparisons with neoclassical calculations from DKES/PENTA show that the inferred levels exceed the neoclassical transport by about a factor of four in the core and more than 100 times towards the plasma edge, thus indicating a high level of anomalous transport. This observation is in agreement with experimental heat diffusivites determined from a power balance analysis which exhibits strong anomalous transport as well.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Application of Portable Parallelization Strategies for GPUs on track reconstruction kernels

Utilizing the computational power of GPUs is one of the key ingredients to meet the computing challenges presented to the next generation of High-Energy Physics (HEP) experiments. Unlike CPUs, developing software for GPUs often involves using architecturespecific programming languages promoted by the GPU vendors and hence limits the platform that the code can run on. Various portability solutions have been developed to achieve portable, performant software across different GPU vendors. Given the rapid evolution of these portability solutions, an early adoption of them in simple HEP testbed applications will help us understand the strengths and weaknesses of respective approaches.We apply several portability solutions, including Alpaka, Kokkos, SYCL and std::execution::par, on kernels for track propagation extracted from the mkFit project. We report on the development experience of the same application with different portability solutions, as well as their performance on GPUs, measured as the throughput of the kernels, from different manufacturers such as NVIDIA, AMD and Intel.

Kwok, Martin [Fermilab] (ORCID:0000000286936146)↗

MolViewSpec: a Mol* extension for describing and sharing molecular visualizations

Data visualization is a pivotal component of a structural biologist’s arsenal. The Mol* Viewer makes molecular visualizations available to broader audiences via most web browsers. While Mol* provides a wide range of functionality, it has a steep learning curve and is only available via a JavaScript interface. To enhance the accessibility and usability of web-based molecular visualization, we introduce MolViewSpec (molstar.org/mol-view-spec), a standardized approach for defining molecular visualizations that decouples the definition of complex molecular scenes from their rendering. Scene definition can include references to commonly used structural, volumetric, and annotation data formats together with a description of how the data should be visualized and paired with optional annotations specifying colors, labels, measurements, and custom 3D geometries. Developed as an open standard, this solution paves the way for broader interoperability and support across different programming languages and molecular viewers, enabling more streamlined, standardized, and reproducible visual molecular analyses. MolViewSpec is freely available as a Mol* extension and a standalone Python package.

Midlik, Adam [European Bioinformatics Institute (U↗

Global estimates of the fitness advantage of SARS-CoV-2 variant Omicron

Abstract New variants of SARS-CoV-2 show remarkable heterogeneity in their relative fitness over both time and space. In this paper we extend the tools available for estimating the selection strength for new SARS-CoV-2 variants to a hierarchical, mixed-effects, renewal equation model. This formulation allows us to estimate selection effects at the global level while incorporating both measured and unmeasured heterogeneity among countries. Applying this model to the spread of Omicron in forty countries, we find evidence for very strong but very heterogeneous selection effects. To test whether this heterogeneity is explained by differences in the immune landscape, we considered several measures of vaccination rates and recent population-level infection as covariates, finding moderately strong, statistically significant effects. We also found a significant positive correlation between the selection advantage of Delta and Omicron at the country level, suggesting that other region-specific explanatory variables of fitness differences do exist. Our method is implemented in the Stan programming language, can be run on standard consumer-grade computing resources, and will be straightforward to apply to future variants.

59 BASIC BIOLOGICAL SCIENCES↗

Symplectic machine learning model for fast simulation of space-charge effects

Symplectic simulation of space-charge effects is crucial for the design and operation of high-intensity particle accelerators. Traditional methods for simulating these effects are often computationally expensive, resulting in significant overhead. In this work, we introduce a generative model based on a U-Net architecture within a generative adversarial network framework to efficiently simulate space-charge effects. The model is trained to predict the transverse multiparticle space-charge Hamiltonian, which can be physically computed using a gridless spectral method. The one-step symplectic transverse transfer map for the particles is then obtained by differentiating the predicted Hamiltonian. Benchmarking results demonstrate that this generative model achieves an order of magnitude higher computational efficiency compared to the spectral method, providing a highly efficient alternative for simulating space-charge effects with a large number of particles. By maintaining symplecticity, the model effectively preserves the phase-space structure and mitigates nonphysical errors in long-term simulations. This model has been integrated into jutrack, a novel autodifferentiable accelerator modeling code developed in the julia programming language.

Beam code development & simulation techniques↗

Enabling Scientific Applications with Performance-Portability and High-Productivity for Multi-GPU Programming with JACC.Multi

This work bridges the gap between multi-GPU computing and high-productivity, performance-portable programming solutions. Our goal is to enhance scientific applications with a productive and portable solution—program once, deploy everywhere—for multi-GPU programming with no cost to programmability. To accomplish this, we implemented JACC.Multi, which is part of the Julia for ACCelerators (JACC) performance-portable framework. JACC. Multi is the only high-level, portable metaprogramming solution that targets multi-GPU environments and is integrated in a readily accessible programming language (e.g., Julia language). With transparent GPU-to-GPU communication, JACC. Multi is optimized for scientific application workloads and is portable for NVIDIA and AMD accelerators. For the evaluation, we use two modern multi-GPU systems: Hudson, which features two NVIDIA H100 Hopper GPUs per node, and Frontier, which features four AMD MI250X GPUs per node, each with two Graphics Compute Dies (GCDs) for a total of eight GCDs per node. Additionally, as part of the evaluation, we use JACC (one GPU), MPI+JACC, and JACC. Multi codes that implement well-known and widely used scientific algorithms/kernels such as the conjugate gradient algorithm and an explicit forward Euler solver that requires GPU-to-GPU communication. Overall, JACC. Multi codes achieve better performance than MPI+JACC codes and significant speedups over JACC (one GPU), with up to 1.9× on Hudson and 6× on Frontier.

Valero Lara, Pedro [ORNL] (ORCID:0000000214794310)↗

IRIS-DMEM: Efficient Memory Management for Heterogeneous Computing

This paper proposes an efficient data memory management approach for the Intelligent RuntIme System (IRIS) heterogeneous computing framework along with new data transfer policies. IRIS provides a task-based programming model for extreme heterogeneous computing (e.g., CPU, GPU, DSP, FPGA) with support for today's most important programming languages (e.g., OpenMP, OpenCL, CUDA, HIP, OpenACC). However, the IRIS framework either forces the programmer to introduce data transfer commands for each task or relies on suboptimal memory management for automatic and transparent data transfers. The work described here extends IRIS with novel heterogeneous memory handling and introduces novel data transfer policies by employing the Distributed data MEMory handler (DMEM) for efficient and optimal movement of data among the various computing resources. The proposed approach achieves performance gains of up to 7× for tiled LU factorization and tiled DGEMM (i.e., matrix multiplication) benchmarks. Moreover, this approach also reduces data transfers by up to 71% when compared to previous IRIS heterogeneous memory management handlers. This work compares the performance results of the IRIS framework's novel DMEM with the StarPU runtime and MAGMA math library for GPUs. Experiments show a performance gain of up to 1.95× over StarPU and 2.1× over MAGMA.

Miniskar, Narasinga Rao↗

Understanding Quantum Control Processor Capabilities and Limitations through Circuit Characterization

Continuing the scaling of quantum computers hinges on building classical control hardware pipelines that are scalable, extensible, and provide real time response. The instruction set architecture (ISA) of the control processor provides functional abstractions that map high-level semantics of quantum programming languages to low-level pulse generation by hardware. Here, we provide a methodology to quantitatively assess the effectiveness of the ISA to encode quantum circuits for intermediate-scale quantum devices with O(10 2 ) qubits. The characterization model that we define reflects performance, the ability to meet timing constraint implications, scalability for future quantum chips, and other important considerations making them useful guides for future designs. Using our methodology, we propose scalar (QUASAR) and vector (qV) quantum ISAs as extensions and compare them with other ISAs in metrics such as circuit encoding efficiency, the ability to meet real-time gate cycle requirements of quantum chips, and the ability to scale to more qubits.

97 MATHEMATICS AND COMPUTING↗

Evaluating the Performance of Integer Sum Reduction on an Intel GPU

Sum reduction is a primitive operation in parallel computing while SYCL is a promising heterogeneous programming language. In this paper, we describe the SYCL implementations of integer sum reduction using atomic functions, shared local memory, vectorized memory accesses, and parameterized workload sizes. Evaluating the reduction kernels shows that we can achieve 1.4X speedup over the open-source implementations of sum reduction for a sufficiently large number of integers on an Intel integrated GPU.

Jin, Zheming↗

Then and Now: Improving Software Portability, Productivity, and 100× Performance

The US Exascale Computing Project (ECP) has succeeded in preparing applications to run efficiently on the first reported Exascale supercomputers in the world. To achieve this, it modernized the whole leadership software stack, from libraries to simulation codes. In this article, we contrast selected leadership software before and after ECP. We discuss how sustainable research software development for leadership computing can embrace the conversation with the hardware vendors, the leadership computing facilities, the software community, and the domain scientists who are the application developers and integrators of software products. We elaborate on how software needs to take portability as a central design principle and to benefit from interdependent teams; we also demonstrate how moving to programming languages with high momentum, like modern C++, can help improve the sustainability, interoperability, and performance of research software. Finally, we showcase how cross-institutional efforts can enable algorithm advances that are beyond incremental performance optimization.

97 MATHEMATICS AND COMPUTING↗

MLIR loop optimizations for High-Level Synthesis: a case study

High-Level Synthesis (HLS) tools simplify the design of hardware accelerators by automatically generating Verilog/VHDL code starting from a general purpose software programming language. They include a wide range of optimization techniques in the process, most of them performed on a low-level intermediate representation (IR) of the code. Introducing optimizations on a higher level of abstraction could significantly contribute to the automated design process results; for example, polyhedral techniques for the manipulation of loops could have a significant impact on the generated accelerators when applied on a specialized IR. We use loop pipelining as a case study to explore the introduction of compiler-based transformations on top of an existing HLS process. We leverage the Multi-Level Intermediate Representation (MLIR) framework and an external scheduler to implement the required transformations, and couple them with existing HLS tools to evaluate the improvements that loop pipelining brings to the performance of generated accelerators. The proposed approach can be integrated with other high-level transformations on the MLIR representation, combining different techniques to obtain pre-optimized inputs for HLS that do not have to rely on a specific backend tool.

Curzel, Serena↗

GEOPHIRES v2.0

GEOPHIRES v2.0 is a geothermal techno-economic simulation tool upgraded from GEOPHIRES v1.2. The name stands for "GEOthermal energy for Production of Heat and electricity (“IR”) Economically Simulated". GEOPHIRES combines reservoir, wellbore, and surface plant technical models with cost correlations and levelized cost models to estimate the capital and operation and maintenance costs, instantaneous and lifetime energy production, and overall levelized cost of energy of a geothermal plant. In addition to electricity generation, direct-use heat applications and combined heat and power or cogeneration can be modeled. Various upgrades have been implemented to develop GEOPHIRES v2.0, including: updating the built-in cost correlations, coupling to the external reservoir simulator TOUGH2, enhancing the built-in wellbore simulator, converting the programming language to Python, and making the code open-source. Users are encouraged to build upon the tool, e.g. by implementing their own correlations or coupling to other simulators.

Beckers, Koenraad↗

Semi-analytic model of magnetized liner inertial fusion

The code that was developed is called SAMM (Semi-Analytic MagLIF Model). In 2015, McBride and Slutz published all of the equations that are solved by the code in the original SAMM paper: R. D. McBride and S. A. Slutz, ?A semi-analytic model of magnetized liner inertial fusion?, Phys. Plasmas 22, 052708 (2015); http://doi.org/10.1063/1.4918953. The SAMM code is now implemented in both the MATLAB and Python programming languages. Students from multiple universities have requested copies of the code so that they can become more familiar with the MagLIF concept. We would like to seek an open-source solution. There is no market value to this code, as there are plenty of more sophisticated simulation codes already available; SAMM is merely a simplified model that is purely for educational purposes. In fact, at least one graduate student (from the University of California, San Diego) has already implemented and published his own modified version of the model: J. Narkis, H. U. Rahman, J. C. Valenzuela, F. Conti, R. D. McBride, D. Venosa, and F. N. Beg, ?A semi-analytic model of gas-puff liner-on-target magneto-inertial fusion?, Phys. Plasmas 26, 032708 (2019); https://doi.org/10.1063/1.5086056. SAND2020-12244 M Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Moore, Thomas↗

Computation of graph hitting time moments; Chapel code implementation.

The project that developed this is unclassified, with the mandate to produce open source code. This code computes the hitting time moments of a graph using a linear algebra configuration. The goal of this work is to explore the performance capabilities of the Chapel programming language. Toward that end, we generate random adjacency matrices which represent a random graph. The code can also read in an adjacency matrix from a file. The main computation is the Conjugate Gradient method.SAND2020-12651 M. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Barrett, Richard↗

Juqbox.jl

The Juqbox.jl package implements functionality for solving the quantum optimal control problem for realizing logical gates in closed quantum systems. The dynamics of the quantum system is modeled by Schroedinger's equation, which takes to form of a linear system of ordinary differential equations (ODE). Juqbox.jl solves this ODE by numerical time stepping and applies a gradient-based optimization technique to determine control pulses for driving an initial state to a final state, according to the desired logical gate transformation. To evaluate the gradient, Juqbox.jl applies the ``first discretize, then optimize'' approach based on a discrete adjoint time stepping technique. The actual optimization is performed by the open source Ipopt libaray. Juqbox.jl is written in the Julia programming language which, among many other features, provides a convenient interface to the Ipopt library.

PETERSSON, NILSA.↗

P3A

Portably Performant Physical Algebra (P3A) is a C++ library that provides classes representing variables in a physical algebra equation. These equations are the fundamental way that physics models are written ("f = ma" for example). P3A provides a way to write in the C++ programming language similar to how one would do math on paper. P3A provides support tools for rapidly solving equations in a way that is common in scientific computing. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525. SAND2021-3183 O

Ibanez-Granados, Daniel↗