Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Lightweight 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 19 records

Ropes: Support for collective opertions among distributed threads

Lightweight threads are becoming increasingly useful in supporting parallelism and asynchronous control structures in applications and language implementations. Recently, systems have been designed and implemented to support interprocessor communication between lightweight threads so that threads can be exploited in a distributed memory system. Their use, in this setting, has been largely restricted to supporting latency hiding techniques and functional parallelism within a single application. However, to execute data parallel codes independent of other threads in the system, collective operations and relative indexing among threads are required. This paper describes the design of ropes: a scoping mechanism for collective operations and relative indexing among threads. We present the design of ropes in the context of the Chant system, and provide performance results evaluating our initial design decisions.

Haines, Matthew↗

On Designing Lightweight Threads for Substrate Software

Existing user-level thread packages employ a 'black box' design approach, where the implementation of the threads is hidden from the user. While this approach is often sufficient for application-level programmers, it hides critical design decisions that system-level programmers must be able to change in order to provide efficient service for high-level systems. By applying the principles of Open Implementation Analysis and Design, we construct a new user-level threads package that supports common thread abstractions and a well-defined meta-interface for altering the behavior of these abstractions. As a result, system-level programmers will have the advantages of using high-level thread abstractions without having to sacrifice performance, flexibility or portability.

Haines, Matthew↗

An overview of the Opus language and runtime system

