Search NASA⌕ Search

SEARCH · Search NASA

Results for “caching”

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 343 records · Page 19

Globalized Newton-Krylov-Schwarz Algorithms and Software for Parallel Implicit CFD

Implicit solution methods are important in applications modeled by PDEs with disparate temporal and spatial scales. Because such applications require high resolution with reasonable turnaround, "routine" parallelization is essential. The pseudo-transient matrix-free Newton-Krylov-Schwarz (Psi-NKS) algorithmic framework is presented as an answer. We show that, for the classical problem of three-dimensional transonic Euler flow about an M6 wing, Psi-NKS can simultaneously deliver: globalized, asymptotically rapid convergence through adaptive pseudo- transient continuation and Newton's method-, reasonable parallelizability for an implicit method through deferred synchronization and favorable communication-to-computation scaling in the Krylov linear solver; and high per- processor performance through attention to distributed memory and cache locality, especially through the Schwarz preconditioner. Two discouraging features of Psi-NKS methods are their sensitivity to the coding of the underlying PDE discretization and the large number of parameters that must be selected to govern convergence. We therefore distill several recommendations from our experience and from our reading of the literature on various algorithmic components of Psi-NKS, and we describe a freely available, MPI-based portable parallel software implementation of the solver employed here.

Gropp, W. D.↗

Human Exploration of Mars: The Reference Mission of the NASA Mars Exploration Study Team

The Reference Mission was developed over a period of several years and was published in NASA Special Publication 6107 in July 1997. The purpose of the Reference Mission was to provide a workable model for the human exploration of Mars, which is described in enough detail that alternative strategies and implementations can be compared and evaluated. NASA is continuing to develop the Reference Mission and expects to update this report in the near future. It was the purpose of the Reference Mission to develop scenarios based on the needs of scientists and explorers who want to conduct research on Mars; however, more work on the surface-mission aspects of the Reference Mission is required and is getting under way. Some aspects of the Reference Mission that are important for the consideration of the surface mission definition include: (1) a split mission strategy, which arrives at the surface two years before the arrival of the first crew; (2) three missions to the outpost site over a 6-year period; (3) a plant capable of producing rocket propellant for lifting off Mars and caches of water, O, and inert gases for the life-support system; (4) a hybrid physico-chemical/bioregenerative life-support system, which emphasizes the bioregenerative system more in later parts of the scenario; (5) a nuclear reactor power supply, which provides enough power for all operations, including the operation of a bioregenerative life-support system as well as the propellant and consumable plant; (6) capability for at least two people to be outside the habitat each day of the surface stay; (7) telerobotic and human-operated transportation vehicles, including a pressurized rover capable of supporting trips of several days' duration from the habitat; (7) crew stay times of 500 days on the surface, with six-person crews; and (8) multiple functional redundancies to reduce risks to the crews on the surface. New concepts are being sought that would reduce the overall cost for this exploration program and reducing the risks that are indigenous to Mars exploration. Among those areas being explored are alternative space propulsion approaches, solar vs. nuclear power, and reductions in the size of crews.

Connolly, John↗

Parallel Implementation of the Discontinuous Galerkin Method

This paper describes a parallel implementation of the discontinuous Galerkin method. Discontinuous Galerkin is a spatially compact method that retains its accuracy and robustness on non-smooth unstructured grids and is well suited for time dependent simulations. Several parallelization approaches are studied and evaluated. The most natural and symmetric of the approaches has been implemented in all object-oriented code used to simulate aeroacoustic scattering. The parallel implementation is MPI-based and has been tested on various parallel platforms such as the SGI Origin, IBM SP2, and clusters of SGI and Sun workstations. The scalability results presented for the SGI Origin show slightly superlinear speedup on a fixed-size problem due to cache effects.

Baggag, Abdalkader↗

Mars Surveyor Program 2001 Mission Overview

