Search NASA⌕ Search

SEARCH · Search NASA

Results for “programming model”

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 361 records · Page 20

The Viskores User's Guide (V.1.0)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created Viskores: the visualization toolkit for multi-/many-core architectures. Viskores supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. Viskores also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although Viskores provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction.

97 MATHEMATICS AND COMPUTING↗

Advances in Multi-Physics Modeling for Parallel Finite Element Code Suite ACE3P

SLAC developed ACE3P code suite is a comprehensive set of parallel finite-element codes for multi-physics modeling of particle accelerators. Running on massively parallel computer platforms for high fidelity and high accuracy simulation, ACE3P enables rapid virtual prototyping of accelerator and RF component design, optimization and analysis. Furthermore, recent advances of ACE3P have been focused on the implementation of advanced numerical algorithms, enhancement of multi-physics capabilities, and improvement of code performance on state-of-the-art high performance computing (HPC) platforms for large-scale RF modeling in accelerator applications and beyond. In this paper, we will present a nonlinear electromagnetic (EM) eigensolver for damping calculation of resonant modes for cavities coupled with waveguides, the thermal solver for accurate evaluation of heat loads in superconducting RF (SRF) cavity power coupler, the elastic solver for investigation of SRF cavity cryomodule (CM) bowing due to thermal effect, the frequency domain mechanical solver for studying SRF cavity mechanical oscillation modes, the particle tracking code for dark current simulation in SRF CM using a hybrid MPI+OpenMP parallel programing model, the time domain solver for high fidelity modeling of EM wave propagation for medical device in human body.

97 MATHEMATICS AND COMPUTING↗

VTK-m User's' Guide (V.1.7)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.This book includes contributions from the VTK-m community including the VTK-m development team and the user community.

97 MATHEMATICS AND COMPUTING↗

VTK-m User's Guide (V.1.8)

Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

The VTK-m Users' Guide (V.1.9)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

The VTK-m Users' Guide (V.2.0)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

The VTK-m User's Guide (V. 2.2)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction.

97 MATHEMATICS AND COMPUTING↗

Model for Collaboration among Carriers to Reduce Empty Container Truck Trips

In recent years, intermodal transport has become an increasingly attractive alternative to freight shippers. However, the current intermodal freight transport is not as efficient as it could be. Oftentimes an empty container needs to be transported from the empty container depot to the shipper, and conversely, an empty container needs to be transported from the receiver to the empty container depot. These empty container movements decrease the freight carrier’s profit, as well as increase traffic congestion, decrease roadway safety, and add unnecessary emissions to the environment. To this end, our study evaluates a potential collaboration strategy to be used by carriers for domestic intermodal freight transport based on an optimization approach to reduce the number of empty container trips. A binary integer-linear programming model is developed to determine each freight carrier’s optimal schedule while minimizing its operating cost. The model ensures that the cost for each carrier with collaboration is less than or equal to its cost without collaboration. It also ensures that average savings from the collaboration are shared equally among all participating carriers. Additionally, two stochastic models are provided to account for uncertainty in truck travel times. The proposed collaboration strategy is tested using empirical data and is demonstrated to be effective in meeting all of the shipment constraints.

42 ENGINEERING↗

Battery and backup generator sizing for a resilient microgrid under stochastic extreme events

Owing to the recent power outages caused by extreme events, installing battery energy storage and backup generators is important to improve resiliency for a grid-tied microgrid. In the design stage, the event occurrence time and duration, which are highly uncertain and cannot be effectively predicted, may affect the needed battery and backup generator capacity but are usually assumed to be pre-determined in utility planning tools. This study investigates the optimal battery and backup generator sizing problem considering the stochastic event occurrence time and duration for the grid-tied microgrid under islanded operation. The reliability requirement is quantified by the mean value of the critical customer interruption time in each stochastic islanding time window (ITW), whose length is the duration and the centre is the occurrence time. The stochastic ITW constraint is then transformed to a probability-weighted expression to derive an equivalent Mixed Integer Linear Programming model. Numerical simulations on a realistic grid-tied PV-based microgrid demonstrate that the total cost is reduced by 11.5% considering the stochastic ITW, compared with the deterministic ITW under the same reliability requirement.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Nonparametric Prediction Intervals of Wind Power via Linear Programming

This letter proposes a machine learning-based linear programming model that quickly establishes the nonparametric prediction intervals of wind power by integrating extreme learning machine and quantile regression. The proportions of quantiles can be adaptively determined via sensitivity analysis. The proposed method has been proven to be significantly efficient and reliable, with a high application potential in power systems.

extreme learning machine↗

Stochastic Programming Approach for Resource Selection under Demand Uncertainty

