Results 1 - 10
of
30
Toward a Common Component Architecture for High-Performance Scientific Computing
- IN PROCEEDINGS OF THE 8TH IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTATION
, 1999
"... This paper describes work in progress to develop a standard for interoperability among high-performance scientific components. This research stems from growing recognition that the scientific community needs to better manage the complexity of multidisciplinary simulations and better address scalable ..."
Abstract
-
Cited by 182 (45 self)
- Add to MetaCart
This paper describes work in progress to develop a standard for interoperability among high-performance scientific components. This research stems from growing recognition that the scientific community needs to better manage the complexity of multidisciplinary simulations and better address scalable performance issues on parallel and distributed architectures. Driving forces are the need for fast connections among components that perform numerically intensive work and for parallel collective interactions among components that use multiple processes or threads. This paper focuses on the areas we believe are most crucial in this context, namely, an interface definition language that supports scientific abstractions for specifying component interfaces and a ports connection model for specifying component interactions.
The GrADS project: Software support for high-level grid application development
- International Journal of High Performance Computing Applications
, 2001
"... Advances in networking technologies will soon make it possible to use the global information infrastructure in a qualitatively different way—as a computational resource as well as an information resource. This idea for an integrated computation and information resource called the Computational Power ..."
Abstract
-
Cited by 120 (22 self)
- Add to MetaCart
Advances in networking technologies will soon make it possible to use the global information infrastructure in a qualitatively different way—as a computational resource as well as an information resource. This idea for an integrated computation and information resource called the Computational Power Grid has been described by the recent book entitled The Grid: Blueprint for a New Computing Infrastructure [18]. The Grid will connect the nation’s computers, databases, instruments, and people in a seamless web, supporting emerging computation-rich application concepts such as remote computing, distributed supercomputing, tele-immersion, smart instruments, and data mining. To realize this vision, significant scientific and technical obstacles must be overcome. Principal among these is usability. Because the Grid will be inherently more complex than existing computer systems, programs that execute on the Grid will reflect some of this complexity. Hence, making Grid resources useful and accessible to scientists and engineers will require new software tools that embody major advances in both the theory and practice of building Grid applications. The goal of the Grid Application Development Software (GrADS) Project is to simplify distributed heterogeneous computing in the same way that the World Wide Web simplified information sharing
The programming model of ASSIST, an environment for parallel and distributed portable applications
, 2002
"... A software development system based uponin0/----E30 skeleton technology (ASSIST)i a proposal of a new programmi/ enviammi/ oriiam to the development of parallel and di0 tri0C/3 hiC/3C/0:/EEC90 applii0:/E accordi to auniCfl approach. The mai goals are: hi:0CCP--C programmabiQQ9 and softwareproductiC/ ..."
Abstract
-
Cited by 73 (19 self)
- Add to MetaCart
A software development system based uponin0/----E30 skeleton technology (ASSIST)i a proposal of a new programmi/ enviammi/ oriiam to the development of parallel and di0 tri0C/3 hiC/3C/0:/EEC90 applii0:/E accordi to auniCfl approach. The mai goals are: hi:0CCP--C programmabiQQ9 and softwareproductiC/Q for complexmulti0PC/PE0:/33 appli0 tipli ipli0P data-iPC/PE0: andi0/fl3C90:/ software; performance portabince across dioss ent platforms,i partims,0 large-scale platforms andgri/Q e#ecti-- reuse of parallel software; e#ciwa evoluti; ofappli30:/CC through versih0 that scaleaccordi9 to theunderlyi: technologiCC The purpose ofthi paperi to show the pri99fl30: of the proposed approachi terms of the programmifl model(successi0 paperswie deal wil theenvi39--0:/ ivi39--0:/flfl# andwiE performance evaluatice0 The features and thecharacteri###3 of the ASSIST programmiC model aredescri3fl accordifl to anoperati:flQ semanti style andusiP examples todrifl the presentati3Q to show the expressi: power and todiP--#-- the research iesear Accordih to ourpreviC9 experi90: i structured parallelprogrammi3C i ASSIST we wi0 to overcome some li0fl3--PE0: of theclassi--fl skeletog approach toi0P--Q/ generalifl and flexi/0:flPP expressiP power ande#ci/CE fori0/3--Qfl0: dynami andi0P--39--0:fl appli39 tipli as well as for complexcombi0flEQ3C of task and dataparalleli:fl A newparadi#/ www.elsevi r.com/locate/parco Parallel Computi0 28 (2002) 1709--1732 qThi work has been supported by the Italian Space Agency: ASI-PQE2000 Project on "Development of Earth Observatis Applit0flP ns by means of Systems and Tools forHiPfl--P--0:Q# anceComputiQ0:Q and by theNatio3fl ResearchCoearc :Agenzi 2000 Project on "DevelopmentEnviPC#3 nt forMulti3E0:3 rm and Multi/0: uageHi0fl9fl--Q0 rmanceAppli/flQ-- ns, Based up...
Efficient coupling of parallel applications using paws
- In Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computation
, 1998
"... PAWS (Parallel Application WorkSpace) is a software infrastructure for use in connecting separate parallel applications within a component-like model. A central PAWS Controller coordinates the linking of serial or parallel applications across a network to allow them to share parallel data structures ..."
Abstract
-
Cited by 36 (2 self)
- Add to MetaCart
PAWS (Parallel Application WorkSpace) is a software infrastructure for use in connecting separate parallel applications within a component-like model. A central PAWS Controller coordinates the linking of serial or parallel applications across a network to allow them to share parallel data structures such as multidimensional arrays. Applications use the PAWS API to indicate which data structures are to be shared and at what points the data is ready to be sent or received. PAWS implements a general parallel data descriptor, and automatically carries out parallel layout remapping when necessary. Connections can be dynamically established and dropped, and can use multiple data transfer pathways between applications. PAWS uses the NEXUS communication library and is independent of the application’s parallel communication mechanism. 1.
Component Architectures for Distributed Scientific Problem Solving
- IEEE Computational Science and Engineering
, 1998
"... this paper we examine the concepts behind the component technology programming paradigm and illustrate them with a prototype system solving the linear algebra algorithm selection problem. We begin with a more detailed look at the user level programming model for the prototype system (called the Line ..."
Abstract
-
Cited by 26 (6 self)
- Add to MetaCart
this paper we examine the concepts behind the component technology programming paradigm and illustrate them with a prototype system solving the linear algebra algorithm selection problem. We begin with a more detailed look at the user level programming model for the prototype system (called the Linear System Analyzer (LSA)) which illustrates the component composition model of distributed computing. Section three of this article discusses the general characteristics of components and their composition architectures, and surveys some of the existing commercial and experimental implementations. Component based systems actually involve two levels of programming. At the user level, programming consists of selecting and connecting components together into a component network. This is often accomplished with a graphical user interface that is modeled on circuit design and layout metaphors. The next level of programming is encountered when the user wishes to build a new component. In section four we describe the process of building components using HPC++ and Fortran. 2 LSA: A System for Composing Distributed Linear Algebra Solvers
A Parallel CORBA Component Model for Numerical Code Coupling
- Proc. of the 3nd International Workshop on Grid Computing, LNCS
, 2002
"... ..."
PAWS: Collective Interactions and Data Transfers
- in Proceedings of the High Performance Distributed Computing Conference
, 2001
"... In this paper we discuss problems and solutions pertaining to the interaction of components representing parallel applications. We introduce the notion of a collective port which is an extension of the Common Component Architecture (CCA) ports and allows collective components representing parallel a ..."
Abstract
-
Cited by 19 (1 self)
- Add to MetaCart
In this paper we discuss problems and solutions pertaining to the interaction of components representing parallel applications. We introduce the notion of a collective port which is an extension of the Common Component Architecture (CCA) ports and allows collective components representing parallel applications to interact as one entity. We further describe a class of translation components, which translate between the distributed data format used by one parallel implementation to that used by another. A well known example of such components is the MxN component which translates between data distributed on M processors to data distributed on N processors. We describe its implementation in Parallel Application Work Space (PAWS), as well as the data structures PAWS uses to support it. We also present a mechanism allowing the framework to invoke this component on the programmer’s behalf whenever such translation is necessary, freeing the programmer from treating collective component interactions as a special case. In doing that we introduce framework-based, user-defined distributed type casts. Finally, we discuss our initial experiments in building optimized complex translation components out of atomic functionalities. 1.
Programming the Grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications
- Journal of Cluster Computing
, 2002
"... Computational Grids [Grid, Grid1] have become an important asset in large-scale scientific and engineering research. By providing a set of services that allow a widely distributed collection of resources to be tied together into a relatively seamless computing framework, teams of researchers can col ..."
Abstract
-
Cited by 17 (3 self)
- Add to MetaCart
Computational Grids [Grid, Grid1] have become an important asset in large-scale scientific and engineering research. By providing a set of services that allow a widely distributed collection of resources to be tied together into a relatively seamless computing framework, teams of researchers can collaborate to solve problems that they could not have attempted before. Unfortunately the task of building Grid applications remains extremely difficult because there are few tools available to support developers. To build reliable and re-usable Grid applications, programmers must be equipped with a programming framework that hides the details of most Grid services and allows the developer a consistent, non-complex model in which applications can be composed from well tested, reliable sub-units. This paper describes experiences with using a software component framework for building Grid applications. The framework, which is based on the DOE Common Component Architecture (CCA) [CCA, CCAT, CCA1,CCA2], allows individual components to export function/service interfaces that can be remotely invoked by other components. The framework also provides a simple messaging/event system for asynchronous notification between application components. The paper also describes how the emerging Web-Services [WSDL] model fits with a component-oriented application design philosophy. To illustrate the connection between web services and Grid application programming we describe a simple design pattern for application factory services which can be used to simplify the task of building reliable Grid programs. Finally we address several issues of Grid programming that better understood from the perspective of Peer-to-Peer (P2P) systems. In particular we describe how models for collaboration and resource ...
Ligature: Component Architecture for High-Performance Applications
- The International Journal of High Performance Computing Applications
"... The increasing feasibility of developing applications spanning nationwide supercomputing resources makes possible the creation of simulations composed of multiple interdisciplinary components and capable of modeling natural and social phenomena of national importance with unprecedented speed and acc ..."
Abstract
-
Cited by 16 (1 self)
- Add to MetaCart
The increasing feasibility of developing applications spanning nationwide supercomputing resources makes possible the creation of simulations composed of multiple interdisciplinary components and capable of modeling natural and social phenomena of national importance with unprecedented speed and accuracy. However, the potential offered by hardware technology often fails to be fully realized due to the lack of software environments supporting such efforts. Furthermore, the complexity of combining within one application components with different performance characteristics often prevents such applications from achieving required performance levels. The Ligature project at LANL addresses the issue of designing a software infrastructure enabling fast and efficient development of multi-component applications, and that of providing performance guidance to the programmer using this infrastructure. Ligature allows the programmer to define component interfaces specifying how heterogeneous, dist...
PARDIS: CORBA-based Architecture for Application-Level Parallel Distributed Computation
- In Supercomputing ’97
, 1997
"... : Modern technology provides the infrastructure necessary to develop distributed applications capable of using the power of multiple supercomputing resources and exploiting their diversity. The performance potential offered by distributed supercomputing is enormous, but it is hard to realize due to ..."
Abstract
-
Cited by 15 (3 self)
- Add to MetaCart
: Modern technology provides the infrastructure necessary to develop distributed applications capable of using the power of multiple supercomputing resources and exploiting their diversity. The performance potential offered by distributed supercomputing is enormous, but it is hard to realize due to the complexity of programming in such environments. In this paper we introduce PARDIS, a system designed to overcome this challenge, based on ideas underlying the Common Object Request Broker Architecture (CORBA), a successful industry standard. PARDIS is a distributed environment in which objects representing data-parallel computations, called SPMD objects, as well as non-parallel objects present in parallel programs, can interact with each other across platforms and software systems. Each of these objects represents a small encapsulated application and can be used as a building block in the construction of powerful distributed metaapplications. The objects interact through interfaces spec...