The Mars Surveyor 2001 mission to Mars was initially a key element in the Mars sample return sequence of missions. A capable rover, carrying the Cornell Athena instruments would be placed on Mars to roam over several kilometers, select samples, and place them in a cache for return by a subsequent mission. Inevitably, budget constraints forced descopes. At one critical point, the landed payload consisted only of the HEDS (Human Exploration and Development of Space) payloads selected for testing environmental properties of the surface for future human exploration. Then Congress intervened and put back some of the funding that had been deleted. NASA next redefined the payload to include as many of the Athena instruments as possible, to be distributed between the lander deck and a Sojourner class rover. This payload would then be placed on a modified version of the Mars Polar Lander rather than on the much larger, and more expensive, lander that had been originally designed for the mission. With this functionality restored the '01 mission remains an important and pivotal element of the Mars Surveyor program. It completes the Mars Observer objectives with the gamma ray spectrometer mapping. This mission will largely complete the global characterization phase of Mars exploration and mark the beginning of focused surface exploration leading to return of the first samples and the search for evidence of past Martian life. MSP'01 also is the first mission in the combined Mars exploration strategy of the HEDS and Space Science Enterprises of NASA. This mission, and those to follow, will demonstrate technologies and collect environmental data that will provide the basis for a decision to send humans to Mars. The NASA exploration strategy for Mars includes orbiters, landers and rovers launched in 2001 and 2003 and a sample return mission to be launched in 2005, returning a sample by 2008. The purpose of the rovers is to explore and characterize sites on Mars. The 2003 and 2005 missions will select rocks, soil, and atmosphere for return to earth.

Saunders, R. Stephen↗

Thermal Infrared Spectroscopy from Mars Landers and Rovers: A New Angle on Remote Sensing

The MINUTES instrument of the Athena Precursor Experiment (APEX) on the Mars Surveyor 2001 lander mission will perform the first thermal infrared remote sensing observations from the surface of another planet. Experience gained from this experiment will be used to guide observations from identical instruments mounted on the Athena rovers, to be launched in 2003 and 2005. The utility of infrared spectrometers in determining the mineralogic composition of geologic surfaces from airborne and spaceborne platforms has been amply demonstrated. However, relatively little experience exists in using functionally similar instruments on the ground in the context of planetary science. What work has been done on this problem has mostly utilized field spectrometers that are designed to look down on nearby target rocks. While many Mini-TES observations will be made with this type of geometry, it is likely that other observations will be made looking horizontally at the more vertically-oriented facets of rock targets, to avoid spectral contamination from dust mantles. On rover missions, the Mini-TES may also be pointed horizontally at rocks several meters away, to determine if they are worthy of approaching for in situ observations and possible sample cacheing. While these observations will undoubtedly prove useful, there are important, and perhaps unappreciated, differences between horizontal-viewing, surface-based spectroscopy and the more traditional nadir-viewing, orbit or aircraft-based observations. Plans also exist to step the Mini-TES in a rastering motion to build hyperspectral scenes. Horizontal viewing hyperspectral cubes also possess unique qualities that call for innovative analysis techniques. The effect of viewing geometry: In thermal emission spectroscopy, regardless of whether an instrument is looking down on or horizontally at a target, the same basic equation governs the radiance reaching the sensor .

Moersch, J.↗

FIDO - Video File

Field Integrated Design and Operations (FIDO) rover is a prototype of the Mars Sample Return rovers that will carry the integrated Athena Science Payload to Mars in 2003 and 2005. The purpose of FIDO is to simulate, using Mars analog settings, the complex surface operations that will be necessary to find, characterize, obtain, cache, and return samples to the ascent vehicles on the landers. This videotape shows tests of the FIDO in the Mojave Desert. These tests include drilling through rock and movement of the rover. Also included in this tape are interviews with Dr Raymond Arvidson, the test director for FIDO, and Dr. Eric Baumgartner, Robotics Engineer at the Jet Propulsion Laboratory.

Source record↗

Parallel performance investigations of an unstructured mesh Navier-Stokes solver

A Reynolds-averaged Navier-Stokes solver based on unstructured mesh techniques for analysis of high-lift configurations is described. The method makes use of an agglomeration multigrid solver for convergence acceleration. Implicit line-smoothing is employed to relieve the stiffness associated with highly stretched meshes. A GMRES technique is also implemented to speed convergence at the expense of additional memory usage. The solver is cache efficient and fully vectorizable, and is parallelized using a two-level hybrid MPI-OpenMP implementation suitable for shared and/or distributed memory architectures, as well as clusters of shared memory machines. Convergence and scalability results are illustrated for various high-lift cases.

