Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 2,975 papers for “parallel programming environment”

Data‐Parallel Programming in a Multithreaded Environment

Matthew Haines, Piyush Mehrotra, David Cronk · Scientific Programming · 1996

Research on programming distributed memory multiprocessors has resulted in a well‐understood programming model, namely data‐parallel programming. However, data‐parallel programming in a multithreaded environment is far less understood. For example, if multiple threads within the same process belong to different data‐parallel computations, then the architecture, compiler, or run‐time system must ensure that relative indexing and collective operations are handled properly and efficiently. We introduce a run‐time‐based solution for data‐parallel programming in a distributed memory environment that handles the problems of relative indexing and collective communications among thread groups. As a result, the data‐parallel programming model can now be executed in a multithreaded environment, such as a system using threads to support both task and data parallelism.

Cited by 0Open access

Data parallel programming in an adaptive environment

Guy Edjlali, Gagan Agrawal, Alan Sussman et al. · 1995

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 discuss how the runtime library can be used by compilers to generate code for an adaptive environment. 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 computatio...

Cited by 17

A Programming Environment for Parallel Vision Algorithms

Christopher M. Brown · 1988

Abstract : During the third year of the award period, the Computer Science Department of the University of Rochester concentrated on (1) operating systems, debugging support, and performance monitoring for parallel computation, (2) systems utilities for large-scale MIMD (multiple instruction stream, multiple data stream) computation, and (3) applications in active vision. This research produced internal reports, as well as some exportable code several demonstration systems. Implementation of Psyche, a new operating system for large shared- memory non-uniform memory access time computers has begun. The BBN Butterfly Parallel Processor was not applied to low-level vision; instead a parallel- pipelined special-purpose device, the Datacube MaxVideo system, was integrated into the laboratory environment. The vision laboratory was also enhanced by a robot arm that positions and moves the three degree-of-freedom, two-camera robot head. Work was begun on an integrated, heterogeneously parallel system using the Butterfly, the MaxVideo, and other local computers to do complex visuo-motor tasks. Keywords: Parallel processors, Computer vision, Butterfly computer.

Cited by 0

A portable programming environment for parallel computers

CORPORATE Parasoft Corporation · 1988

Article A portable programming environment for parallel computers Share on Author: CORPORATE Parasoft Corporation View Profile Authors Info & Claims C3P: Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues - Volume 1January 1988 Pages 893–895https://doi.org/10.1145/62297.62432Online:01 January 1988Publication History 0citation79DownloadsMetricsTotal Citations0Total Downloads79Last 12 Months0Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access

Cited by 5

A Knowledge-Based Scientific Parallel Programming Environment

Karsten M. Decker, Jiří Dvořák, René M. Rehmann · Birkhäuser Basel eBooks · 1994

Distributed memory parallel systems are still lacking simple and economic programmability, since, from the scientific programmer’s point of view, first generation tools and environments for distributed memory parallel processor systems are largely insufficient. In this paper, we present an overview of our approach to parallel distributed programming environments overcoming these limitations: a knowledge-based problem-solving environment for programming parallel distributed systems. The environment features a problem-oriented specification formalism and is based on a skeleton-oriented programming methodology. The large set of fine-grain algorithmic skeletons used in the system is managed with a knowledge-based component. Skeletons are completed with computational components by means of automatic program synthesis techniques. We describe in detail a working prototype that, for the class of stencil-based problems, supports transparent programming of parallel distributed systems, while successfully addressing and solving some of the problems of performance, portability and software reuse.

Cited by 18

Glenda: an environment for easy parallel programming

B. R. Seyfarth, Jerry L. Bickham, Montse Fernández · 2002

Introduces a software package called "Glenda", designed to support easy parallel programming. Glenda implements a coordination language based on a global "tuple space". This coordination language consists of seven operations to output and input tuples from within participating programs. Glenda communications are performed using PVM (Parallel Virtual Machine) message passing functions. The Glenda package consists of a preprocessor to add the coordination operations to the C programming language, a set of communication functions and a tuple server process. We show the utility of Glenda based on an underwater acoustic modeling benchmark.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">&gt;</ETX>

Cited by 4

Faust: an integrated environment for parallel programming

Vincent A. Guarna, Dennis Gannon, D. Jablonowski et al. · IEEE Software · 1989

A description is given of Faust, an integrated environment for the development of large, scientific applications. Faust includes a project-management tool, a context editor that is interfaced to a program database, and performance-evaluation tools. In Faust, all applications work is done in the context of projects, which serve as the focal point for all tool interactions. A project roughly corresponds to an executable program. Faust achieves functional integration through operations on common data sets maintained in each project. Sigma, a Faust tool designed to help users of parallel supercomputers retarget and optimize application code, helps them either fine-tune parallel code that has been automatically generated or optimize a new parallel algorithm's design. Faust includes a dynamic call-graph tool and an integrated, multiprocessor performance analysis and characterization tool set.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">&gt;</ETX>

Cited by 58

Millipede - A Programming Environment providing Graphical Support for Parallel Programming

Mats Aspnäs, R. J. R. Back, Thomas Långbacka · 1991

This paper describes Millipede, a graphical programming environment for a Transputer-based MIMD multiprocessor system. The environment provides a visual extension to the CSP/Occam programming model. Parallel programs are described as graphs, where the nodes denote parallel processes and the edges denote communication channels between processes. Graphs are constructed using a hierarchical graph editor which allows the user to group processes (nodes) together into hierarchical process structures. The highest level in the graph hierarchy, called the processor graph, also describes the processor network on which to execute the parallel program. Millipede contains tools for mapping processor graphs onto a reconfigurable transputer network and for configuring the target processor network accordingly. Monitoring data, produced and collected by a performance monitoring system, can also be presented upon the processor graph. 1 Introduction Programming multiprocessor systems is often associated...

Cited by 0

Corba version of Concordia parallel programming environment (CPPE)

Shiyi Wu · Spectrum Research Repository (Concordia University) · 2000

In this major report, we present the design and implementation of the Corba Version of the Concordia Parallel Programming Environment (CPPE), a client-server-based simulator for parallel programming environment. The purpose of the client/server version is to provide services and a rich set of graphical user interfaces for remote clients. The challenge in the design of client/server version is to reuse the existing C/C++ code. To solve the problem, we use Corba's delegation technique to wrap the existing C/C++ application into a standard Corba object, and then we create an IDL interface for it. From the IDL interface specification, we create a Java standalone application wrapped in Corba objects that runs at client site and communicates with the server. We design and implement client site GUIs for the application in Java/Swing. This Corba Version of CPPE is very portable since the client site application can be installed and run in any platform. The server supports multiple users.

Cited by 0

DAG generation Parallel Programming Environment for Cluster Computing

2008

In this paper, we present a new model for parallel program development for cluster computing called Data Driven Graph (DDG). DDG automatically analyzes data dependence among tasks, synchronizes data, generates task graphs and schedules. Programming in DDG is easy and reliable; most of work is done automatically by DDG, what does not only minimize the amount of work done by programmers but also removes most frequent errors likes race conditions and deadlocks. The integrated scheduler makes parallel programs in DDG run efficiently. Our experiments demonstrate the simplicity and efficiency of programs written in DDG. 1.

Cited by 0