Cost-efficient selection and scheduling of a subset of geographically distributed resources to meet the demands of a scientific workflow is a challenging problem. The problem is exacerbated by uncertainties in demand and availability of resources. In this paper, we present a stochastic optimization based framework for robust decision making in the selection of distributed resources over a planning horizon under demand uncertainty. We present a novel two-stage stochastic programming model for resource selection, and implement an L-shaped decomposition algorithm to solve this model. A Sample Average Approximation algorithm is integrated to enable stochastic optimization to solve problems with a large number of scenarios. Using the metric of stochastic solution, we demonstrate up to 30% cost reduction relative to solutions without explicit consideration of demand uncertainty for a 24-month problem. We also demonstrate up to 54% cost reduction relative to a previously developed solution for a 36-month problem. We further argue that the composition of resources selected is superior to solutions computed without explicit consideration of uncertainties. Given the importance of resource selection and scheduling of complex scientific workflows, especially in the context of commercial cloud computing, we believe that our novel stochastic programming framework will benefit many researchers as well as users of distributed computing resources.

scientific workflows, task scheduling, optimizatio↗

A Review of Lightweight Thread Approaches for High Performance Computing

High-level, directive-based solutions are becoming the programming models (PMs) of the multi/many-core architectures. Several solutions relying on operating system (OS) threads perfectly work with a moderate number of cores. However, exascale systems will spawn hundreds of thousands of threads in order to exploit their massive parallel architectures and thus conventional OS threads are too heavy for that purpose. Several lightweight thread (LWT) libraries have recently appeared offering lighter mechanisms to tackle massive concurrency. In order to examine the suitability of LWTs in high-level runtimes, we develop a set of microbenchmarks consisting of commonlyfound patterns in current parallel codes. Moreover, we study the semantics offered by some LWT libraries in order to expose the similarities between different LWT application programming interfaces. This study reveals that a reduced set of LWT functions can be sufficient to cover the common parallel code patterns and that those LWT libraries perform better than OS threads-based solutions in cases where task and nested parallelism are becoming more popular with new architectures.

Castello, Adrian↗

Evaluation of Portable Acceleration Solutions for LArTPC Simulation Using Wire-Cell Toolkit

The Liquid Argon Time Projection Chamber (LArTPC) technology plays an essential role in many current and future neutrino experiments. Accurate and fast simulation is critical to developing efficient analysis algorithms and precise physics model projections. The speed of simulation becomes more important as Deep Learning algorithms are getting more widely used in LArTPC analysis and their training requires a large simulated dataset. Heterogeneous computing is an efficient way to delegate computationally intensive tasks to specialized hardware. However, as the landscape of compute accelerators quickly evolves, it becomes increasingly difficult to manually adapt the code to the latest hardware or software environments. A solution which is portable to multiple hardware architectures without substantially compromising performance would thus be very beneficial, especially for long-term projects such as the LArTPC simulations. In search of a portable, scalable and maintainable software solution for LArTPC simulations, we have started to explore high-level portable programming frameworks that support several hardware backends. In this paper, we present our experience porting the LArTPC simulation code in the Wire-Cell Toolkit to NVIDIA GPUs, first with the CUDA programming model and then with a portable library called Kokkos. Preliminary performance results on NVIDIA V100 GPUs and multi-core CPUs are presented, followed by a discussion of the factors affiecting the performance and plans for future improvements.

Yu, Haiwang↗

New Tabu Algorithm for Positioning Mining Drillholes with Blocks Uncertainty

This paper proposes a new approach to the mining exploration drillholes positioning problem (DPP) that incorporates both geostatistical and optimization techniques. A metaheuristic was developed to solve the DPP taking into account an uncertainty index that quantifies the reliability of the current interpretation of the mineral deposit. The uncertainty index was calculated from multiple deposit realizations obtained by truncated Gaussian simulations conditional to the available drillholes samplings. A linear programming model was defined to select the subset of future drillholes that maximizes coverage of the uncertainty. A Tabu Search algorithm was developed to solve large instances of this set partitioning problem. The proposed Tabu Search algorithm is shown to provide good quality solutions approaching 95% of the optimal solution in a reasonable computing time, allowing close to optimal coverage of uncertainty for a fixed investment in drilling.

58 GEOSCIENCES↗

GPU-accelerated multitiered iterative phasing algorithm for fluctuation X-ray scattering

The multitiered iterative phasing (MTIP) algorithm is used to determine the biological structures of macromolecules from fluctuation scattering data. It is an iterative algorithm that reconstructs the electron density of the sample by matching the computed fluctuation X-ray scattering data to the external observations, and by simultaneously enforcing constraints in real and Fourier space. This paper presents the first ever MTIP algorithm acceleration efforts on contemporary graphics processing units (GPUs). The Compute Unified Device Architecture (CUDA) programming model is used to accelerate the MTIP algorithm on NVIDIA GPUs. The computational performance of the CUDA-based MTIP algorithm implementation outperforms the CPU-based version by an order of magnitude. Furthermore, the Heterogeneous-Compute Interface for Portability (HIP) runtime APIs are used to demonstrate portability by accelerating the MTIP algorithm across NVIDIA and AMD GPUs.

97 MATHEMATICS AND COMPUTING↗

Performance Portability Evaluation of OpenCL Benchmarks across Intel and NVIDIA Platforms

