60 Matching Results

Search Results

Advanced search parameters have been applied.

Language constructs for modular parallel programs

Description: We describe programming language constructs that facilitate the application of modular design techniques in parallel programming. These constructs allow us to isolate resource management and processor scheduling decisions from the specification of individual modules, which can themselves encapsulate design decisions concerned with concurrence, communication, process mapping, and data distribution. This approach permits development of libraries of reusable parallel program components and the reuse of these components in different contexts. In particular, alternative mapping strategies can be explored without modifying other aspects of program logic. We describe how these constructs are incorporated in two practical parallel programming languages, PCN and Fortran M. Compilers have been developed for both languages, allowing experimentation in substantial applications.
Date: March 1, 1996
Creator: Foster, I.
Partner: UNT Libraries Government Documents Department

A toolkit for building earth system models

Description: An earth system model is a computer code designed to simulate the interrelated processes that determine the earth's weather and climate, such as atmospheric circulation, atmospheric physics, atmospheric chemistry, oceanic circulation, and biosphere. I propose a toolkit that would support a modular, or object-oriented, approach to the implementation of such models.
Date: March 1, 1993
Creator: Foster, I.
Partner: UNT Libraries Government Documents Department

A toolkit for building earth system models

Description: An earth system model is a computer code designed to simulate the interrelated processes that determine the earth`s weather and climate, such as atmospheric circulation, atmospheric physics, atmospheric chemistry, oceanic circulation, and biosphere. I propose a toolkit that would support a modular, or object-oriented, approach to the implementation of such models.
Date: March 1, 1993
Creator: Foster, I.
Partner: UNT Libraries Government Documents Department

Load-balancing algorithms for the parallel community climate model

Description: Implementations of climate models on scalable parallel computer systems can suffer from load imbalances resulting from temporal and spatial variations in the amount of computation required for physical parameterizations such as solar radiation and convective adjustment. We have developed specialized techniques for correcting such imbalances. These techniques are incorporated in a general-purpose, programmable load-balancing library that allows the mapping of computation to processors to be specified as a series of maps generated by a programmer-supplied load-balancing module. The communication required to move from one map to another is performed automatically by the library, without programmer intervention. In this paper, we describe the load-balancing problem and the techniques that we have developed to solve it. We also describe specific load-balancing algorithms that we have developed for PCCM2, a scalable parallel implementation of the Community Climate Model, and present experimental results that demonstrate the effectiveness of these algorithms on parallel computers. The load-balancing library developed in this work is available for use in other climate models.
Date: January 1, 1995
Creator: Foster, I.T. & Toonen, B.R.
Partner: UNT Libraries Government Documents Department

A quality of service architecture that combines resource reservation and application adaptation

Description: Reservation and adaptation are two well-known and effective techniques for enhancing the end-to-end performance of network applications. However, both techniques also have limitations, particularly when dealing with high-bandwidth, dynamic flows: fixed-capability reservations tend to be wasteful of resources and hinder graceful degradation in the face of congestion, while adaptive techniques fail when congestion becomes excessive. We propose an approach to quality of service (QoS) that overcomes these difficulties by combining features of reservations and adaptation. In this approach, a combination of online control interfaces for resource management, a sensor permitting online monitoring, and decision procedures embedded in resources enable a rich variety of dynamic feedback interactions between applications and resources. We describe a QoS architecture, GARA, that has been extended to support these mechanisms, and use three examples of application-level adaptive strategies to show how this framework can permit applications to adapt both their resource requests and behavior in response to online sensor information.
Date: April 21, 2000
Creator: Foster, I.; Roy, A. & Sander, V.
Partner: UNT Libraries Government Documents Department

Predicting application run times using historical information.

Description: The authors present a technique for deriving predictions for the run times of parallel applications from the run times of similar applications that have executed in the past. The novel aspect of the work is the use of search techniques to determine those application characteristics that yield the best definition of similarity for the purpose of making predictions. They use four workloads recorded from parallel computers at Argonne National Laboratory, the Cornell Theory Center, and the San Diego Supercomputer Center to evaluate the effectiveness of the approach.They show that on these workloads the techniques achieve predictions that are between 14 and 60% better than those achieved by other researchers; the approach achieves mean prediction errors that are between 41 and 65% of mean application run times.
Date: June 25, 1999
Creator: Foster, I.; Smith, W. & Taylor, V.
Partner: UNT Libraries Government Documents Department

Replica selection in the Globus Data Grid.

Description: The Globus Data Grid architecture provides a scalable infrastructure for the management of storage resources and data that are distributed across Grid environments. These services are designed to support a variety of scientific applications, ranging from high-energy physics to computational genomics, that require access to large amounts of data (terabytes or even petabytes) with varied quality of service requirements. By layering on a set of core services, such as data transport, security, and replica cataloging, one can construct various higher-level services. In this paper, we discuss the design and implementation of a high-level replica selection service that uses information regarding replica location and user preferences to guide selection from among storage replica alternatives. We first present a basic replica selection service design, then show how dynamic information collected using Globus information service capabilities concerning storage system properties can help improve and optimize the selection process. We demonstrate the use of Condor's ClassAds resource description and matchmaking mechanism as an efficient tool for representing and matching storage resource capabilities and policies against application requirements.
Date: February 23, 2001
Creator: Vazhkudai, S.; Tuecke, S. & Foster, I.
Partner: UNT Libraries Government Documents Department

Grid infrastructure to support science portals for large scale instruments.

Description: Soon, a new generation of scientific workbenches will be developed as a collaborative effort among various research institutions in the US. These scientific workbenches will be accessed in the Web via portals. Reusable components are needed to build such portals for different scientific disciplines, allowing uniform desktop access to remote resources. Such components will include tools and services enabling easy collaboration, job submission, job monitoring, component discovery, and persistent object storage. Based on experience gained from Grand Challenge applications for large-scale instruments, we demonstrate how Grid infrastructure components can be used to support the implementation of science portals. The availability of these components will simplify the prototype implementation of a common portal architecture.
Date: September 29, 1999
Creator: von Laszewski, G. & Foster, I.
Partner: UNT Libraries Government Documents Department

A grid-enabled MPI : message passing in heterogeneous distributed computing systems.

Description: Application development for high-performance distributed computing systems, or computational grids as they are sometimes called, requires grid-enabled tools that hide mundate aspects of the heterogeneous grid environment without compromising performance. As part of an investigation of these issues, they have developed MPICH-G, a grid-enabled implementation of the Message Passing Interface (MPI) that allows a user to run MPI programs across multiple computers at different sites using the same commands that would be used on a parallel computer. This library extends the Argonne MPICH implementation of MPI to use services provided by the globus grid toolkit. In this paper, they describe the MPICH-G implementation and present preliminary performance results.
Date: November 30, 2000
Creator: Foster, I. & Karonis, N. T.
Partner: UNT Libraries Government Documents Department

Proceedings of the workshop on Compilation of (Symbolic) Languages for Parallel Computers

Description: This report comprises the abstracts and papers for the talks presented at the Workshop on Compilation of (Symbolic) Languages for Parallel Computers, held October 31--November 1, 1991, in San Diego. These unreferred contributions were provided by the participants for the purpose of this workshop; many of them will be published elsewhere in peer-reviewed conferences and publications. Our goal is planning this workshop was to bring together researchers from different disciplines with common problems in compilation. In particular, we wished to encourage interaction between researchers working in compilation of symbolic languages and those working on compilation of conventional, imperative languages. The fundamental problems facing researchers interested in compilation of logic, functional, and procedural programming languages for parallel computers are essentially the same. However, differences in the basic programming paradigms have led to different communities emphasizing different species of the parallel compilation problem. For example, parallel logic and functional languages provide dataflow-like formalisms in which control dependencies are unimportant. Hence, a major focus of research in compilation has been on techniques that try to infer when sequential control flow can safely be imposed. Granularity analysis for scheduling is a related problem. The single- assignment property leads to a need for analysis of memory use in order to detect opportunities for reuse. Much of the work in each of these areas relies on the use of abstract interpretation techniques.
Date: November 1, 1991
Creator: Foster, I. & Tick, E. (comp.)
Partner: UNT Libraries Government Documents Department

Proceedings of the workshop on Compilation of (Symbolic) Languages for Parallel Computers

Description: This report comprises the abstracts and papers for the talks presented at the Workshop on Compilation of (Symbolic) Languages for Parallel Computers, held October 31--November 1, 1991, in San Diego. These unreferred contributions were provided by the participants for the purpose of this workshop; many of them will be published elsewhere in peer-reviewed conferences and publications. Our goal is planning this workshop was to bring together researchers from different disciplines with common problems in compilation. In particular, we wished to encourage interaction between researchers working in compilation of symbolic languages and those working on compilation of conventional, imperative languages. The fundamental problems facing researchers interested in compilation of logic, functional, and procedural programming languages for parallel computers are essentially the same. However, differences in the basic programming paradigms have led to different communities emphasizing different species of the parallel compilation problem. For example, parallel logic and functional languages provide dataflow-like formalisms in which control dependencies are unimportant. Hence, a major focus of research in compilation has been on techniques that try to infer when sequential control flow can safely be imposed. Granularity analysis for scheduling is a related problem. The single- assignment property leads to a need for analysis of memory use in order to detect opportunities for reuse. Much of the work in each of these areas relies on the use of abstract interpretation techniques.
Date: November 1, 1991
Creator: Foster, I. & Tick, E.
Partner: UNT Libraries Government Documents Department

Massively parallel implementation of the Penn State/NCAR Mesoscale Model

Description: Parallel computing promises significant improvements in both the raw speed and cost performance of mesoscale atmospheric models. On distributed-memory massively parallel computers available today, the performance of a mesoscale model will exceed that of conventional supercomputers; on the teraflops machines expected within the next five years, performance will increase by several orders of magnitude. As a result, scientists will be able to consider larger problems, more complex model processes, and finer resolutions. In this paper. we report on a project at Argonne National Laboratory that will allow scientists to take advantage of parallel computing technology. This Massively Parallel Mesoscale Model (MPMM) will be functionally equivalent to the Penn State/NCAR Mesoscale Model (MM). In a prototype study, we produced a parallel version of MM4 using a static (compile-time) coarse-grained ``patch`` decomposition. This code achieves one-third the performance of a one-processor CRAY Y-MP on twelve Intel 1860 microprocessors. The current version of MPMM is based on all MM5 and uses a more fine-grained approach, decomposing the grid as finely as the mesh itself allows so that each horizontal grid cell is a parallel process. This will allow the code to utilize many hundreds of processors. A high-level language for expressing parallel programs is used to implement communication strearns between the processes in a way that permits dynamic remapping to the physical processors of a particular parallel computer. This facilitates load balancing, grid nesting, and coupling with graphical systems and other models.
Date: December 1, 1992
Creator: Foster, I. & Michalakes, J.
Partner: UNT Libraries Government Documents Department

MPMM: A Massively Parallel Mesoscale Model

Description: Static domain decomposition is a technique that provides a quick path to porting atmospheric models on distributed memory parallel computers. However, parallel inefficiencies in the form of load imbalances and ill-tuned communication are difficult to correct without complicated and explicit recoding. Reconfiguring the code to run on larger or smaller numbers of processors may require recompiling. Modularity and machine independence may also suffer. If full advantage is to be taken of Massively Parallel Processing (MPP) technology, tools and techniques that allow for dynamic performance tuning and reconfiguration are required. Program Composition Notation (PCN) is a language and run-time system for expressing parallel programs developed at Argonne and at the California Institute of Technology. It provides an intermediate layer between the application program and the physical processors of a computer. It allows the model to be statically decomposed over a virtual machine, but this virtual machine can be mapped and remapped dynamically over the physical computer. Programs are portable to as many machines as PCN itself, modularity is easily preserved, and communication tuning for a particular computer is encapsulated within the PCN run-time system. In this paper we report on a project at Argonne National Laboratory to parallelize the Penn State/NCAR Mesoscale Model version 5 using a fine grain decomposition dynamically mapped and managed under PCN.
Date: December 31, 1992
Creator: Foster, I. & Michalakes, J.
Partner: UNT Libraries Government Documents Department

Hierarchical framework for coupling a biogeochemical trace gas model to a general circulation model

Description: A scheme is described for the computation of terrestrial biogeochemical trace gas fluxes in the context of a general circulation model. This hierarchical system flux scheme (HSFS) incorporates five major components: (1) a general circulation model (GCM), which provides a medium-resolution (i.e., 1{degrees} by 1{degrees}) simulation of the atmospheric circulation; (2) a procedure for identifying regions of defined homogeneity of surface type within GCM grid cells; (3) a set of surface process models, to be run within each homogeneous region, which include a biophysical model, the Biosphere Atmospheric Transfer Scheme (BATS), and a biogeochemical model (BGCM); (4) an interpolation/integration system that transfers information between the GCM and surface process models with finer resolution; and (5) an interactive data array based on a geographic information system (GIS), which provides land characteristic information via the interpolator. The goals of this detailed investigation are to compute the local and global sensitivities of trace gas fluxes to GCM and BATS variables, the effects of trace gas fluxes on global climate, and the effects of global climate on specific biomes.
Date: April 1, 1994
Creator: Miller, N. L. & Foster, I. T.
Partner: UNT Libraries Government Documents Department

Parallel Spectral Transform Shallow Water Model: A runtime-tunable parallel benchmark code

Description: Fairness is an important issue when benchmarking parallel computers using application codes. The best parallel algorithm on one platform may not be the best on another. While it is not feasible to reevaluate parallel algorithms and reimplement large codes whenever new machines become available, it is possible to embed algorithmic options into codes that allow them to be ``tuned`` for a paticular machine without requiring code modifications. In this paper, we describe a code in which such an approach was taken. PSTSWM was developed for evaluating parallel algorithms for the spectral transform method in atmospheric circulation models. Many levels of runtime-selectable algorithmic options are supported. We discuss these options and our evaluation methodology. We also provide empirical results from a number of parallel machines, indicating the importance of tuning for each platform before making a comparison.
Date: May 1, 1994
Creator: Worley, P. H. & Foster, I. T.
Partner: UNT Libraries Government Documents Department

Algorithm comparison and benchmarking using a parallel spectra transform shallow water model

Description: In recent years, a number of computer vendors have produced supercomputers based on a massively parallel processing (MPP) architecture. These computers have been shown to be competitive in performance with conventional vector supercomputers for some applications. As spectral weather and climate models are heavy users of vector supercomputers, it is interesting to determine how these models perform on MPPS, and which MPPs are best suited to the execution of spectral models. The benchmarking of MPPs is complicated by the fact that different algorithms may be more efficient on different architectures. Hence, a comprehensive benchmarking effort must answer two related questions: which algorithm is most efficient on each computer and how do the most efficient algorithms compare on different computers. In general, these are difficult questions to answer because of the high cost associated with implementing and evaluating a range of different parallel algorithms on each MPP platform.
Date: April 1, 1995
Creator: Worley, P.H.; Foster, I.T. & Toonen, B.
Partner: UNT Libraries Government Documents Department

Language constructs and runtime systems for compositional parallel programming

Description: In task-parallel programs, diverse activities can take place concurrently, and communication and synchronization patterns are complex and not easily predictable. Previous work has identified compositionality as an important design principle for task-parallel programs. In this paper, we discuss alternative approaches to the realization of this principle. We first provide a review and critical analysis of Strand, an early compositional programming language. We examine the strengths of the Strand approach and also its weaknesses, which we attribute primarily to the use of a specialized language. Then, we present an alternative programming language framework that overcomes these weaknesses. This framework uses simple extensions to existing sequential languages (C++ and Fortran) and a common runtime system to provide a basis for the construction of large, task-parallel programs. We also discuss the runtime system techniques required to support these languages on parallel and distributed computer systems.
Date: March 1, 1995
Creator: Foster, I. & Kesselman, C.
Partner: UNT Libraries Government Documents Department

Double standards: bringing task parallelism to HPF via the message passing interface

Description: High Performance Fortran (HPF) does not allow efficient expression of mixed task/data-parallel computations or the coupling of separately compiled data-parallel modules. In this paper, we show how a coordination library implementing the Message Passing Interface (MPI) can be used to represent these common parallel program structures. This library allows data-parallel tasks to exchange distributed data structures using calls to simple communication functions. We present microbenchmark results that characterize the performance of this library and that quantify the impact of optimizations that allow reuse of communication schedules in common situations. In addition, results from two-dimensional FFT, convolution, and multiblock programs demonstrate that the HPF/MPI library can provide performance superior to that of pure HPF. WE conclude that this synergistic combination of two parallel programming standards represents a useful approach to task parallelism in a data-parallel framework, increasing the range of problems addressable in HPF without requiring complex compiler technology.
Date: December 31, 1996
Creator: Foster, I.; Dohr, D.R.; Krishnaiyer, R. & Choudhary, A.
Partner: UNT Libraries Government Documents Department

Parallel algorithms for semi-Lagrangian transport in global atmospheric circulation models

Description: Global atmospheric circulation models (GCM) typically have three primary algorithmic components: columnar physics, spectral transform, and semi-Lagrangian transport. In developing parallel implementations, these three components are equally important and can be examined somewhat independently. A two-dimensional horizontal data decomposition of the three-dimensional computational grid leaves all physics computations on processor, and the only efficiency issues arise in load balancing. A recently completed study by the authors of different approaches to parallelizing the spectral transform showed several viable algorithms. Preliminary results of an analogous study of algorithmic alternatives for parallel semi-Lagrangian transport are described here.
Date: February 1995
Creator: Drake, J. B.; Worley, P. H.; Michalakes, J. & Foster, I. T.
Partner: UNT Libraries Government Documents Department

The Nexus task-parallel runtime system

Description: A runtime system provides a parallel language compiler with an interface to the low-level facilities required to support interaction between concurrently executing program components. Nexus is a portable runtime system for task-parallel programming languages. Distinguishing features of Nexus include its support for multiple threads of control, dynamic processor acquisition, dynamic address space creation, a global memory model via interprocessor references, and asynchronous events. In addition, it supports heterogeneity at multiple levels, allowing a single computation to utilize different programming languages, executables, processors, and network protocols. Nexus is currently being used as a compiler target for two task-parallel languages: Fortran M and Compositional C++. In this paper, we present the Nexus design, outline techniques used to implement Nexus on parallel computers, show how it is used in compilers, and compare its performance with that of another runtime system.
Date: December 31, 1994
Creator: Foster, I.; Tuecke, S. & Kesselman, C.
Partner: UNT Libraries Government Documents Department

Public key infrastructure for DOE security research

Description: This document summarizes the Department of Energy`s Second Joint Energy Research/Defence Programs Security Research Workshop. The workshop, built on the results of the first Joint Workshop which reviewed security requirements represented in a range of mission-critical ER and DP applications, discussed commonalties and differences in ER/DP requirements and approaches, and identified an integrated common set of security research priorities. One significant conclusion of the first workshop was that progress in a broad spectrum of DOE-relevant security problems and applications could best be addressed through public-key cryptography based systems, and therefore depended upon the existence of a robust, broadly deployed public-key infrastructure. Hence, public-key infrastructure ({open_quotes}PKI{close_quotes}) was adopted as a primary focus for the second workshop. The Second Joint Workshop covered a range of DOE security research and deployment efforts, as well as summaries of the state of the art in various areas relating to public-key technologies. Key findings were that a broad range of DOE applications can benefit from security architectures and technologies built on a robust, flexible, widely deployed public-key infrastructure; that there exists a collection of specific requirements for missing or undeveloped PKI functionality, together with a preliminary assessment of how these requirements can be met; that, while commercial developments can be expected to provide many relevant security technologies, there are important capabilities that commercial developments will not address, due to the unique scale, performance, diversity, distributed nature, and sensitivity of DOE applications; that DOE should encourage and support research activities intended to increase understanding of security technology requirements, and to develop critical components not forthcoming from other sources in a timely manner.
Date: June 1997
Creator: Aiken, R.; Foster, I. & Johnston, W. E.
Partner: UNT Libraries Government Documents Department

