Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “parallel communication”

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 397 records · Page 22

Monolithic Optoelectronic Integrated Circuit

Monolithic optoelectronic integrated circuit (OEIC) receives single digitally modulated input light signal via optical fiber and converts it into 16-channel electrical output signal. Potentially useful in any system in which digital data must be transmitted serially at high rates, then decoded into and used in parallel format at destination. Applications include transmission and decoding of control signals to phase shifters in phased-array antennas and also communication of data between computers and peripheral equipment in local-area networks.

Bhasin, Kul B.↗

An artificial reality environment for remote factory control and monitoring

Work has begun on the merger of two well known systems, VEOS (HITLab) and CLIPS (NASA). In the recent past, the University of Massachusetts Lowell developed a parallel version of NASA CLIPS, called P-CLIPS. This modification allows users to create smaller expert systems which are able to communicate with each other to jointly solve problems. With the merger of a VEOS message system, PCLIPS-V can now act as a group of entities working within VEOS. To display the 3D virtual world we have been using a graphics package called HOOPS, from Ithaca Software. The artificial reality environment we have set up contains actors and objects as found in our Lincoln Logs Factory of the Future project. The environment allows us to view and control the objects within the virtual world. All communication between the separate CLIPS expert systems is done through VEOS. A graphical renderer generates camera views on X-Windows devices; Head Mounted Devices are not required. This allows more people to make use of this technology. We are experimenting with different types of virtual vehicles to give the user a sense that he or she is actually moving around inside the factory looking ahead through windows and virtual monitors.

Kosta, Charles Paul↗

Interface Provides Standard-Bus Communication

Microprocessor-controlled interface (IEEE-488/LVABI) incorporates service-request and direct-memory-access features. Is circuit card enabling digital communication between system called "laser auto-covariance buffer interface" (LVABI) and compatible personal computer via general-purpose interface bus (GPIB) conforming to Institute for Electrical and Electronics Engineers (IEEE) Standard 488. Interface serves as second interface enabling first interface to exploit advantages of GPIB, via utility software written specifically for GPIB. Advantages include compatibility with multitasking and support of communication among multiple computers. Basic concept also applied in designing interfaces for circuits other than LVABI for unidirectional or bidirectional handling of parallel data up to 16 bits wide.

Culliton, William G.↗

Balancing Contention and Synchronization on the Intel Paragon

The Intel Paragon is a mesh-connected distributed memory parallel computer. It uses an oblivious and deterministic message routing algorithm: this permits us to develop highly optimized schedules for frequently needed communication patterns. The complete exchange is one such pattern. Several approaches are available for carrying it out on the mesh. We study an algorithm developed by Scott. This algorithm assumes that a communication link can carry one message at a time and that a node can only transmit one message at a time. It requires global synchronization to enforce a schedule of transmissions. Unfortunately global synchronization has substantial overhead on the Paragon. At the same time the powerful interconnection mechanism of this machine permits 2 or 3 messages to share a communication link with minor overhead. It can also overlap multiple message transmission from the same node to some extent. We develop a generalization of Scott's algorithm that executes complete exchange with a prescribed contention. Schedules that incur greater contention require fewer synchronization steps. This permits us to tradeoff contention against synchronization overhead. We describe the performance of this algorithm and compare it with Scott's original algorithm as well as with a naive algorithm that does not take interconnection structure into account. The Bounded contention algorithm is always better than Scott's algorithm and outperforms the naive algorithm for all but the smallest message sizes. The naive algorithm fails to work on meshes larger than 12 x 12. These results show that due consideration of processor interconnect and machine performance parameters is necessary to obtain peak performance from the Paragon and its successor mesh machines.

Bokhari, Shahid H.↗

Parallel PAB3D: Experiences with a Prototype in MPI

