Results 1 
3 of
3
Models and Languages for Parallel Computation
 ACM COMPUTING SURVEYS
, 1998
"... We survey parallel programming models and languages using 6 criteria [:] should be easy to program, have a software development methodology, be architectureindependent, be easy to understand, guranatee performance, and provide info about the cost of programs. ... We consider programming models in ..."
Abstract

Cited by 134 (4 self)
 Add to MetaCart
We survey parallel programming models and languages using 6 criteria [:] should be easy to program, have a software development methodology, be architectureindependent, be easy to understand, guranatee performance, and provide info about the cost of programs. ... We consider programming models in 6 categories, depending on the level of abstraction they provide.
Parallelism in sequential functional languages
 PROC. OF THE INT. CONF. ON
, 1995
"... This paper formally studies the question of how much parallelism is available in calbyvalue functional languages with no parallel extensions (i. e., the functional sub;ets of ML or Scheme). In particular we are interested in placing bounds on how much parallelism is available for various problems. ..."
Abstract

Cited by 16 (7 self)
 Add to MetaCart
This paper formally studies the question of how much parallelism is available in calbyvalue functional languages with no parallel extensions (i. e., the functional sub;ets of ML or Scheme). In particular we are interested in placing bounds on how much parallelism is available for various problems. To do this we introduce a complexity model, the PAL, based on the callbyvalue Acalculus. The model is defined in terms of a profiling semantics and measures complexity in terms of the total work and the parallel depth of a computation. We describe a simulation of the APAL (the PAL extended with arithmetic operations) on various parallel machine models, including the butterfly, hypercube, and PRAM models and prove simulation bounds. In particular the simulat ions are work eficient (the processortime product on the machines is within a constant factor of the work on the APAL), and for p processors the slowdown (time on the machines divided by depth on the APAL) is proportional to at most O(log p). We also prove bounds for simulating the PRAM on the APAL. Based on the model, we describe and analyze treebased versions of quicksort and merge sort. We show that for an input of size n these algorithms run on the APAL model with O(rI log n) work and 0(logĀ² n) depth (expected case for quicksort).
Programming Language Expressiveness and Circuit Complexity
 in: Internat. Conf. on the Mathematical Foundations of Programming Semantics
, 1996
"... This paper is a continuation of the work begun in [5] on establishing relative intensional expressiveness results for programming languages. Language L 1 is intensionally more expressive than L 2 , if L 1 can compute all the functions L 2 can, with at least the same asymptotic complexity. The questi ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
This paper is a continuation of the work begun in [5] on establishing relative intensional expressiveness results for programming languages. Language L 1 is intensionally more expressive than L 2 , if L 1 can compute all the functions L 2 can, with at least the same asymptotic complexity. The question we address is: Does nondeterministic parallelism add intensional expressiveness? We compare deterministic and nondeterministic extensions of PCF, a simple functional programming language. We develop further the circuit semantics from our earlier work, and establish a connection between parallel PCF programs and boolean circuits. Using results from circuit complexity, and assuming hardware which can detect undefined inputs, we show that nondeterministic parallelism is indeed intensionally more expressive. More precisely, we show that nondeterministic parallelism can lead to exponentially faster programs, and also programs that do exponentially less work. 1 Introduction We conduct an inves...