Search NASA⌕ Search

SEARCH · Search NASA

Results for “threads”

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 1,657 records · Page 92

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.↗

Model Checking JAVA Programs Using Java Pathfinder

This paper describes a translator called JAVA PATHFINDER from JAVA to PROMELA, the "programming language" of the SPIN model checker. The purpose is to establish a framework for verification and debugging of JAVA programs based on model checking. This work should be seen in a broader attempt to make formal methods applicable "in the loop" of programming within NASA's areas such as space, aviation, and robotics. Our main goal is to create automated formal methods such that programmers themselves can apply these in their daily work (in the loop) without the need for specialists to manually reformulate a program into a different notation in order to analyze the program. This work is a continuation of an effort to formally verify, using SPIN, a multi-threaded operating system programmed in Lisp for the Deep-Space 1 spacecraft, and of previous work in applying existing model checkers and theorem provers to real applications.

Havelund, Klaus↗

Friction Stir Weld Modeling at MSFC: Kinematics

A "merry-go-round" computation model makes it easier to visualize how tracer experiments of varied sorts (chemical, shot, wire) are consistent with a "moving plug model" of flow around the friction stir welding pin-tool. The moving plug model comprises a twofold flow: 1. a primary rotation of a plug of metal with the tool, which moves metal around the tool by wiping it on and off the plug, and 2. a secondary, relatively slow circulation induced by the threads on the tool resembling a circular vortex ring around the tool.

Nunes, Arthur C., Jr.↗

Transformation Systems at NASA Ames

In this paper, we describe the experiences of the Automated Software Engineering Group at the NASA Ames Research Center in the development and application of three different transformation systems. The systems span the entire technology range, from deductive synthesis, to logic-based transformation, to almost compiler-like source-to-source transformation. These systems also span a range of NASA applications, including solving solar system geometry problems, generating data analysis software, and analyzing multi-threaded Java code.

Buntine, Wray↗

Java PathFinder User Guide

The JAVA PATHFINDER, JPF, is a translator from a subset of JAVA 1.0 to PROMELA, the programming language of the SPIN model checker. The purpose of JPF is to establish a framework for verification and debugging of JAVA programming based on model checking. The main goal is to automate program verification such that a programmer can apply it in the daily work without the need for a specialist to manually reformulate a program into a different notation in order to analyze the program. The system is especially suited for analyzing multi-threaded JAVA applications, where normal testing usually falls short. The system can find deadlocks and violations of boolean assertions stated by the programmer in a special assertion language. This document explains how to Use JPF.

Havelund, Klaus↗

Human-Centered Automation: The View from Earth Versus the View from Mars

This panel addresses the topic of human-centered automation in, however, a very different context-manned missions to deep space in which predominantly autonomous systems must control the crew's life-support systems most of the time. The Mars spacecraft and its inhabitants are totally dependent on the proper operation of thousands of control loops and pieces of equipment to maintain the delicate, unbuffered homeostasis of their remote existence. Mission success hangs on a thread that depends on a successful partnership, or symbiosis. between crew and machines, which exceeds anything ever required of ground systems. The need for a new approach to human-centered automation is not a "frill" in future Mars mission, but rather a sine qua non of survival. Thus the issue is design: Can we design systems intended to operate in a predominantly autonomous mode. without a human backup, that are sufficiently safe such that human travel into deep space is possible?

Massimino, Michael J.↗

Implementation of BT, SP, LU, and FT of NAS Parallel Benchmarks in Java

A number of Java features make it an attractive but a debatable choice for High Performance Computing. We have implemented benchmarks working on single structured grid BT,SP,LU and FT in Java. The performance and scalability of the Java code shows that a significant improvement in Java compiler technology and in Java thread implementation are necessary for Java to compete with Fortran in HPC applications.

Schultz, Matthew↗

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↗

Implementation of NAS Parallel Benchmarks in Java

A number of features make Java an attractive but a debatable choice for High Performance Computing (HPC). In order to gauge the applicability of Java to the Computational Fluid Dynamics (CFD) we have implemented NAS Parallel Benchmarks in Java. The performance and scalability of the benchmarks point out the areas where improvement in Java compiler technology and in Java thread implementation would move Java closer to Fortran in the competition for CFD applications.

