Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “distributed and parallel processing”

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 163 records · Page 9

Electron Bulk Acceleration and Thermalization at Earth's Quasiperpendicular Bow Shock

Electron heating at Earth's quasiperpendicular bow shock has been surmised to be due to the combined effects of a quasistatic electric potential and scattering through wave-particle interaction. Here we report the observation of electron distribution functions indicating a new electron heating process occurring at the leading edge of the shock front. Incident solar wind electrons are accelerated parallel to the magnetic field toward downstream, reaching an electron-ion relative drift speed exceeding the electron thermal speed. The bulk acceleration is associated with an electric field pulse embedded in a whistler-mode wave. The high electron-ion relative drift is relaxed primarily through a nonlinear current-driven instability. The relaxed distributions contain a beam traveling toward the shock as a remnant of the accelerated electrons. Similar distribution functions prevail throughout the shock transition layer, suggesting that the observedacceleration and thermalization is essential to the cross-shock electron heating.

Chen, L.-J.↗

Parallelization of Program to Optimize Simulated Trajectories (POST3D)

This paper describes the parallelization of the Program to Optimize Simulated Trajectories (POST3D). POST3D uses a gradient-based optimization algorithm that reaches an optimum design point by moving from one design point to the next. The gradient calculations required to complete the optimization process, dominate the computational time and have been parallelized using a Single Program Multiple Data (SPMD) on a distributed memory NUMA (non-uniform memory access) architecture. The Origin2000 was used for the tests presented.

Hammond, Dana P.↗

Distributed computing feasibility in a non-dedicated homogeneous distributed system

The low cost and availability of clusters of workstations have lead researchers to re-explore distributed computing using independent workstations. This approach may provide better cost/performance than tightly coupled multiprocessors. In practice, this approach often utilizes wasted cycles to run parallel jobs. The feasibility of such a non-dedicated parallel processing environment assuming workstation processes have preemptive priority over parallel tasks is addressed. An analytical model is developed to predict parallel job response times. Our model provides insight into how significantly workstation owner interference degrades parallel program performance. A new term task ratio, which relates the parallel task demand to the mean service demand of nonparallel workstation processes, is introduced. It was proposed that task ratio is a useful metric for determining how large the demand of a parallel applications must be in order to make efficient use of a non-dedicated distributed system.

Leutenegger, Scott T.↗

Feasibility Study of Distributed Decision-Making on the Edge for Urban Air Mobility

The Concept of Operations for Urban Air Mobility (UAM) put forward by FAA, NASA, and several industry stakeholders acknowledges the diversity and complexity in UAM operations and, thereby, envisions a federated architecture for UAM management. In this architecture, the decision-making is distributed to a set of service providers who collectively manage the shared airspace usage by different stakeholders. This notionally brings autonomy closer to the UAM businesses and encourages to explore the feasibility of decision making on the very edge, which is the topic of the presented research. This paper reports research conducted on the hypothesis based on which the residual compute capability onboard smart unmanned aerial systems (UASs) is utilized to build situational awareness and resolve conflicts by passive and active coordination among multiple UASs, thereby implementing a layer of distributed autonomy in UAM. Key features of the edge-computing approach involve inter-UAS information exchange, independent assessment of own flight and environmental conditions, and estimation of other UASs’ flight preferences, incorporating machine learning techniques in the last two. Parallel computing on portable graphics processing unit (GPU) enables the machine learning workflow on the edge. A custom-built 3D simulator is used to evaluate the efficacy of the distributed decision-making on the edge. Each edge node, representing a smart UAS, connects to the simulator from a remote location and independently controls the behavior of the corresponding virtual asset in the simulator, analogous to participants in an online multi-player game. The presented edge-computing-based distributed decision-making framework is envisioned to pave the way for collective mobility of autonomous air vehicles in the future shared airspace, while allowing the inclusion of the business preferences of the UAS operators within allowed regulatory limits.

Edge computing↗

Feasibility Study of Distributed Decision-Making on the Edge for Urban Air Mobility