Mavriplis, Dimitri J.↗

Testing New Programming Paradigms with NAS Parallel Benchmarks

Over the past decade, high performance computing has evolved rapidly, not only in hardware architectures but also with increasing complexity of real applications. Technologies have been developing to aim at scaling up to thousands of processors on both distributed and shared memory systems. Development of parallel programs on these computers is always a challenging task. Today, writing parallel programs with message passing (e.g. MPI) is the most popular way of achieving scalability and high performance. However, writing message passing programs is difficult and error prone. Recent years new effort has been made in defining new parallel programming paradigms. The best examples are: HPF (based on data parallelism) and OpenMP (based on shared memory parallelism). Both provide simple and clear extensions to sequential programs, thus greatly simplify the tedious tasks encountered in writing message passing programs. HPF is independent of memory hierarchy, however, due to the immaturity of compiler technology its performance is still questionable. Although use of parallel compiler directives is not new, OpenMP offers a portable solution in the shared-memory domain. Another important development involves the tremendous progress in the internet and its associated technology. Although still in its infancy, Java promisses portability in a heterogeneous environment and offers possibility to "compile once and run anywhere." In light of testing these new technologies, we implemented new parallel versions of the NAS Parallel Benchmarks (NPBs) with HPF and OpenMP directives, and extended the work with Java and Java-threads. The purpose of this study is to examine the effectiveness of alternative programming paradigms. NPBs consist of five kernels and three simulated applications that mimic the computation and data movement of large scale computational fluid dynamics (CFD) applications. We started with the serial version included in NPB2.3. Optimization of memory and cache usage was applied to several benchmarks, noticeably BT and SP, resulting in better sequential performance. In order to overcome the lack of an HPF performance model and guide the development of the HPF codes, we employed an empirical performance model for several primitives found in the benchmarks. We encountered a few limitations of HPF, such as lack of supporting the "REDISTRIBUTION" directive and no easy way to handle irregular computation. The parallelization with OpenMP directives was done at the outer-most loop level to achieve the largest granularity. The performance of six HPF and OpenMP benchmarks is compared with their MPI counterparts for the Class-A problem size in the figure in next page. These results were obtained on an SGI Origin2000 (195MHz) with MIPSpro-f77 compiler 7.2.1 for OpenMP and MPI codes and PGI pghpf-2.4.3 compiler with MPI interface for HPF programs.

Jin, H.↗

Use Computer-Aided Tools to Parallelize Large CFD Applications

Porting applications to high performance parallel computers is always a challenging task. It is time consuming and costly. With rapid progressing in hardware architectures and increasing complexity of real applications in recent years, the problem becomes even more sever. Today, scalability and high performance are mostly involving handwritten parallel programs using message-passing libraries (e.g. MPI). However, this process is very difficult and often error-prone. The recent reemergence of shared memory parallel (SMP) architectures, such as the cache coherent Non-Uniform Memory Access (ccNUMA) architecture used in the SGI Origin 2000, show good prospects for scaling beyond hundreds of processors. Programming on an SMP is simplified by working in a globally accessible address space. The user can supply compiler directives, such as OpenMP, to parallelize the code. As an industry standard for portable implementation of parallel programs for SMPs, OpenMP is a set of compiler directives and callable runtime library routines that extend Fortran, C and C++ to express shared memory parallelism. It promises an incremental path for parallel conversion of existing software, as well as scalability and performance for a complete rewrite or an entirely new development. Perhaps the main disadvantage of programming with directives is that inserted directives may not necessarily enhance performance. In the worst cases, it can create erroneous results. While vendors have provided tools to perform error-checking and profiling, automation in directive insertion is very limited and often failed on large programs, primarily due to the lack of a thorough enough data dependence analysis. To overcome the deficiency, we have developed a toolkit, CAPO, to automatically insert OpenMP directives in Fortran programs and apply certain degrees of optimization. CAPO is aimed at taking advantage of detailed inter-procedural dependence analysis provided by CAPTools, developed by the University of Greenwich, to reduce potential errors made by users. Earlier tests on NAS Benchmarks and ARC3D have demonstrated good success of this tool. In this study, we have applied CAPO to parallelize three large applications in the area of computational fluid dynamics (CFD): OVERFLOW, TLNS3D and INS3D. These codes are widely used for solving Navier-Stokes equations with complicated boundary conditions and turbulence model in multiple zones. Each one comprises of from 50K to 1,00k lines of FORTRAN77. As an example, CAPO took 77 hours to complete the data dependence analysis of OVERFLOW on a workstation (SGI, 175MHz, R10K processor). A fair amount of effort was spent on correcting false dependencies due to lack of necessary knowledge during the analysis. Even so, CAPO provides an easy way for user to interact with the parallelization process. The OpenMP version was generated within a day after the analysis was completed. Due to sequential algorithms involved, code sections in TLNS3D and INS3D need to be restructured by hand to produce more efficient parallel codes. An included figure shows preliminary test results of the generated OVERFLOW with several test cases in single zone. The MPI data points for the small test case were taken from a handcoded MPI version. As we can see, CAPO's version has achieved 18 fold speed up on 32 nodes of the SGI O2K. For the small test case, it outperformed the MPI version. These results are very encouraging, but further work is needed. For example, although CAPO attempts to place directives on the outer- most parallel loops in an interprocedural framework, it does not insert directives based on the best manual strategy. In particular, it lacks the support of parallelization at the multi-zone level. Future work will emphasize on the development of methodology to work in a multi-zone level and with a hybrid approach. Development of tools to perform more complicated code transformation is also needed.