Frumkin, Michael↗

Enabling Advanced Automation in Spacecraft Operations with the Spacecraft Emergency Response System

True autonomy is the Holy Grail of spacecraft mission operations. The goal of launching a satellite and letting it manage itself throughout its useful life is a worthy one. With true autonomy, the cost of mission operations would be reduced to a negligible amount. Under full autonomy, any problems (no matter the severity or type) that may arise with the spacecraft would be handled without any human intervention via some combination of smart sensors, on-board intelligence, and/or smart automated ground system. Until the day that complete autonomy is practical and affordable to deploy, incremental steps of deploying ever-increasing levels of automation (computerization of once manual tasks) on the ground and on the spacecraft are gradually decreasing the cost of mission operations. For example, NASA's Goddard Space Flight Center (NASA-GSFC) has been flying spacecraft with low cost operations for several years. NASA-GSFC's SMEX (Small Explorer) and MIDEX (Middle Explorer) missions have effectively deployed significant amounts of automation to enable the missions to fly predominately in 'light-out' mode. Under light-out operations the ground system is run without human intervention. Various tools perform many of the tasks previously performed by the human operators. One of the major issues in reducing human staff in favor of automation is the perceived increased in risk of losing data, or even losing a spacecraft, because of anomalous conditions that may occur when there is no one in the control center. When things go wrong, missions deploying advanced automation need to be sure that anomalous conditions are detected and that key personal are notified in a timely manner so that on-call team members can react to those conditions. To ensure the health and safety of its lights-out missions, NASA-GSFC's Advanced Automation and Autonomy branch (Code 588) developed the Spacecraft Emergency Response System (SERS). The SERS is a Web-based collaborative environment that enables secure distributed fault and resource management. The SERS incorporates the use of intelligent agents, threaded discussions, workflow, database connectivity, and links to a variety of communications devices (e.g., two-way paging, PDA's, and Internet phones) via commercial gateways. When the SERS detects a problem, it notifies on-call team members, who then can remotely take any necessary actions to resolve the anomalies.The SERS goes well beyond a simple '911' system that sends out an error code to everyone with a pager. Instead, SERS' software agents send detailed data (i.e., notifications) to the most appropriate team members based on the type and severity of the anomaly and the skills of the on-call team members. The SERS also allows the team members to respond to the notifications from their wireless devices. This unique capability ensures rapid response since the team members no longer have to go to a PC or the control center for every anomalous event. Most importantly, the SERS enables safe experimentation with various techniques for increasing levels of automation, leading to robust autonomy. For the MIDEX missions at NASA GSFC, the SERS is used to provide 'human-in-the-loop' automation. During lights-out operations, as greater control is given to the MIDEX automated systems, the SERS can be configured to page remote personnel and keep them informed regarding actions taking place in the control center. Remote off-duty operators can even be given the option of enabling or inhibiting a specific automated response in near real time via their two-way pagers. The SERS facilitates insertion of new technology to increase automation, while maintaining the safety and security of mission resources. This paper will focus on SERS' overall functionality and how SERS has been designed to handle the monitoring and emergency response for missions with varying levels of automation. The paper will also convey some of the key lessons learned from SERS' deployment across of variety of missions, highlighting this incremental approach to achieving 'robust autonomy'.

Breed, Julie↗

Accelerating Demand Paging for Local and Remote Out-of-Core Visualization

This paper describes a new algorithm that improves the performance of application-controlled demand paging for the out-of-core visualization of data sets that are on either local disks or disks on remote servers. The performance improvements come from better overlapping the computation with the page reading process, and by performing multiple page reads in parallel. The new algorithm can be applied to many different visualization algorithms since application-controlled demand paging is not specific to any visualization algorithm. The paper includes measurements that show that the new multi-threaded paging algorithm decreases the time needed to compute visualizations by one third when using one processor and reading data from local disk. The time needed when using one processor and reading data from remote disk decreased by up to 60%. Visualization runs using data from remote disk ran about as fast as ones using data from local disk because the remote runs were able to make use of the remote server's high performance disk array.

