Results 1 - 10
of
14
A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers
- Softw. Pract. Exper
, 2010
"... Structured parallel programs ought to be conceived as two separate and complementary entities: computation, which expresses the calculations in a procedural manner, and coordination, which abstracts the interaction and communication. By abstracting commonly-used patterns of parallel computation, com ..."
Abstract
-
Cited by 50 (3 self)
- Add to MetaCart
(Show Context)
Structured parallel programs ought to be conceived as two separate and complementary entities: computation, which expresses the calculations in a procedural manner, and coordination, which abstracts the interaction and communication. By abstracting commonly-used patterns of parallel computation, communication, and interaction, algorithmic skeletons enable programmers to code algorithms without specifying platform-dependent primitives. This article presents a literature review on algorithmic skeleton frameworks (ASKF), parallel software development environments furnishing a collection of parameterisable algorithmic skeletons, where the control flow, nesting, resource monitoring, and portability of the resulting parallel program is dictated by the ASKF as opposed to the programmer. Consequently, the ASKF can be positioned as high-level structured parallel programming enablers, as their systematic utilisation permits the abstract description of programs and fosters portability by focusing on the description of the algorithmic structure rather than on its detailed implementation. Copyright c © 0000 John Wiley & Sons, Ltd.
FAULT-TOLERANT DATA SHARING FOR HIGH- LEVEL GRID PROGRAMMING: A HIERARCHICAL STORAGE ARCHITECTURE
, 2010
"... Keywords: Enabling high-level programming models on grids is today a major challenge. A way to achieve this goal relies on the use of environments able to transparently and automatically provide adequate support for low-level, grid-specific issues (fault-tolerance, scalability, etc.). This paper dis ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
(Show Context)
Keywords: Enabling high-level programming models on grids is today a major challenge. A way to achieve this goal relies on the use of environments able to transparently and automatically provide adequate support for low-level, grid-specific issues (fault-tolerance, scalability, etc.). This paper discusses the above approach when applied to grid data management. As a case study, we propose a 2-tier software architecture that supports transparent, fault-tolerant, grid-level data sharing in the ASSIST programming environment (University of Pisa), based on the JuxMem grid data sharing service (INRIA Rennes).
High level grid programming with ASSIST
, 2006
"... The development of efficient grid applications usually requires writing huge portions of code directly at the level of abstraction provided by the underlying grid middleware. In this work we discuss an alternative approach, raising the level of abstraction used when programming grid applications. Ou ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
The development of efficient grid applications usually requires writing huge portions of code directly at the level of abstraction provided by the underlying grid middleware. In this work we discuss an alternative approach, raising the level of abstraction used when programming grid applications. Our approach requires programmers just to describe in a qualitative way the kind of parallelism they want to express. Then, compiler tools, loader tools and run time system take complete care of running the application on a grid target architecture. This allows to move most of the cumbersome tasks related to grid targeting and management from programmer responsibility to tools. This paper introduces the structured parallel programming environment ASSIST, whose design is aimed at raising the level of abstraction in grid programming and discusses how it can support transparent grid programming while implementing grid adaptivity.
Skeleton parallel programming and parallel objects
- Proc. of the Integrated Research in Grid Computing Workshop
, 2006
"... Abstract. We describe here the ongoing work aimed at integrating the POP-C++ parallel object programming environment with the ASSIST component based parallel programming environment. Both these programming environments are shortly outlined, first. Then several possibilities of integration are consid ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
(Show Context)
Abstract. We describe here the ongoing work aimed at integrating the POP-C++ parallel object programming environment with the ASSIST component based parallel programming environment. Both these programming environments are shortly outlined, first. Then several possibilities of integration are considered. For each one of these integration opportunities, the advantages and synergies that can be possibly achieved are outlined and discussed. Eventually, the current status of integration of the two environments is discussed, along with the expected results and fallouts on the two programming environments. 1
A Survey of Algorithmic Skeleton Frameworks: High-Level
, 2016
"... A survey of algorithmic skeleton frameworks: high-level structured parallel programming ..."
Abstract
- Add to MetaCart
(Show Context)
A survey of algorithmic skeleton frameworks: high-level structured parallel programming
Current & Future Issues of High-End Computing,
"... Permission to make digital or hard copies of portions of this work for personal or classroom use is granted provided that the copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise requires pri ..."
Abstract
- Add to MetaCart
(Show Context)
Permission to make digital or hard copies of portions of this work for personal or classroom use is granted provided that the copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise requires prior specific permission by the publisher mentioned above.
Top-down definition of Network Centric Operating System features
"... Network (and grid, if we view grids as networks with specific middleware on top of the component processing node operating systems) programming is an hard task due to the necessity of taking into account network latencies and faults, dynamic node availability and load, performance/efficiency require ..."
Abstract
- Add to MetaCart
(Show Context)
Network (and grid, if we view grids as networks with specific middleware on top of the component processing node operating systems) programming is an hard task due to the necessity of taking into account network latencies and faults, dynamic node availability and load, performance/efficiency requirements and constrains, etc. Figure 1 Factorizing our long experience in the field of high performance, structured parallel programming models for workstation clusters/networks and grids, we propose to derive a sort of reduced instruction set to be included in a network centric operating system to support layered responsibility in the development of network/grid applications. We claim that the basic features needed to run grid applications is only a small set of features, including efficient data/file transfer, resource inventory/discovery, remote commanding, accounting and communication. We also claim that these few mechanisms can be exploited using a mix of static techniques (compiler based) and dynamic techniques (run time system based) to implement the programming model at hand, much in the sense the RISC processor instructions was exploited to implement completely different high level programming languages [1][2]. Therefore we propose to study an approach like the one summarized in Figure 1. Typical, effective grid applications should be studied to