A provable time and space efficient implementation of NESL
A provable time and space efficient implementation of NESL
复制标题
NESL 的可证明时间和空间高效的实现
DOI:
10.1145/232627.232650
复制
发表时间:
1996
期刊:
影响因子:
--
通讯作者:
John Greiner
中科院分区:
文献类型:
--
作者:
G. Blelloch;John Greiner
In this paper we prove time and space bounds for the implementation of the programming language NESL on various parallel machine models. NESL is a sugared typed λ-calculus with a set of array primitives and an explicit parallel map over arrays. Our results extend previous work on provable implementation bounds for functional languages by considering space and by including arrays. For modeling the cost of NESL we augment a standard call-by-value operational semantics to return two cost measures: a DAG representing the sequential dependence in the computation, and a measure of the space taken by a sequential implementation. We show that a NESL program with w work (nodes in the DAG), d depth (levels in the DAG), and s sequential space can be implemented on a p processor butterfly network, hypercube, or CRCW PRAM using O(w/p + d log p) time and O(s + dp log p) reachable space.1 For programs with sufficient parallelism these bounds are optimal in that they give linear speedup and use space within a constant factor of the sequential space.