Ellsworth, David↗

Pre-Hardware Optimization of Spacecraft Image Processing Software Algorithms and Hardware Implementation

Spacecraft telemetry rates have steadily increased over the last decade presenting a problem for real-time processing by ground facilities. This paper proposes a solution to a related problem for the Geostationary Operational Environmental Spacecraft (GOES-8) image processing application. Although large super-computer facilities are the obvious heritage solution, they are very costly, making it imperative to seek a feasible alternative engineering solution at a fraction of the cost. The solution is based on a Personal Computer (PC) platform and synergy of optimized software algorithms and re-configurable computing hardware technologies, such as Field Programmable Gate Arrays (FPGA) and Digital Signal Processing (DSP). It has been shown in [1] and [2] that this configuration can provide superior inexpensive performance for a chosen application on the ground station or on-board a spacecraft. However, since this technology is still maturing, intensive pre-hardware steps are necessary to achieve the benefits of hardware implementation. This paper describes these steps for the GOES-8 application, a software project developed using Interactive Data Language (IDL) (Trademark of Research Systems, Inc.) on a Workstation/UNIX platform. The solution involves converting the application to a PC/Windows/RC platform, selected mainly by the availability of low cost, adaptable high-speed RC hardware. In order for the hybrid system to run, the IDL software was modified to account for platform differences. It was interesting to examine the gains and losses in performance on the new platform, as well as unexpected observations before implementing hardware. After substantial pre-hardware optimization steps, the necessity of hardware implementation for bottleneck code in the PC environment became evident and solvable beginning with the methodology described in [1], [2], and implementing a novel methodology for this specific application [6]. The PC-RC interface bandwidth problem for the class of applications with moderate input-output data rates but large intermediate multi-thread data streams has been addressed and mitigated. This opens a new class of satellite image processing applications for bottleneck problems solution using RC technologies. The issue of a science algorithm level of abstraction necessary for RC hardware implementation is also described. Selected Matlab functions already implemented in hardware were investigated for their direct applicability to the GOES-8 application with the intent to create a library of Matlab and IDL RC functions for ongoing work. A complete class of spacecraft image processing applications using embedded re-configurable computing technology to meet real-time requirements, including performance results and comparison with the existing system, is described in this paper.

Kizhner, Semion↗

Metal Flow During Friction Stir Welding

The flow of metal during Friction Stir Welding is clarified using a faying surface tracer and a nib frozen in place during welding. It is shown that material is transported by two processes. The first is a wiping of material from the advancing front side of the nib onto a plug of material that rotates and advances with the nib. The material undergoes a helical motion within the plug that both rotates and advances with the plug and descends in the wash of the threads on the nib and rises on the outer part of the plug. After one or more rotations, this material is sloughed off the plug in its wake, primarily on the advancing side. The second process is an entrainment of material from the front retreating side of the nib that fills in between the sloughed off pieces from the advancing side. These two processes produce material with different mechanical properties and the strength of a weld should depend on the relative importance of the processes.

Guerra, M.↗

Material Flow During Friction Stir Welds

The flow of metal during Friction Stir Welding is clarified using a faying surface tracer and a nib frozen in place during welding. It is shown that material is transported in two distinct streams or currents. One stream is a wiping of material from the advancing front side of the nib onto a plug of material that rotates and advances with the nib. The material undergoes a helical motion within the plug that both rotates and advances with the plug and descends in the wash of the threads on the nib and rises on the outer part of the plug. After one or more rotations, this material is sloughed off the plug in the wake of the tool primarily on the advancing side. The second stream of material is an entrainment of material from the retreating side of the nib that fills in between the sloughed off pieces from the advancing side. These two processes produce material with different mechanical properties and the strength of a weld should depend on the relative importance of the processes.

Guerra, M.↗

Spinning Rocket Simulator Turntable Design