The Concept of Operations for Urban Air Mobility (UAM) put forward by FAA, NASA, and several industry stakeholders acknowledges the diversity and complexity in UAM operations and, thereby, envisions a federated architecture for UAM management. In this architecture, the decision-making is distributed to a set of service providers who collectively manage the shared airspace usage by different stakeholders. This notionally brings autonomy closer to the UAM businesses and encourages to explore the feasibility of decision making on the very edge, which is the topic of the presented research. This paper reports research conducted on the hypothesis based on which the residual compute capability onboard smart unmanned aerial systems (UASs) is utilized to build situational awareness and resolve conflicts by passive and active coordination among multiple UASs, thereby implementing a layer of distributed autonomy in UAM. Key features of the edge-computing approach involve inter-UAS information exchange, independent assessment of own flight and environmental conditions, and estimation of other UASs’ flight preferences, incorporating machine learning techniques in the last two. Parallel computing on portable graphics processing unit (GPU) enables the machine learning workflow on the edge. A custom-built 3D simulator is used to evaluate the efficacy of the distributed decision-making on the edge. Each edge node, representing a smart UAS, connects to the simulator from a remote location and independently controls the behavior of the corresponding virtual asset in the simulator, analogous to participants in an online multi-player game. The presented edge-computing-based distributed decision-making framework is envisioned to pave the way for collective mobility of autonomous air vehicles in the future shared airspace, while allowing the inclusion of the business preferences of the UAS operators within allowed regulatory limits.

Edge computing↗

Spaceborne Processor Array

A Spaceborne Processor Array in Multifunctional Structure (SPAMS) can lower the total mass of the electronic and structural overhead of spacecraft, resulting in reduced launch costs, while increasing the science return through dynamic onboard computing. SPAMS integrates the multifunctional structure (MFS) and the Gilgamesh Memory, Intelligence, and Network Device (MIND) multi-core in-memory computer architecture into a single-system super-architecture. This transforms every inch of a spacecraft into a sharable, interconnected, smart computing element to increase computing performance while simultaneously reducing mass. The MIND in-memory architecture provides a foundation for high-performance, low-power, and fault-tolerant computing. The MIND chip has an internal structure that includes memory, processing, and communication functionality. The Gilgamesh is a scalable system comprising multiple MIND chips interconnected to operate as a single, tightly coupled, parallel computer. The array of MIND components shares a global, virtual name space for program variables and tasks that are allocated at run time to the distributed physical memory and processing resources. Individual processor- memory nodes can be activated or powered down at run time to provide active power management and to configure around faults. A SPAMS system is comprised of a distributed Gilgamesh array built into MFS, interfaces into instrument and communication subsystems, a mass storage interface, and a radiation-hardened flight computer.

Chow, Edward T.↗

Mapping a battlefield simulation onto message-passing parallel architectures

Perhaps the most critical problem in distributed simulation is that of mapping: without an effective mapping of workload to processors the speedup potential of parallel processing cannot be realized. Mapping a simulation onto a message-passing architecture is especially difficult when the computational workload dynamically changes as a function of time and space; this is exactly the situation faced by battlefield simulations. This paper studies an approach where the simulated battlefield domain is first partitioned into many regions of equal size; typically there are more regions than processors. The regions are then assigned to processors; a processor is responsible for performing all simulation activity associated with the regions. The assignment algorithm is quite simple and attempts to balance load by exploiting locality of workload intensity. The performance of this technique is studied on a simple battlefield simulation implemented on the Flex/32 multiprocessor. Measurements show that the proposed method achieves reasonable processor efficiencies. Furthermore, the method shows promise for use in dynamic remapping of the simulation.

Nicol, David M.↗

Implementing Access to Data Distributed on Many Processors