PAB3D is a three-dimensional Navier Stokes solver that has gained acceptance in the research and industrial communities. It takes as computational domain, a set disjoint blocks covering the physical domain. This is the first report on the implementation of PAB3D using the Message Passing Interface (MPI), a standard for parallel processing. We discuss briefly the characteristics of tile code and define a prototype for testing. The principal data structure used for communication is derived from preprocessing "patching". We describe a simple interface (COMMSYS) for MPI communication, and some general techniques likely to be encountered when working on problems of this nature. Last, we identify levels of improvement from the current version and outline future work.

Guerinoni, Fabio↗

An Analysis of Performance Enhancement Techniques for Overset Grid Applications

The overset grid methodology has significantly reduced time-to-solution of high-fidelity computational fluid dynamics (CFD) simulations about complex aerospace configurations. The solution process resolves the geometrical complexity of the problem domain by using separately generated but overlapping structured discretization grids that periodically exchange information through interpolation. However, high performance computations of such large-scale realistic applications must be handled efficiently on state-of-the-art parallel supercomputers. This paper analyzes the effects of various performance enhancement techniques on the parallel efficiency of an overset grid Navier-Stokes CFD application running on an SGI Origin2000 machine. Specifically, the role of asynchronous communication, grid splitting, and grid grouping strategies are presented and discussed. Results indicate that performance depends critically on the level of latency hiding and the quality of load balancing across the processors.

Djomehri, J. J.↗

Performance Enhancement Strategies for Multi-Block Overset Grid CFD Applications

The overset grid methodology has significantly reduced time-to-solution of highfidelity computational fluid dynamics (CFD) simulations about complex aerospace configurations. The solution process resolves the geometrical complexity of the problem domain by using separately generated but overlapping structured discretization grids that periodically exchange information through interpolation. However, high performance computations of such large-scale realistic applications must be handled efficiently on state-of-the-art parallel supercomputers. This paper analyzes the effects of various performance enhancement strategies on the parallel efficiency of an overset grid Navier-Stokes CFD application running on an SGI Origin2000 machinc. Specifically, the role of asynchronous communication, grid splitting, and grid grouping strategies are presented and discussed. Details of a sophisticated graph partitioning technique for grid grouping are also provided. Results indicate that performance depends critically on the level of latency hiding and the quality of load balancing across the processors.

Djomehri, M. Jahed↗

Coarrars for Parallel Processing

The design of the Coarray feature of Fortran 2008 was guided by answering the question "What is the smallest change required to convert Fortran to a robust and efficient parallel language." Two fundamental issues that any parallel programming model must address are work distribution and data distribution. In order to coordinate work distribution and data distribution, methods for communication and synchronization must be provided. Although originally designed for Fortran, the Coarray paradigm has stimulated development in other languages. X10, Chapel, UPC, Titanium, and class libraries being developed for C++ have the same conceptual framework.

Fortran↗

Data Structure and Parallel Decomposition Considerations on a Fibonacci Grid

The Fibonacci grid, proposed by Swinbank and Purser (see companion abstract), provides attractive properties for global numerical atmospheric prediction by offering an optimally homogeneous, geometrically regular, and approximately isotropic discretization, with only the polar regions requiring special numerical treatment. It is a mathematical idealization, applied to the sphere, of the multi-spiral patterns often found in botanical structures, such as in pine cones and sunflower heads. Computationally, it is natural to organize the domain, into zones, in each of which the same pair, or triple, of "Fibonacci spirals" dominate. But the further subdivision of such zones into "tiles" of a shape and size suitable for distribution to the processors of a massively parallel computer requires very careful consideration if the subsequent spatial computations along the respective spirals, especially those computations (such as compact differencing schemes) that involve recursion, can be implemented in an efficient "load-balanced "manner without requiring excessive amounts of inter-processor communications. In this paper we show how certain "number theoretic" properties of the Fibonacci sequence (whose numbers prescribe the multiplicity of successive spirals) may be exploited in the decomposition of grid zones into tidy arrangements of triangular grid tiles, each tile possessing one side approximately parallel to the constant-latitude zone boundary. We also describe how the spatially recursive processes may be decomposed across such a tiling, and the directionality of the recursions reversed on alternate grid lines, to ensure a very high degree of load balancing throughout the execution of the computations required for one time step of a global model.