We have recently introduced a new language, called Opus, which provides a set of Fortran language extensions that allow for integrated support of task and data parallelism. lt also provides shared data abstractions (SDA's) as a method for communication and synchronization among these tasks. In this paper, we first provide a brief description of the language features and then focus on both the language-dependent and language-independent parts of the runtime system that support the language. The language-independent portion of the runtime system supports lightweight threads across multiple address spaces, and is built upon existing lightweight thread and communication systems. The language-dependent portion of the runtime system supports conditional invocation of SDA methods and distributed SDA argument handling.

Mehrotra, Piyush↗

A software bus for thread objects

The authors have implemented a software bus for lightweight threads in an object-oriented programming environment that allows for rapid reconfiguration and reuse of thread objects in discrete-event simulation experiments. While previous research in object-oriented, parallel programming environments has focused on direct communication between threads, our lightweight software bus, called the MiniBus, provides a means to isolate threads from their contexts of execution by restricting communications between threads to message-passing via their local ports only. The software bus maintains a topology of connections between these ports. It routes, queues, and delivers messages according to this topology. This approach allows for rapid reconfiguration and reuse of thread objects in other systems without making changes to the specifications or source code. A layered approach that provides the needed transparency to developers is presented. Examples of using the MiniBus are given, and the value of bus architectures in building and conducting simulations of discrete-event systems is discussed.

Callahan, John R.↗

Thread Migration in the Presence of Pointers

Dynamic migration of lightweight threads supports both data locality and load balancing. However, migrating threads that contain pointers referencing data in both the stack and heap remains an open problem. In this paper we describe a technique by which threads with pointers referencing both stack and non-shared heap data can be migrated such that the pointers remain valid after migration. As a result, threads containing pointers can now be migrated between processors in a homogeneous distributed memory environment.

Cronk, David↗

On the utility of threads for data parallel programming

Threads provide a useful programming model for asynchronous behavior because of their ability to encapsulate units of work that can then be scheduled for execution at runtime, based on the dynamic state of a system. Recently, the threaded model has been applied to the domain of data parallel scientific codes, and initial reports indicate that the threaded model can produce performance gains over non-threaded approaches, primarily through the use of overlapping useful computation with communication latency. However, overlapping computation with communication is possible without the benefit of threads if the communication system supports asynchronous primitives, and this comparison has not been made in previous papers. This paper provides a critical look at the utility of lightweight threads as applied to data parallel scientific programming.

Fahringer, Thomas↗

Machine Learning Algorithm Performance on the Lucata Computer

A new parallel computing paradigm (processor in memory, or PIM) has recently become available, one that uses many lightweight threads, and where each thread migrates automatically to the memory used by that thread. Our effort focuses on understanding how suitable this architecture is for our application, and whether the hardware can sustain speedups as high as the system size permits. In particular we explore the kind of code optimizations needed, and how well optimized code scales. This paper describes some of the those optimizations, and the payoff in terms of scaling.

Kogge, Peter↗

Lightweight, High-Yield Photocathode

Layer of Astroquartz (or equivalent) cloth woven from quartz thread multiplies electron current emitted by aluminum photocathode sensitive to ultraviolet light when placed in external steady-state electric field. Desirable in applications where low power consumption required.

Leung, Philip L.↗

The structure of the clouds distributed operating system

A novel system architecture, based on the object model, is the central structuring concept used in the Clouds distributed operating system. This architecture makes Clouds attractive over a wide class of machines and environments. Clouds is a native operating system, designed and implemented at Georgia Tech. and runs on a set of generated purpose computers connected via a local area network. The system architecture of Clouds is composed of a system-wide global set of persistent (long-lived) virtual address spaces, called objects that contain persistent data and code. The object concept is implemented at the operating system level, thus presenting a single level storage view to the user. Lightweight treads carry computational activity through the code stored in the objects. The persistent objects and threads gives rise to a programming environment composed of shared permanent memory, dispensing with the need for hardware-derived concepts such as the file systems and message systems. Though the hardware may be distributed and may have disks and networks, the Clouds provides the applications with a logically centralized system, based on a shared, structured, single level store. The current design of Clouds uses a minimalist philosophy with respect to both the kernel and the operating system. That is, the kernel and the operating system support a bare minimum of functionality. Clouds also adheres to the concept of separation of policy and mechanism. Most low-level operating system services are implemented above the kernel and most high level services are implemented at the user level. From the measured performance of using the kernel mechanisms, we are able to demonstrate that efficient implementations are feasible for the object model on commercially available hardware. Clouds provides a rich environment for conducting research in distributed systems. Some of the topics addressed in this paper include distributed programming environments, consistency of persistent data and fault-tolerance.

Dasgupta, Partha↗

Silicon carbide sewing thread

Composite flexible multilayer insulation systems (MLI) were evaluated for thermal performance and compared with currently used fibrous silica (baseline) insulation system. The systems described are multilayer insulations consisting of alternating layers of metal foil and scrim ceramic cloth or vacuum metallized polymeric films quilted together using ceramic thread. A silicon carbide thread for use in the quilting and the method of making it are also described. These systems provide lightweight thermal insulation for a variety of uses, particularly on the surface of aerospace vehicles subject to very high temperatures during flight.

Sawko, Paul M.↗

Composite Flexible Blanket Insulation

Composite flexible multilayer insulation systems (MLI) were evaluated for thermal performance and compared with the currently used fibrous silica (baseline) insulation system. The systems described are multilayer insulations consisting of alternating layers of metal foil and scrim ceramic cloth or vacuum metallized polymeric films quilted together using ceramic thread. A silicon carbide thread for use in the quilting and the method of making it are also described. These systems are useful in providing lightweight insulation for a variety of uses, particularly on the surface of aerospace vehicles subject to very high temperatures during flight.

Kourtides, Demetrius A.↗

Pivot Attachment for Prefabricated Beams

Assembly of prefabricated structural beams for roof trusses, bleachers, or other lightweight structures made easier by use of flexural pivot at one or both ends. When pivot is attached, joint is flexible, thus simplifying alinement; joint is subsequently rigidized by threaded collar that completes attachment.

Stroll, H. W. J.↗

Heterogeneous concurrent computing with exportable services

Heterogeneous concurrent computing, based on the traditional process-oriented model, is approaching its functionality and performance limits. An alternative paradigm, based on the concept of services, supporting data driven computation, and built on a lightweight process infrastructure, is proposed to enhance the functional capabilities and the operational efficiency of heterogeneous network-based concurrent computing. TPVM is an experimental prototype system supporting exportable services, thread-based computation, and remote memory operations that is built as an extension of and an enhancement to the PVM concurrent computing system. TPVM offers a significantly different computing paradigm for network-based computing, while maintaining a close resemblance to the conventional PVM model in the interest of compatibility and ease of transition Preliminary experiences have demonstrated that the TPVM framework presents a natural yet powerful concurrent programming interface, while being capable of delivering performance improvements of upto thirty percent.

Sunderam, Vaidy↗

A simple 5-DOF walking robot for space station application

Robots on the NASA space station have a potential range of applications from assisting astronauts during EVA (extravehicular activity), to replacing astronauts in the performance of simple, dangerous, and tedious tasks; and to performing routine tasks such as inspections of structures and utilities. To provide a vehicle for demonstrating the pertinent technologies, a simple robot is being developed for locomotion and basic manipulation on the proposed space station. In addition to the robot, an experimental testbed was developed, including a 1/3 scale (1.67 meter modules) truss and a gravity compensation system to simulate a zero-gravity environment. The robot comprises two flexible links connected by a rotary joint, with a 2 degree of freedom wrist joints and grippers at each end. The grippers screw into threaded holes in the nodes of the space station truss, and enable it to walk by alternately shifting the base of support from one foot (gripper) to the other. Present efforts are focused on mechanical design, application of sensors, and development of control algorithms for lightweight, flexible structures. Long-range research will emphasize development of human interfaces to permit a range of control modes from teleoperated to semiautonomous, and coordination of robot/astronaut and multiple-robot teams.

Brown, H. Benjamin, Jr.↗

Initial Kernel Timing Using a Simple PIM Performance Model

This presentation will describe some initial results of paper-and-pencil studies of 4 or 5 application kernels applied to a processor-in-memory (PIM) system roughly similar to the Cascade Lightweight Processor (LWP). The application kernels are: * Linked list traversal * Sun of leaf nodes on a tree * Bitonic sort * Vector sum * Gaussian elimination The intent of this work is to guide and validate work on the Cascade project in the areas of compilers, simulators, and languages. We will first discuss the generic PIM structure. Then, we will explain the concepts needed to program a parallel PIM system (locality, threads, parcels). Next, we will present a simple PIM performance model that will be used in the remainder of the presentation. For each kernel, we will then present a set of codes, including codes for a single PIM node, and codes for multiple PIM nodes that move data to threads and move threads to data. These codes are written at a fairly low level, between assembly and C, but much closer to C than to assembly. For each code, we will present some hand-drafted timing forecasts, based on the simple PIM performance model. Finally, we will conclude by discussing what we have learned from this work, including what programming styles seem to work best, from the point-of-view of both expressiveness and performance.

BRIEFING CHARTS↗

Large Deployable Shroud

Preliminary design proposed for large, lightweight telescope shroud or light shield carried to orbit in single Space Shuttle cargo load. Shroud concept applied on Earth in portable, compactly storable displays or projection screens. Large telescope shroud includes four deployable masts erecting eight walls of hinged panels of polyimide film. Panels stored fanfolded before deployment and threaded on guide wires unwinding from spools and remain taut during deployment.

Jacquemin, G. G.↗

Deployable Wide-Aperture Array Antennas

Inexpensive, lightweight array antennas on flexible substrates are under development to satisfy a need for large-aperture antennas that can be stored compactly during transport and deployed to full size in the field. Conceived for use aboard spacecraft, antennas of this type also have potential terrestrial uses . most likely, as means to extend the ranges of cellular telephones in rural settings. Several simple deployment mechanisms are envisioned. One example is shown in the figure, where the deployment mechanism, a springlike material contained in a sleeve around the perimeter of a flexible membrane, is based on a common automobile window shade. The array can be formed of antenna elements that are printed on small sections of semi-flexible laminates, or preferably, elements that are constructed of conducting fabric. Likewise, a distribution network connecting the elements can be created from conventional technologies such as lightweight, flexible coaxial cable and a surface mount power divider, or preferably, from elements formed from conductive fabrics. Conventional technologies may be stitched onto a supporting flexible membrane or contained within pockets that are stitched onto a flexible membrane. Components created from conductive fabrics may be attached by stitching conductive strips to a nonconductive membrane, embroidering conductive threads into a nonconductive membrane, or weaving predetermined patterns directly into the membrane. The deployable antenna may comprise multiple types of antenna elements. For example, thin profile antenna elements above a ground plane, both attached to the supporting flexible membrane, can be used to create a unidirectional boresight radiation pattern. Or, antenna elements without a ground plane, such as bow-tie dipoles, can be attached to the membrane to create a bidirectional array such as that shown in the figure. For either type of antenna element, the dual configuration, i.e., elements formed of slots in a conductive membrane, can also be used. Finally, wide bandwidth antennas or arrays can be formed in which the principal direction of radiation is in the plane of the membrane. For this embodiment, the set of elements on the membrane is arranged to form one or more traveling wave antennas. In this case, a nonconductive form of the perimeter springlike material is required to provide the deploying force.

Fink, Patrick W.↗

Miniature Piezoelectric Shaker for Distribution of Unconsolidated Samples to Instrument Cells

The planned Mars Science Laboratory mission requires inlet funnels for channeling unconsolidated powdered samples from the sampling and sieving mechanisms into instrument test cells, which are required to reduce cross-contamination of the samples and to minimize residue left in the funnels after each sample transport. To these ends, a solid-state shaking mechanism has been created that requires low power and is lightweight, but is sturdy enough to survive launch vibration. The funnel mechanism is driven by asymmetrically mounted, piezoelectric flexure actuators that are out of the load path so that they do not support the funnel mass. Each actuator is a titanium, flextensional piezoelectric device driven by a piezoelectric stack. The stack has Invar endcaps with a half-spherical recess. The Invar is used to counteract the change in stress as the actuators are cooled to Mars ambient temperatures. A ball screw is threaded through the actuator frame into the recess to apply pre-stress, and to trap the piezoelectric stack and endcaps in flexure. During the vibration cycle of the flextensional actuator frame, the compression in the piezoelectric stack may decrease to the point that it is unstressed; however, because the ball joint cannot pull, tension in the piezoelectric stack cannot be produced. The actuators are offset at 120 . In this flight design, redundancy is required, so three actuators are used though only one is needed to assist in the movement. The funnel is supported at three contact points offset to the hexapod support contacts. The actuator surface that does not contact the ring is free to expand. Two other configurations can be used to mechanically tune the vibration. The free end can be designed to drive a fixed mass, or can be used to drive a free mass to excite impacts (see figure). Tests on this funnel mechanism show a high density of resonance modes between 1 and 20 kHz. A subset of these between 9 and 12 kHz was used to drive the CheMin actuators at 7 V peak to peak. These actuators could be driven by a single resonance, or swept through a frequency range to decrease the possibility that a portion of the funnel surface was not coincident with a nodal line (line of no displacement). The frequency of actuation can be electrically controlled and monitored and can also be mechanically tuned by the addition of tuning mass on the free end of the actuator. The devices are solid-state and can be designed with no macroscopically moving parts. This design has been tested in a vacuum at both Mars and Earth ambient temperatures ranging from 30 to 25 C

Sherrit, Stewart↗