Jin, H.↗

Performance Modeling and Measurement of Parallelized Code for Distributed Shared Memory Multiprocessors

This paper presents a model to evaluate the performance and overhead of parallelizing sequential code using compiler directives for multiprocessing on distributed shared memory (DSM) systems. With increasing popularity of shared address space architectures, it is essential to understand their performance impact on programs that benefit from shared memory multiprocessing. We present a simple model to characterize the performance of programs that are parallelized using compiler directives for shared memory multiprocessing. We parallelized the sequential implementation of NAS benchmarks using native Fortran77 compiler directives for an Origin2000, which is a DSM system based on a cache-coherent Non Uniform Memory Access (ccNUMA) architecture. We report measurement based performance of these parallelized benchmarks from four perspectives: efficacy of parallelization process; scalability; parallelization overhead; and comparison with hand-parallelized and -optimized version of the same benchmarks. Our results indicate that sequential programs can conveniently be parallelized for DSM systems using compiler directives but realizing performance gains as predicted by the performance model depends primarily on minimizing architecture-specific data locality overhead.

Waheed, Abdul↗

Navigation Strategy for the Mars 2001 Lander Mission

The Mars Surveyor Program (MSP) is an ongoing series of missions designed to robotically study, map and search for signs of life on the planet Mars. The MSP 2001 project will advance the effort by sending an orbiter, a lander and a rover to the red planet in the 2001 opportunity. Each vehicle will carry a science payload that will Investigate the Martian environment on both a global and on a local scale. Although this mission will not directly search for signs of life, or cache samples to be returned to Earth, it will demonstrate certain enabling technologies that will be utilized by the future Mars Sample Return missions. One technology that is needed for the Sample Return mission is the capability to place a vehicle on the surface within several kilometers of the targeted landing site. The MSP'01 Lander will take the first major step towards this type of precision landing at Mars. Significant reduction of the landed footprint will be achieved through two technology advances. The first, and most dramatic, is hypersonic aeromaneuvering; the second is improved approach navigation. As a result, the guided entry will produce in a footprint that is only tens of kilometers, which is an order of magnitude improvement over the Pathfinder and Mars Polar Lander ballistic entries. This reduction will significantly enhance scientific return by enabling the potential selection of otherwise unreachable landing sites with unique geologic interest and public appeal. A landed footprint reduction from hundreds to tens of kilometers is also a milestone on the path towards human exploration of Mars, where the desire is to place multiple vehicles within several hundred meters of the planned landing site. Hypersonic aeromaneuvering is an extension of the atmospheric flight goals of the previous landed missions, Pathfinder and Mars Polar Lander (MPL), that utilizes aerodynamic lift and an autonomous guidance algorithm while in the upper atmosphere. The onboard guidance algorithm will control the direction of the lift vector, via bank angle modulation, to keep the vehicle on the desired trajectory. While numerous autonomous guidance algorithms have been developed for use during hypersonic flight at Earth, this will be the first flight of an autonomously directed lifting entry vehicle at Mars. However, without sufficient control and knowledge of the atmospheric entry conditions, the guidance algorithm will not perform effectively. The goal of the interplanetary navigation strategy is to deliver the spacecraft to the desired entry condition with sufficient accuracy and knowledge to enable satisfactory guidance algorithm performance. Specifically, the entry flight path angle must not exceed 0.27 deg. to a 3 sigma confidence level. Entry errors will contribute directly to the size of the landed footprint and the most significant component is entry flight path angle. The size of the entry corridor is limited on the shallow side by integrated heating constraints, and on the steep side by deceleration (g-load) and terminal descent propellant. In order to meet this tight constraint it is necessary to place a targeting maneuver seven hours prior to the time of entry. At this time the trajectory knowledge will be quite accurate, and the effects of maneuver execution errors will be small. The drawback is that entry accuracy is dependent on the success of this final late maneuver. Because propulsive maneuvers are critical events, it is desirable to minimize their occurrence and provide the flight team with as much response time as possible in the event of a spacecraft fault. A mission critical maneuver at Entry - 7 hours does not provide much fault tolerance, and it is desirable to provide a strategy that minimizes reliance on this maneuver. This paper will focus on the Improvements in interplanetary navigation that will decrease entry errors and will reduce the landed footprint, even in the absence of aeromaneuvering. The easiest to take advantage of are Improvements In the knowledge of the Mars ephemeris and gravity field due to the MGS and MSP'98 missions. Improvements In data collection and reduction techniques such as "precislon ranging' and near-simultaneous tracking will also be utilized. In addition to precise trajectory control, a robust strategy for communications and flight operations must also be demonstrated. The result Is a navigation and communications strategy on approach that utilizes optimal maneuver placement to take advantage of trajectory knowledge, minimizes risk for the flight operations team, is responsive to spacecraft hardware limitations, and achieves the entry corridor. The MSP2001 mission Is managed at JPL under the auspices of the Mars Exploration Directorate. The spacecraft flight elements are built and managed by Lockheed-Martin Astronautics in Denver, Colorado.