Michalakes, John↗

Utilizing Gaps and Key Performance Parameters to Inform NASA Environmental Control and Life Support and Human Health and Performance Capability Technology Decisions

Human spaceflight is a complex endeavor requiring a multitude of capabilities for transportation, crew health, scientific goals, and safe return to Earth. The difference between spaceflight proven capabilities and those needed for a particular mission is defined as a capability gap. Capability gaps are not technology specific. Each capability gap is approachable with a wide array of technologies that have unique benefits and challenges. Determining what a capability’s relevant and distinguishing key performance parameters (KPPs) are for a mission is critical. Mass, power, and volume are always constrained and important, but defining these in a way normalized by performance is challenging. Additionally, KPP definition for reliability, dormancy, and integration needs are very important and still evolving. This paper provides the approach of the Environmental Control and Life Support – Crew Health and Performance (ECLSS-CHP) System Capability Leadership Team (SCLT) to defining gaps and KPPs in support of the NASA’s Capabilities Integration Team data call objectives. The nine ECLSS-CHP capability areas are decomposed to capabilities, gaps, and KPPs. Rather than defining very detailed gaps, ECLSS-CHP defines high-level gaps to be technology agnostic. Within a gap, detailed KPPs are defined to both compare technologies and measure progress within a technology over time. Ideally, KPPs are clearly defined, widely communicated both internally and externally, and provide a common nomenclature to describe the state of the art and the degree of improvement required for exploration missions. KPPs help define when the gap is closed and the core mission objectives can be accomplished. Further technology improvements to enhance the capability, as measured by improved KPPs, must then be weighed against investments in open capability gaps that prevent NASA from achieving its exploration missions. It is uncommon that a technology maturation to improve all the relevant KPPs simultaneously but using KPPs is a critical technology investment decision making component. In addition to traditional technology selections, KPPs are informing how investments in ground testing prior to and in parallel with ISS technology demonstrations are required to improve reliability KPPs. The collection of all major technology activities within a capability area are captured on technology roadmaps to communicate how diverse program activities are coordinated to close gaps and infuse into exploration mission needs. A selection of ECLSS-CHP gaps and KPPs and their formulation, current state, and how they inform capability roadmap planning are discussed. The paper will contain a summary of the approximately 60 gaps. Gaps are classified as to their type (architecture, knowledge, technology, developmental, or engineering) depending on the magnitude of the gap. The paper will provide brief overviews of a few major technology challenges and the technologies being considered, but will reference detailed papers for a more thorough treatment of the challenges and state of the art. Data analysis of the gaps is in work and results are not currently available for this abstract. It is anticipated the paper will include examples of select KPPs with descriptions as to why these are the relevant measures. Additionally some KPPs will be graphically presented over time to show progress to date and when performance targets need to be achieved to support exploration missions. Graphical summaries of how gaps closures with near term mission elements support follow-on mission elements will be provided.

Life Support↗

Utilizing Gaps and Key Performance Parameters to Inform NASA Environmental Control and Life Support and Human Health and Performance Capability Technology Decisions