A reference architecture is defined for an object-oriented implementation of domains, arrays, and distributions written in the programming language Chapel. This technology primarily addresses domains that contain arrays that have regular index sets with the low-level implementation details being beyond the scope of this discussion. What is defined is a complete set of object-oriented operators that allows one to perform data distributions for domain arrays involving regular arithmetic index sets. What is unique is that these operators allow for the arbitrary regions of the arrays to be fragmented and distributed across multiple processors with a single point of access giving the programmer the illusion that all the elements are collocated on a single processor. Today's massively parallel High Productivity Computing Systems (HPCS) are characterized by a modular structure, with a large number of processing and memory units connected by a high-speed network. Locality of access as well as load balancing are primary concerns in these systems that are typically used for high-performance scientific computation. Data distributions address these issues by providing a range of methods for spreading large data sets across the components of a system. Over the past two decades, many languages, systems, tools, and libraries have been developed for the support of distributions. Since the performance of data parallel applications is directly influenced by the distribution strategy, users often resort to low-level programming models that allow fine-tuning of the distribution aspects affecting performance, but, at the same time, are tedious and error-prone. This technology presents a reusable design of a data-distribution framework for data parallel high-performance applications. Distributions are a means to express locality in systems composed of large numbers of processor and memory components connected by a network. Since distributions have a great effect on the performance of applications, it is important that the distribution strategy is flexible, so its behavior can change depending on the needs of the application. At the same time, high productivity concerns require that the user be shielded from error-prone, tedious details such as communication and synchronization.

James, Mark↗

Orchestrator Telemetry Processing Pipeline

Orchestrator is a software application infrastructure for telemetry monitoring, logging, processing, and distribution. The architecture has been applied to support operations of a variety of planetary rovers. Built in Java with the Eclipse Rich Client Platform, Orchestrator can run on most commonly used operating systems. The pipeline supports configurable parallel processing that can significantly reduce the time needed to process a large volume of data products. Processors in the pipeline implement a simple Java interface and declare their required input from upstream processors. Orchestrator is programmatically constructed by specifying a list of Java processor classes that are initiated at runtime to form the pipeline. Input dependencies are checked at runtime. Fault tolerance can be configured to attempt continuation of processing in the event of an error or failed input dependency if possible, or to abort further processing when an error is detected. This innovation also provides support for Java Message Service broadcasts of telemetry objects to clients and provides a file system and relational database logging of telemetry. Orchestrator supports remote monitoring and control of the pipeline using browser-based JMX controls and provides several integration paths for pre-compiled legacy data processors. At the time of this reporting, the Orchestrator architecture has been used by four NASA customers to build telemetry pipelines to support field operations. Example applications include high-volume stereo image capture and processing, simultaneous data monitoring and logging from multiple vehicles. Example telemetry processors used in field test operations support include vehicle position, attitude, articulation, GPS location, power, and stereo images.

Powell, Mark↗

A New Architecture for Parallelization of Complex Spacecraft Trajectory Optimization Scans

This paper describes CopScanner, a new component of the Copernicus ecosystem for spacecraft trajectory design and optimization. CopScanner is a Python library being developed at the NASA JSC which enables easy parallelization of Copernicus scans. CopScanner is currently being developed and implemented for production of Copernicus trajectory scans for upcoming Artemis Missions (Artemis II and beyond). On the backend, CopScanner utilizes Dask, an open-source Python library for parallel computing which enables parallelization over both multi-core local machines and large-scale distributed computing clusters. CopScanner abstracts the trajectory scanning process into a DAG which is constructed using a chain of individual subscans. Each node in the DAG executes a python module, called the callable, for which there are built-in defaults, or users may specify their own. Support for custom callables makes CopScanner a versatile trajectory optimization software. All output files and associated metadata from a CopScanner scan are compressed and stored in a two-file output, collectively called the FileStore, consisting of a SQLite database and a compressed JSON MessagePack file, for which CopScanner provides a Python class for interaction.

Quentin Moore↗

Development of pitch angle anisotropy and velocity diffusion of pickup ion shell distribution by solar wind turbulence