Mase, Robert A.↗

Efficient Parallelization of a Dynamic Unstructured Application on the Tera MTA

The success of parallel computing in solving real-life computationally-intensive problems relies on their efficient mapping and execution on large-scale multiprocessor architectures. Many important applications are both unstructured and dynamic in nature, making their efficient parallel implementation a daunting task. This paper presents the parallelization of a dynamic unstructured mesh adaptation algorithm using three popular programming paradigms on three leading supercomputers. We examine an MPI message-passing implementation on the Cray T3E and the SGI Origin2OOO, a shared-memory implementation using cache coherent nonuniform memory access (CC-NUMA) of the Origin2OOO, and a multi-threaded version on the newly-released Tera Multi-threaded Architecture (MTA). We compare several critical factors of this parallel code development, including runtime, scalability, programmability, and memory overhead. Our overall results demonstrate that multi-threaded systems offer tremendous potential for quickly and efficiently solving some of the most challenging real-life problems on parallel computers.

Oliker, Leonid↗

The OpenMP Implementation of NAS Parallel Benchmarks and its Performance

As the new ccNUMA architecture became popular in recent years, parallel programming with compiler directives on these machines has evolved to accommodate new needs. In this study, we examine the effectiveness of OpenMP directives for parallelizing the NAS Parallel Benchmarks. Implementation details will be discussed and performance will be compared with the MPI implementation. We have demonstrated that OpenMP can achieve very good results for parallelization on a shared memory system, but effective use of memory and cache is very important.

Jin, Hao-Qiang↗

Parallel Conjugate Gradient: Effects of Ordering Strategies, Programming Paradigms, and Architectural Platforms