Contained herein is the research and data acquired from the Turntable Design portion of the Spinning Rocket Simulator (SRS) project. The SRS Project studies and eliminates the effect of coning on thrust-propelled spacecraft. This design and construction of the turntable adds a structural support for the SRS model and two degrees of freedom. The two degrees of freedom, radial and circumferential, will help develop a simulated thrust force perpendicular to the plane of the spacecraft model while undergoing an unstable coning motion. The Turntable consists of a ten-foot linear track mounted to a sprocket and press-fit to a thrust bearing. A two-inch high column grounded by a Triangular Baseplate supports this bearing and houses the slip rings and pressurized, air-line swivel. The thrust bearing allows the entire system to rotate under the moment applied through the chain-driven sprocket producing a circumferential degree of freedom. The radial degree of freedom is given to the model through the helically threaded linear track. This track allows the Model Support and Counter Balance to simultaneously reposition according to the coning motion of the Model. Two design factors that hinder the linear track are bending and twist due to torsion. A Standard Aluminum "C" channel significantly reduces these two deflections. Safety considerations dictate the design of all the components involved in this project.

Miles, Robert W.↗

Automation of Data Traffic Control on DSM Architecture

The design of distributed shared memory (DSM) computers liberates users from the duty to distribute data across processors and allows for the incremental development of parallel programs using, for example, OpenMP or Java threads. DSM architecture greatly simplifies the development of parallel programs having good performance on a few processors. However, to achieve a good program scalability on DSM computers requires that the user understand data flow in the application and use various techniques to avoid data traffic congestions. In this paper we discuss a number of such techniques, including data blocking, data placement, data transposition and page size control and evaluate their efficiency on the NAS (NASA Advanced Supercomputing) Parallel Benchmarks. We also present a tool which automates the detection of constructs causing data congestions in Fortran array oriented codes and advises the user on code transformations for improving data traffic in the application.

Frumkin, Michael↗

ScienceOrganizer System and Interface Summary

ScienceOrganizer is a specialized knowledge management tool designed to enhance the information storage, organization, and access capabilities of distributed NASA science teams. Users access ScienceOrganizer through an intuitive Web-based interface that enables them to upload, download, and organize project information - including data, documents, images, and scientific records associated with laboratory and field experiments. Information in ScienceOrganizer is "threaded", or interlinked, to enable users to locate, track, and organize interrelated pieces of scientific data. Linkages capture important semantic relationships among information resources in the repository, and these assist users in navigating through the information related to their projects.

Keller, Richard M.↗

Motions and Initial Conditions in Star-Forming Dense Cores

Under this grant in the past year we have pursued spectral-line observations of star-forming regions over size scales from 0.01 pc to 0.5 pc. Our main goal has been to measure the systematic and turbulent motions of condensing and collapsing gas. In this area, our results include (1) in 67 starless dense cores, some 19 show clear evidence of spatially extended inward motions, with typical line-of-sight inward speed 0.05-0.09 km s(sup -1) and with typical plane-of-the-sky extent 0.1-0.3 pc, (2) In some 40 nearby regions with embedded groups and clusters, we see extended infall asymmetry in lines of CS and HCO(+) clearly in 4 regions and less clearly in 4 others, (3) Using finer resolution (15 arcsec or 0.01-0.02 pc) and lines tracing higher density, we see spatial concentration of infall asymmetry near the protostars in NGC 1333 IRS 4A and B, L483, and L1251B, and with still finer resolution (2 arcsec or 0.003 pc or 600 AU) we detect inverse P Cyg profiles, indicating absorption of continuum emission from the protostellar envelope by infalling gas in NGC 1333 IRS 4A and 4B. Further, at high resolution we identify regions of stellar mass and low turbulence ("kernels") which are good candidates to become the next generation of stars in embedded clusters. In addition we have completed a survey for the OH Zeeman effect in absorption against nearby H II regions, indicating that the large-scale magnetic field may be nearly critical if it typically threads a flattened structure. We have also developed a model of spatially extended infall motions based on dissipation of turbulence in a magnetized, selfgravitating layer. In the following we describe some of these results in more detail.

Myers, Philip C.↗