A secure communications infrastructure for high-performance distributed computing

Description: Applications that use high-speed networks to connect geographically distributed supercomputers, databases, and scientific instruments may operate over open networks and access valuable resources. Hence, they can require mechanisms for ensuring integrity and confidentially of communications and for authenticating both users and resources. Security solutions developed for traditional client-server applications do not provide direct support for the program structures, programming tools, and performance requirements encountered in these applications. The authors address these requirements via a security-enhanced version of the Nexus communication library; which they use to provide secure versions of parallel libraries and languages, including the Message Passing Interface. These tools permit a fine degree of control over what, where, and when security mechanisms are applied. In particular, a single application can mix secure and nonsecure communication, allowing the programmer to make fine-grained security/performance tradeoffs. The authors present performance results that quantify the performance of their infrastructure.
Date: August 1, 1997
Creator: Foster, I.; Koenig, G. & Tuecke, S.
Partner: UNT Libraries Government Documents Department

FOAM: Expanding the horizons of climate modeling

Description: We report here on a project that expands the applicability of dynamic climate modeling to very long time scales. The Fast Ocean Atmosphere Model (FOAM) is a coupled ocean atmosphere model that incorporates physics of interest in understanding decade to century time scale variability. It addresses the high computational cost of this endeavor with a combination of improved ocean model formulation, low atmosphere resolution, and efficient coupling. It also uses message passing parallel processing techniques, allowing for the use of cost effective distributed memory platforms. The resulting model runs over 6000 times faster than real time with good fidelity, and has yielded significant results.
Date: October 1, 1997
Creator: Tobis, M.; Foster, I.T. & Schafer, C.M.
Partner: UNT Libraries Government Documents Department