Conor Callahan, Keith D. Cooper, Robert Hood et al. · The International Journal of Supercomputing Applications · 1988
The ParaScope programming environment, under de velopment at Rice University, has been designed to as sist in the formulation, implementation, and debugging of parallel Fortran programs. In its implementation, ParaScope merges the technologies of automatic paral lelism detection and integrated programming environ ments. This paper discusses the issues that underlie the design of ParaScope's editor, compiler, and debugger. The editor includes mechanisms for viewing and manip ulating the program's dependence structure. The compi lation system uses information from the various tools in the programming environment to optimize entire pro grams for specific parallel architectures. The debugging system includes facilities for remote debugging on par allel machines, using information from the editor and compiler to help isolate schedule-dependent errors.
Cited by 83
Reference Edition, Van Rosendale, G. The et al. · 2007
Introduction to SETL. Springer-Verlag, New York, 1986. [24] Seevers, B., Quinn, M. and Hatcher, P. A Parallel Programming Environment Supporting Multiple Data-Parallel Modules. In Workshop on Languages, Compilers, and Run-Time Environments for Distributed Memory Multicomputers, pages 44--47, Boulder, Colorado, September 1992. [25] Subhlok, J., Stichnoth, J.M., O'Hallaron, D.R. and Gross, T. Exploiting Task and Data Parallelism on a Multicomputer. In Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 13--22, San Diego, California, May 1993. References
Cited by 0
Snyder · Computer · 1984
Abstract : Parallel programming is described as the conversion of an abstract, machine independent algorithm to a form, called a program, suitable for execution on a particular computer. The conversion activity is simplified where the form of the abstraction is close to the form required of the programming system. Fine mechanisms are identified as commonly occurring in algorithms specification. The Poker Parallel Programming Environment is known to support these five mechanisms conveniently; thus the conversion is easy and the parallel programming is simple. The Poker environment is described and examples are provided. An analysis of the efficiency of the programming facilities provided by Poker is given and they all seem to be very efficient. (Author)
Cited by 128
Werner Krotz–Vogel, Hans–Christian Hoppe · Lecture notes in computer science · 1997
Cited by 5
In‐Sung Park, Michael Voss, Seon Wook Kim et al. · Scientific Programming · 2001
We present our effort to provide a comprehensive parallel programming environment for the OpenMP parallel directive language. This environment includes a parallel programming methodology for the OpenMP programming model and a set of tools (Ursa Minor and InterPol) that support this methodology. Our toolset provides automated and interactive assistance to parallel programmers in time‐consuming tasks of the proposed methodology. The features provided by our tools include performance and program structure visualization, interactive optimization, support for performance modeling, and performance advising for finding and correcting performance problems. The presented evaluation demonstrates that our environment offers significant support in general parallel tuning efforts and that the toolset facilitates many common tasks in OpenMP parallel programming in an efficient manner.
Cited by 29Open access
S. K. S. Gupta · 2007
We will describe initial investigation into a software architecture which supports a refinementbased parallel programming methodology. The architecture is based on blending a componentbased visual programming approach with the hyptertext model to give a seamless programming environment for parallel program development targeting various platforms, where hypertext links capture refinement steps as well as access to distributed code resources. 1 Introduction Development of sophisticated parallel software systems requires programming environment which can support various software engineering tasks such as: ffl Refinement: Due to diversity of parallel programming platforms and parallel computational models, along with the necessity to experiment with various design ideas, a refinement-based methodology is required for the development of parallel software. ffl Version Control: Any non-trivial (parallel) program requires maintaining different versions of the software, which may be sui...
Cited by 0
Kacsuk, Péter, Forrai, S. · SZTAKI Publication Repository (Hungarian Academy of Sciences) · 1999
Cited by 0
BACCI B., CANTALUPO B., ORLANDO S. et al. · CINECA IRIS Institutial research information system (University of Pisa) · 1997
Cited by 0
Gao Hendren Panangaden, G. Gao, L. Hendren et al. · 1992
This paper presents an important project whose objective is to develop a Portable Parallel Programming Environment, called EPPP, for current and future generation parallel computers. Our environment will be portable in the sense that the user will be able to rapidly port his/her application on a variety of parallel architectures. That is, our goal is to allow the programmer to develop, debug and tune his/her application on a workstation; a simulator will provide the user's execution platform at low cost. To produce an executable program for a particular architecture, the high-level program will be combined with domain-specific and architecture-specific information to produce a compiled program that will run efficiently on the specified architecture. This information will be provided by the environment, the user, or a combination of both. The proposed environment integrates a parallel programming paradigm, a compiling methodology, a simulator, and a complete set of analysis tools. Benc...
Cited by 0
Babak Dehbonei, Camille Laurent, Nadia Tawbi et al. · 2002
Presents a parallel programming environment called PMACS. The central structure of this environment is the Parametrized Dependence Graph that gives a very precise representation of dependencies. It also facilitates the recompilation of dependencies whenever the user is requested to introduce information about the program. A unique framework for the interprocedural constant propagation and the interprocedural side-effect analysis, based on symbolic evaluation, is used. A powerful tool for displaying graphs has also been carried out. It allows the user to understand the detected inherent parallelism of his program. A first release of PMACS written in C is already implemented.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
Cited by 2
Bruno Bacci, Barbara Cantalupo, Marco Danelutto et al. · 1997
Cited by 13
Sener, C, Paker, Y, Kiper, A · OpenMETU (Middle East Technical University) · 1996
Parallel computing, increasingly used for computationally intensive problems, requires considerable expertise and time, limiting then widespread use. This article presents a data-parallel programming tool to simplify the task of developing parallel programs based on data-parallel type. It has been originally developed for the Hellos operating system running on a network of Transputers, and then ported to the IBM SP/2 system executing two parallel programming environments. With its interface to the C language, it is portable to the parallel environments having the support for the basic message passing primitives send and receive. The use of the tool is illustrated and explained through the example of finding column-sums of a matrix. Finally, the performance of the tool is discussed focusing on the speed-up curves of the parallel programs developed with the tool to solve a numerical and an image processing problem.
Cited by 0
Bradley K. Seevers, Michael J. Quinn, Philip J. Hatcher · ACM SIGPLAN Notices · 1993
We describe a system that allows programmers to take advantage of both control and data parallelism through multiple data-parallel modules. This system extends C-type stream I/O to include inter-module communication channels. The programmer writes each module separately, then develops a specification that instructs the system how to connect the modules together. Our current system extends the Dataparallel C language and runs on the Intel iWarp computing system.
Cited by 6Open access
Bradley K. Seevers, Michael J. Quinn, Philip J. Hatcher · International Journal of Parallel Programming · 1992
Cited by 10
Stefan Lamberts, Georg Stellner, Arndt Bode et al. · 1993
Today&apos;s requirements for computational power are still not satisfied. Supercomputers on the one hand achieve good performance figures for a great variety of applications but are expensive to buy and maintain. Multiprocessors like the Paragon XP/S are cheaper but require more effort to port applications. As one consequence, much computational power of such systems is wasted with debugging these codes. An attempt to withdraw implementation and debugging codes from multiprocessor systems is the usage of coupled workstations. A software environment for networks of workstations allows for implementation and testing of applications. After having been tested the applications can then be shifted to the multiprocessor systems by recompilation. The paper describes the design and implementation of an environment which allows to use Ethernet coupled Sun SPARC systems as a development platform for applications targeted for Intel Paragon XP/S systems. 1 Motivation Scientific and commercial applicat...
Cited by 0
A. A. Holzbacher · 2007
This paper describes parallel programming in ConCoord [Hol96a, Hol96b], an environment for concurrent coordinated programming of networks of sequential and parallel machines. A ConCoord program is a dynamic collection of computation processes and coordination processes communicating via message passing. A computation process executes a sequential algorithm. A coordination process executes a parallel algorithm by making dynamic structural changes in a sub-collection of program processes called a coordination domain. ConCoord contributes in two ways to parallel programming. First, it supports the expression in a natural manner of dynamic process-oriented parallel algorithms. Such algorithms can be based on different types of processes like functional processes and interactive processes. Second, ConCoord facilitates the engineering of parallel software applications by supporting different levels of abstraction and reuse in program development. The abstraction levels derive from the separ...
Cited by 0
Joachim Maier · 1993
Pact is a parallel programming environment relieving the programmer from the burdens of parallel programming which are not really necessary to write efficient parallel programs. This is done by providing a simple synchronization model and virtual shared data with user-defined granularity and automatic consistency control. Pact guarantees user-transparent fault-tolerance with low overhead by using atomic actions as basic units of parallel execution. Additionally, the runtime system maps parallel actions to server processes using dynamic load-balancing. An included on-line visualization tool helps tuning and debugging parallel programs. 1
Cited by 0
Guy Edjlali, Gagan Agrawal, Alan Sussman et al. · 2002
For better utilization of computing resources, it is important to consider parallel programming environments in which the number of available processors varies at runtime. In this paper, we discuss runtime support for data parallel programming in such an adaptive environment. Executing data parallel-programs in an adaptive environment requires redistributing data when the number of processors changes, and also requires determining new loop bounds and communication patterns for the new set of processors. We have developed a runtime library to provide this support. We also present performance results for a multiblock Navier-Stokes solver run on a network of workstations using PVM for message passing. Our experiments show that if the number of processors is not varied frequently, the cost of data redistribution is not significant compared to the time required for the actual computations.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
Cited by 21
Stefan U. Hänßgen, Ernst A. Heinz, Paul Lukowicz et al. · 1993
This paper presents a portable parallel programming environment for Modula-2* -- an explicitly parallel machine-independent extension of Modula-2. Modula-2* offers synchronous and asynchronous parallelism, a global single address space, and automatic data and process distribution. The Modula-2* system consists of a compiler, a debugger, a cross-architecture make, a runtime systems for different machines, and a set of scalable parallel libraries. Implementations exist for the MasPar MP series of massively parallel processors (SIMD), the KSR-1 parallel computer (MIMD), heterogeneous LANs of workstations (MIMD), and single workstations (SISD). The paper presents the important components of the Modula-2* environment and discusses selected implementation issues. We focus on how we achieve a high degree of portability for our system while at the same time ensuring efficiency. 1 Introduction The demand for increasing computer performance at reasonable cost leads to rising interest in parall...
Cited by 0
Krämer-Fuhrmann, O. · Publikationsdatenbank der Fraunhofer-Gesellschaft (Fraunhofer-Gesellschaft) · 1998
S.38-39
Cited by 0