Human spaceflight is a complex endeavor requiring multiple capabilities for transportation, crew health, scientific goals, and safe return to Earth. The difference between spaceflight proven capabilities and those needed for future exploration architectures is defined as a capability gap. Capability gaps are not technology specific. Each capability gap is approachable with a wide array of technologies that have unique benefits and challenges. Determining what a capability’s relevant and distinguishing key performance parameters (KPPs) are for a mission is critical. Mass, power, and volume are always constrained and important, but defining these in a way normalized by performance is challenging. Additionally, KPP definition for reliability, dormancy, and integration needs are very important and still evolving. This paper provides the approach of the Environmental Control and Life Support – Crew Health and Performance (ECLSS-CHP) System Capability Leadership Team (SCLT) has used to define gaps and KPPs in support of the NASA’s Capabilities Integration Team data call objectives. The nine ECLSS-CHP capability areas are decomposed to capabilities with ~76 gaps and supported with KPPs. Rather than defining very detailed gaps, ECLSS-CHP defines high-level gaps to be technology agnostic. Within a gap, detailed KPPs are defined to both compare technologies and measure progress within a technology over time. Ideally, KPPs are clearly defined, widely communicated both internally and externally, and provide a common nomenclature to describe the state of the art and the degree of improvement required for exploration missions. KPPs help define when the gap is closed, and the core mission objectives can be accomplished. Further technology improvements to enhance the capability, as measured by improved KPPs, must then be weighed against investments in open capability gaps that prevent NASA from achieving its exploration missions. It is uncommon that a technology maturation to improve all the relevant KPPs simultaneously but using KPPs is a critical technology investment decision making component. In addition to traditional technology selections, KPPs are informing how investments in ground testing prior to and in parallel with ISS technology demonstrations are required to improve reliability KPPs. The collection of all major technology activities within a capability area are captured on technology roadmaps to communicate how diverse program activities are coordinated to close gaps and infuse into exploration mission needs. A selection of ECLSS-CHP gaps and KPPs and their formulation, current state, and how they inform capability roadmap planning are discussed.

Life Support↗

Moving formal methods into practice. Verifying the FTPP Scoreboard: Results, phase 1

This report documents the Phase 1 results of an effort aimed at formally verifying a key hardware component, called Scoreboard, of a Fault-Tolerant Parallel Processor (FTPP) being built at Charles Stark Draper Laboratory (CSDL). The Scoreboard is part of the FTPP virtual bus that guarantees reliable communication between processors in the presence of Byzantine faults in the system. The Scoreboard implements a piece of control logic that approves and validates a message before it can be transmitted. The goal of Phase 1 was to lay the foundation of the Scoreboard verification. A formal specification of the functional requirements and a high-level hardware design for the Scoreboard were developed. The hardware design was based on a preliminary Scoreboard design developed at CSDL. A main correctness theorem, from which the functional requirements can be established as corollaries, was proved for the Scoreboard design. The goal of Phase 2 is to verify the final detailed design of Scoreboard. This task is being conducted as part of a NASA-sponsored effort to explore integration of formal methods in the development cycle of current fault-tolerant architectures being built in the aerospace industry.

Srivas, Mandayam↗

A Lagrange multiplier based divide and conquer finite element algorithm

A novel domain decomposition method based on a hybrid variational principle is presented. Prior to any computation, a given finite element mesh is torn into a set of totally disconnected submeshes. First, an incomplete solution is computed in each subdomain. Next, the compatibility of the displacement field at the interface nodes is enforced via discrete, polynomial and/or piecewise polynomial Lagrange multipliers. In the static case, each floating subdomain induces a local singularity that is resolved very efficiently. The interface problem associated with this domain decomposition method is, in general, indefinite and of variable size. A dedicated conjugate projected gradient algorithm is developed for solving the latter problem when it is not feasible to explicitly assemble the interface operator. When implemented on local memory multiprocessors, the proposed methodology requires less interprocessor communication than the classical method of substructuring. It is also suitable for parallel/vector computers with shared memory and compares favorably with factorization based parallel direct methods.

Farhat, C.↗

Cell contact as an independent factor modulating cardiac myocyte hypertrophy and survival in long-term primary culture