The evolution of pitch angle anisotropy in initially isotropic spherical shell distribution of pickup ions subjected to a continuous influence of weak or moderate intrinsic solar wind turbulence is investigated using a physical model which assumes that the wave of the solar wind turbulence is propagating mainly in the direction parallel to the ambient magnetic field. It is shown that, because of the pitch angle dependence of the velocity diffusion process, a significant pitch angle anisotropy of pickup ion shell distribution develops in the early stage of the diffusion process. Although it is smeared out later on, the result can be of significant importance, especially if the pickup ion density is large, because the pitch angle anisotropy can excite collective instabilities and increase the wave level, thus accelerating the diffusion process.

Yoon, Peter H.↗

By Hand or Not By-Hand: A Case Study of Alternative Approaches to Parallelize CFD Applications

While parallel processing promises to speed up applications by several orders of magnitude, the performance achieved still depends upon several factors, including the multiprocessor architecture, system software, data distribution and alignment, as well as the methods used for partitioning the application and mapping its components onto the architecture. The existence of the Gorden Bell Prize given out at Supercomputing every year suggests that while good performance can be attained for real applications on general purpose multiprocessors, the large investment in man-power and time still has to be repeated for each application-machine combination. As applications and machine architectures become more complex, the cost and time-delays for obtaining performance by hand will become prohibitive. Computer users today can turn to three possible avenues for help: parallel libraries, parallel languages and compilers, interactive parallelization tools. The success of these methodologies, in turn, depends on proper application of data dependency analysis, program structure recognition and transformation, performance prediction as well as exploitation of user supplied knowledge. NASA has been developing multidisciplinary applications on highly parallel architectures under the High Performance Computing and Communications Program. Over the past six years, the transition of underlying hardware and system software have forced the scientists to spend a large effort to migrate and recede their applications. Various attempts to exploit software tools to automate the parallelization process have not produced favorable results. In this paper, we report our most recent experience with CAPTOOL, a package developed at Greenwich University. We have chosen CAPTOOL for three reasons: 1. CAPTOOL accepts a FORTRAN 77 program as input. This suggests its potential applicability to a large collection of legacy codes currently in use. 2. CAPTOOL employs domain decomposition to obtain parallelism. Although the fact that not all kinds of parallelism are handled may seem unappealing, many NASA applications in computational aerosciences as well as earth and space sciences are amenable to domain decomposition. 3. CAPTOOL generates code for a large variety of environments employed across NASA centers: MPI/PVM on network of workstations to the IBS/SP2 and CRAY/T3D.

Yan, Jerry C.↗

MEDUSA - An overset grid flow solver for network-based parallel computer systems

Continuing improvement in processing speed has made it feasible to solve the Reynolds-Averaged Navier-Stokes equations for simple three-dimensional flows on advanced workstations. Combining multiple workstations into a network-based heterogeneous parallel computer allows the application of programming principles learned on MIMD (Multiple Instruction Multiple Data) distributed memory parallel computers to the solution of larger problems. An overset-grid flow solution code has been developed which uses a cluster of workstations as a network-based parallel computer. Inter-process communication is provided by the Parallel Virtual Machine (PVM) software. Solution speed equivalent to one-third of a Cray-YMP processor has been achieved from a cluster of nine commonly used engineering workstation processors. Load imbalance and communication overhead are the principal impediments to parallel efficiency in this application.

Smith, Merritt H.↗

Systems simulations supporting NASA telerobotics

Two simulation and analysis environments have been developed to support telerobotics research at the Langley Research Center. One is a high-fidelity, nonreal-time, interactive model called ROBSIM, which combines user-generated models of workspace environment, robots, and loads into a working system and simulates the interaction among the system components. Models include user-specified actuator, sensor, and control parameters, as well as kinematic and dynamic characteristics. Kinematic, dynamic, and response analyses can be selected, with system configuration, task trajectories, and arm states displayed using computer graphics. The second environment is a real-time, manned Telerobotic Systems Simulation (TRSS) which uses the facilities of the Intelligent Systems Research Laboratory (ISRL). It utilizes a hierarchical structure of functionally distributed computers communicating over both parallel and high-speed serial data paths to enable studies of advanced telerobotic systems. Multiple processes perform motion planning, operator communications, forward and inverse kinematics, control/sensor fusion, and I/O processing while communicating via common memory. This paper describes both ROBSIM and TRSS, including their capability, status, and future plans. Also described is the architecture of ISRL and recent telerobotic system studies in ISRL.