The Conjugate Gradient (CG) algorithm is perhaps the best-known iterative technique to solve sparse linear systems that are symmetric and positive definite. A sparse matrix-vector multiply (SPMV) usually accounts for most of the floating-point operations within a CG iteration. In this paper, we investigate the effects of various ordering and partitioning strategies on the performance of parallel CG and SPMV using different programming paradigms and architectures. Results show that for this class of applications, ordering significantly improves overall performance, that cache reuse may be more important than reducing communication, and that it is possible to achieve message passing performance using shared memory constructs through careful data ordering and distribution. However, a multi-threaded implementation of CG on the Tera MTA does not require special ordering or partitioning to obtain high efficiency and scalability.

Oliker, Leonid↗

Mechanical Abrasion as a Low Cost Technique for Contamination-Free Sample Acquisition from a Category IVA Clean Platform

The proposed Mars Sample Transfer Chain Architecture provides Planetary Protection Officers with clean samples that are required for the eventual release from confinement of the returned Martian samples. At the same time, absolute cleanliness and sterility requirement is not placed of any part of the Lander (including the deep drill), Mars Assent Vehicle (MAV), any part of the Orbiting Sample container (OS), Rover mobility platform, any part of the Minicorer, Robotic arm (including instrument sensors), and most of the caching equipment on the Rover. The removal of the strict requirements in excess of the Category IVa cleanliness (Pathfinder clean) is expected to lead to significant cost savings. The proposed architecture assumes that crosscontamination renders all surfaces in the vicinity of the rover(s) and the lander(s) contaminated. Thus, no accessible surface of Martian rocks and soil is Earth contamination free. As a result of the latter, only subsurface samples (either rock or soil) can be and will be collected for eventual return to Earth. Uncontaminated samples can be collected from a Category IVa clean platform. Both subsurface soil and rock samples can be maintained clean if they are collected by devices that are self-contained and clean and sterile inside only. The top layer of the sample is removed in a manner that does not contaminate the collection tools. Biobarrier (e.g., aluminum foil) covering the moving parts of these devices may be used as the only self removing bio-blanket that is required. The samples never leave the collection tools. The lids are placed on these tools inside the collection device. These single use tools with the lid and the sample inside are brought to Earth in the OS. The lids have to be designed impenetrable to the Earth organisms. The latter is a well established art.

Dolgin, B.↗

Expected Utility Distributions for Flexible, Contingent Execution

This paper presents a method for using expected utility distributions in the execution of flexible, contingent plans. A utility distribution maps the possible start times of an action to the expected utility of the plan suffix starting with that action. The contingent plan encodes a tree of possible courses of action and includes flexible temporal constraints and resource constraints. When execution reaches a branch point, the eligible option with the highest expected utility at that point in time is selected. The utility distributions make this selection sensitive to the runtime context, yet still efficient. Our approach uses predictions of action duration uncertainty as well as expectations of resource usage and availability to determine when an action can execute and with what probability. Execution windows and probabilities inevitably change as execution proceeds, but such changes do not invalidate the cached utility distributions, thus, dynamic updating of utility information is minimized.

Bresina, John L.↗

A Comparison of Three Programming Models for Adaptive Applications

We study the performance and programming effort for two major classes of adaptive applications under three leading parallel programming models. We find that all three models can achieve scalable performance on the state-of-the-art multiprocessor machines. The basic parallel algorithms needed for different programming models to deliver their best performance are similar, but the implementations differ greatly, far beyond the fact of using explicit messages versus implicit loads/stores. Compared with MPI and SHMEM, CC-SAS (cache-coherent shared address space) provides substantial ease of programming at the conceptual and program orchestration level, which often leads to the performance gain. However it may also suffer from the poor spatial locality of physically distributed shared data on large number of processors. Our CC-SAS implementation of the PARMETIS partitioner itself runs faster than in the other two programming models, and generates more balanced result for our application.

Shan, Hong-Zhang↗

Automatic Data Traffic Control on DSM Architecture

We study data traffic on distributed shared memory machines and conclude that data placement and grouping improve performance of scientific codes. We present several methods which user can employ to improve data traffic in his code. We report on implementation of a tool which detects the code fragments causing data congestions and advises user on improvements of data routing in these fragments. The capabilities of the tool include deduction of data alignment and affinity from the source code; detection of the code constructs having abnormally high cache or TLB misses; generation of data placement constructs. We demonstrate the capabilities of the tool on experiments with NAS parallel benchmarks and with a simple computational fluid dynamics application ARC3D.

Frumkin, Michael↗