Cardiac myocytes maintained in cell culture develop hypertrophy both in response to mechanical loading as well as to receptor-mediated signaling mechanisms. However, it has been shown that the hypertrophic response to these stimuli may be modulated through effects of intercellular contact achieved by maintaining cells at different plating densities. In this study, we show that the myocyte plating density affects not only the hypertrophic response and features of the differentiated phenotype of isolated adult myocytes, but also plays a significant role influencing myocyte survival in vitro. The native rod-shaped phenotype of freshly isolated adult myocytes persists in an environment which minimizes myocyte attachment and spreading on the substratum. However, these conditions are not optimal for long-term maintenance of cultured adult cardiac myocytes. Conditions which promote myocyte attachment and spreading on the substratum, on the other hand, also promote the re-establishment of new intercellular contacts between myocytes. These contacts appear to play a significant role in the development of spontaneous activity, which enhances the redevelopment of highly differentiated contractile, junctional, and sarcoplasmic reticulum structures in the cultured adult cardiomyocyte. Although it has previously been shown that adult cardiac myocytes are typically quiescent in culture, the addition of beta-adrenergic agonists stimulates beating and myocyte hypertrophy, and thereby serves to increase the level of intercellular contact as well. However, in densely-plated cultures with intrinsically high levels of intercellular contact, spontaneous contractile activity develops without the addition of beta-adrenergic agonists. In this study, we compare the function, morphology, and natural history of adult feline cardiomyocytes which have been maintained in cultures with different levels of intercellular contact, with and without the addition of beta-adrenergic agonists. Intercellular contact, communication, and transmission of contractile forces between myocytes appears to play a primary role in remodeling the 2-dimensional cell layer into a parallel alignment of elongated myocytes with highly developed intercalated disk-like junctions. This highly differentiated state is very stable, and cultures which achieve this state exhibit significantly greater longevity than more sparsely plated myocytes. These myocytes typically continue beating, and survive from 6 to more than 12 weeks in culture. When this level of contact and differentiation are not achieved, even among beta-adrenergic stimulated myocytes, contractile activity is not sustained, myofibrils atrophy, there is little or no development of junctional complexes, and the period of myocyte viability is typically no more than 5 weeks in vitro.

Non-NASA Center↗

Lunar Terrain Coverage Analysis Data Delivery Workflow

In this work, we are developing a lunar terrain database to enable fast rendering of sun illumination and earth visibility for a proposed coverage analysis tool. This development will advance lunar mission design and formulation for current and future communications architectures, and will aid in lunar surface mission planning and communications/navigation operations. Our effort can be described in three steps: (1) we parallelize a brute force algorithm, which computes elevation masks from laser altimetry data acquired by the Lunar Reconnaissance Orbiter’s (LRO) Lunar Orbiter Laser Altimeter (LOLA); (2) we investigate parallel I/O methods to store terrain mask information from step (1) into a parallel file system; and (3) we finally deliver data to the terrain coverage analysis tool.

Michels, Dominik↗

Impacts of Hybrid Parallelism and Vectorization on the Performance of Newton-Krylov Methods in Computational Aerodynamics

Finding the numerical solution of moderate and high-fidelity aerodynamics problems on modern computer architectures involves, 1) decomposing the domain into smaller regions of nearly equal size, and 2) allocating computational resources for calculations on each domain and communication between domains. Modern computer clusters are composed from hierarchies of processing, memory, and communication resources with varying capabilities and latencies.This paper focuses on the combination of domain decomposition provided by ParMETIS [1]and Newton-Krylov Methods [2–5] for the solution of Computational Aerodynamics problems of interest to NASA. Herein, trade-offs encountered when mapping aerodynamics problems to modern computer architectures are explored through examples and discussions of trade-offs in parallelism from MPI [6], Open MP [7], and vectorization as partition sizes and computational resources are varied. An example of the impact that domain decomposition and MPI+OpenMPresource allocation can have on an adjoint calculation is presented in this abstract. The full paper will include more detailed examples, discussions of difficulties and potential methods to overcome them, and topics identified for future study.

Computational Aerodynamics, Hybrid Parallelism, Ve↗

Novel Highly Parallel and Systolic Architectures Using Quantum Dot-Based Hardware