We evaluate the capabilities of vendor-provided OpenCL implementations for performance portability across multiple computing platforms. The Rodinia benchmark suite is used for this evaluation. We apply the metric defined by Pennycook et al., and we use roofline efficiency from the Roofline performance model as the "performance efficiency" in the metric's definition. We found that the delivered performance portability is similar for several benchmarks, even if the roofline-based performance efficiencies across platforms are very different among the benchmarks. To help distinguish between these instances, we extend the metric by adding the standard deviation of the performance efficiencies for each benchmark. We argue that the standard deviation gives additional insight into performance portability assessment since it adds the performance variability across platforms. Additionally, we discuss the challenges to measure performance portability associated with algorithms and system software. In terms of algorithms, we need to carefully construct the benchmarks and appropriately use the concurrency available on a platform. In terms of system software, we depend on the vendor performance tools to support the desired programming model and runtime to be able to measure the metrics of interest.

GPU↗

Exploring Multiscale Earth System and Human-Earth System Dynamics in the Puget Sound Region

With its mountain-to-coast hydroclimate, strong influence of Pacific Ocean weather systems and climate patterns, and unique land use history with strong rural-to-urban gradients, the Puget Sound region is a natural laboratory for studying a number of complex processes in, and interactions among, different Earth and human systems. A 1-year scoping study was initiated by the Earth and Environmental Systems Modeling program of the Department of Energy’s Office of Science Biological and Environmental Research. It was intended to elucidate and highlight the rich opportunities Puget Sound offers to advance our understanding of and ability to simulate Earth system changes and human-Earth system interactions. A literature review, multi-day community workshop, and external input were used to develop this scoping study report. The report first summarizes scientific understanding and knowledge gaps associated with major regional systems, including atmosphere and climate, the land surface, coastal and marine processes, and human systems, as well as how these systems are changing over time. It then highlights some of the most notable extreme events in the region, including heat waves, atmospheric rivers, droughts, and wildfires. Finally, key research opportunities for Earth and environmental systems modeling in, above, and around Puget Sound are highlighted.

54 ENVIRONMENTAL SCIENCES↗

The Multidisciplinary Drifting Observatory for the Study of Arctic Climate (MOSAIC) Atmosphere Science Plan

Arctic climate change is amplified relative to global change, and is embodied by a dramatic decline in the perennial sea-ice pack. These cryospheric transitions carry significant implications for regional resource development, geopolitics, and global climate patterns. Indeed, the changing arctic cryosphere is considered a grand challenge for global climate research. Arctic change, and its linkages with the global system, must be understood. Additionally, there is a growing stakeholder community that requires improved sea-ice forecasting for many applications. To make progress on these important issues requires developing a detailed, process-level understanding of the coupled climate system that can help to address the numerous deficiencies in numerical model representations of the Arctic. Such an understanding is only possible by making targeted, interdisciplinary measurements within the central arctic sea-ice environment. The Multidisciplinary drifting Observatory for the Study of Arctic Climate (MOSAiC) initiative has been developed in response to these great challenges. It comprises three parts: 1) An intensive, icebreaker-based observatory that will freeze in, and drift with, the arctic sea ice for a full annual cycle making interdisciplinary measurements in the atmosphere, sea ice, upper ocean, and biosphere; 2) A distributed network of targeted, autonomous measurements to characterize spatial variability on model grid-box scales; and 3) Coordinated, multiscale analysis and modeling activities. MOSAiC is a major, international effort that will involve participation of many different agencies and entities. The U.S. Department of Energy (DOE) Atmospheric Radiation Measurement (ARM) Climate Research Facility is uniquely positioned to play a critical role in this initiative by providing a comprehensive instrument suite to characterize the atmosphere and its interactions with the sea-ice surface. ARM will deploy its second Mobile Facility (AMF2) and Mobile Aerosol Observing System (MAOS) at the MOSAiC central observatory as it drifts through the central Arctic for a 13-month campaign starting in September 2019. Sea-ice is an integrator of energy fluxes in the coupled arctic climate system; thus, atmosphere-ice-ocean processes impacting the flow of energy through this system in all seasons are the primary target of MOSAiC. The broader, collaborative MOSAiC initiative will allow for many interdisciplinary studies along this theme. ARM’s involvement will target specific areas related to the atmosphere and atmosphere-surface interactions that are critically under-observed in the Arctic, are leading contributors to model uncertainties in the region, and are programmatically important to DOE research and modeling programs. The guiding science themes for this project include: (1) The surface energy budget of sea ice; (2) Clouds and precipitation; (3) Aerosols; and (4) The atmospheric boundary layer. Many fundamental issues concerning these themes are lacking in observational constraints, particularly in the arctic winter and through consecutive seasons. For example, little is known about the energy budget of first-year sea ice, the annual cycle of central arctic aerosol concentrations, the spatial organization of cloud-precipitation systems relative to sea-ice heterogeneity, the winter boundary-layer evolution, or cloud-surface coupling processes over sea ice. The proposed ARM observations will be groundbreaking in many ways, and will ultimately have a dramatic impact on the arctic research community and its ability to represent coupled arctic processes in numerical models.

North Slope of alaska, Arctic sea ice, Barrow, Arc↗