Harrison, F. Wallace, Jr.↗

Systems simulations supporting NASA telerobotics

Two simulation and analysis environments have been developed to support telerobotics research at the Langley Research Center. One is a high-fidelity, nonreal-time, interactive model called ROBSIM, which combines user-generated models of workspace environment, robots, and loads into a working system and simulates the interaction among the system components. Models include user-specified actuator, sensor, and control parameters, as well as kinematic and dynamic characteristics. Kinematic, dynamic, and response analyses can be selected, with system configuration, task trajectories, and arm states displayed using computer graphics. The second environment is a real-time, manned Telerobotic Systems Simulation (TRSS) which uses the facilities of the Intelligent Systems Research Laboratory (ISRL). It utilizes a hierarchical structure of functionally distributed computers communicating over both parallel and high-speed serial data paths to enable studies of advanced telerobotic systems. Multiple processes perform motion planning, operator communications, forward and inverse kinematics, control/sensor fusion, and I/O processing while communicating via common memory. Both ROBSIM and TRSS, including their capability, status, and future plans are discussed. Also described is the architecture of ISRL and recent telerobotic system studies in ISRL.

Harrison, F. W., Jr.↗

Time Warp Operating System (TWOS)

Designed to support parallel discrete-event simulation, TWOS is complete implementation of Time Warp mechanism - distributed protocol for virtual time synchronization based on process rollback and message annihilation.

Bellenot, Steven F.↗

High density packaging and interconnect of massively parallel image processors

This paper presents conceptual designs for high density packaging of parallel processing systems. The systems fall into two categories: global memory systems where many processors are packaged into a stack, and distributed memory systems where a single processor and many memory chips are packaged into a stack. Thermal behavior and performance are discussed.

Carson, John C.↗

On the High- and Low- Altitude Limits of the Auroral Electric Field Region

Using measurements from the High Altitude Plasma Instrument (HAPI) on the Dynamics-Explorer 1 (DE-1) spacecraft and the Low Altitude Plasma Instrument (LAPI) on Dynamics Explorer 2 (DE 2), we investigate both die high altitude and low altitude extents of the auroral acceleration region. To infer the high altitude limit, we searched the HAPI data base for evidence of upward-directed auroral electric fields located above the spacecraft when the HAPI spacecraft is above 9000 km altitude. We find that such acceleration is common when DE-1 flies through die auroral oval at an altitude of 9,000-11,000 km. At altitudes above 11,000 km, the fraction of the orbits with evidence of at least a 1000 V potential drop above the spacecraft falls, becoming essentially zero above an altitude of 15,000 km. Above that altitude, small (100 V) potential drops are frequently observed, but only rarely are approx. 1 kV potentials observed, typically associated with polar cap or 'theta' arcs or westward traveling surges. To investigate the low-altitude limit of the auroral acceleration region, we use conjunctions of DE 1 and DE 2 along auroral field lines and match the upgoing fluxes of ionospheric ions observed by DE 2 with the flux of accelerated upgoing ions observed at DE 1. Calculating the ionospheric scale height from the ion and electron temperatures and assuming that the parallel flow velocity is independent of height above 800 km, we calculate the altitude at which the upwelling ionospheric ions are effectively completely lost to upward acceleration. The initial lowest-altitude acceleration process could be either a perpendicular acceleration or a parallel electric field, but it must be sufficient to give the entire distribution escape energy. We find that in the two cases studied, near the region of peak auroral potential drop the altitude of this acceleration was around 1700 km (near the O/H neutral crossover altitude), but was significantly higher (approx. 2000 km) near the edges of the arc, where the potential was lower. The composition of the upgoing ion beam was consistent with these heights, being predominately H(+) near the edges and O(+) near the peak.

Reiff, P. H.↗