VLSI technology has made possible the integration of massive number of components (processors, memory, etc.) into a single chip. In VLSI design, memory and processing power are relatively cheap and the main emphasis of the design is on reducing the overall interconnection complexity since data routing costs dominate the power, time, and area required to implement a computation. Communication is costly because wires occupy the most space on a circuit and it can also degrade clock time. In fact, much of the complexity (and hence the cost) of VLSI design results from minimization of data routing. The main difficulty in VLSI routing is due to the fact that crossing of the lines carrying data, instruction, control, etc. is not possible in a plane. Thus, in order to meet this constraint, the VLSI design aims at keeping the architecture highly regular with local and short interconnection. As a result, while the high level of integration has opened the way for massively parallel computation, practical and full exploitation of such a capability in many applications of interest has been hindered by the constraints on interconnection pattern. More precisely. the use of only localized communication significantly simplifies the design of interconnection architecture but at the expense of somewhat restricted class of applications. For example, there are currently commercially available products integrating; hundreds of simple processor elements within a single chip. However, the lack of adequate interconnection pattern among these processing elements make them inefficient for exploiting a large degree of parallelism in many applications.

Fijany, Amir↗

A Navier-Strokes Chimera Code on the Connection Machine CM-5: Design and Performance

We have implemented a three-dimensional compressible Navier-Stokes code on the Connection Machine CM-5. The code is set up for implicit time-stepping on single or multiple structured grids. For multiple grids and geometrically complex problems, we follow the 'chimera' approach, where flow data on one zone is interpolated onto another in the region of overlap. We will describe our design philosophy and give some timing results for the current code. A parallel machine like the CM-5 is well-suited for finite-difference methods on structured grids. The regular pattern of connections of a structured mesh maps well onto the architecture of the machine. So the first design choice, finite differences on a structured mesh, is natural. We use centered differences in space, with added artificial dissipation terms. When numerically solving the Navier-Stokes equations, there are liable to be some mesh cells near a solid body that are small in at least one direction. This mesh cell geometry can impose a very severe CFL (Courant-Friedrichs-Lewy) condition on the time step for explicit time-stepping methods. Thus, though explicit time-stepping is well-suited to the architecture of the machine, we have adopted implicit time-stepping. We have further taken the approximate factorization approach. This creates the need to solve large banded linear systems and creates the first possible barrier to an efficient algorithm. To overcome this first possible barrier we have considered two options. The first is just to solve the banded linear systems with data spread over the whole machine, using whatever fast method is available. This option is adequate for solving scalar tridiagonal systems, but for scalar pentadiagonal or block tridiagonal systems it is somewhat slower than desired. The second option is to 'transpose' the flow and geometry variables as part of the time-stepping process: Start with x-lines of data in-processor. Form explicit terms in x, then transpose so y-lines of data are in-processor. Form explicit terms in y, then transpose so z-lines are in processor. Form explicit terms in z, then solve linear systems in the z-direction. Transpose to the y-direction, then solve linear systems in the y-direction. Finally transpose to the x direction and solve linear systems in the x-direction. This strategy avoids inter-processor communication when differencing and solving linear systems, but requires a large amount of communication when doing the transposes. The transpose method is more efficient than the non-transpose strategy when dealing with scalar pentadiagonal or block tridiagonal systems. For handling geometrically complex problems the chimera strategy was adopted. For multiple zone cases we compute on each zone sequentially (using the whole parallel machine), then send the chimera interpolation data to a distributed data structure (array) laid out over the whole machine. This information transfer implies an irregular communication pattern, and is the second possible barrier to an efficient algorithm. We have implemented these ideas on the CM-5 using CMF (Connection Machine Fortran), a data parallel language which combines elements of Fortran 90 and certain extensions, and which bears a strong similarity to High Performance Fortran. We make use of the Connection Machine Scientific Software Library (CMSSL) for the linear solver and array transpose operations.

Jespersen, Dennis C.↗