2010
DOI: 10.1017/s0956796810000304
|View full text |Cite
|
Sign up to set email alerts
|

Functional and dynamic programming in the design of parallel prefix networks

Abstract: A parallel prefix network of width n takes n inputs, a 1 , a 2 , . . . , a n , and computes each y i = a 1 • a 2 • · · · • a i for 1 6 i 6 n, for an associative operator •. This is one of the fundamental problems in computer science, because it gives insight into how parallel computation can be used to solve an apparently sequential problem. As parallel programming becomes the dominant programming paradigm, parallel prefix or scan is proving to be a very important building block of parallel algorithms and appl… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
15
0

Year Published

2012
2012
2023
2023

Publication Types

Select...
3
3

Relationship

1
5

Authors

Journals

citations
Cited by 13 publications
(15 citation statements)
references
References 32 publications
0
15
0
Order By: Relevance
“…An array of length n is processed by n/2 threads, except in the case of Kogge-Stone where n threads are used. Sheeran confirms this claim when exploiting the result in later work on the design of prefix sum algorithms [33]. We refer to this as the Sheeran result.…”
Section: Related Workmentioning
confidence: 54%
See 1 more Smart Citation
“…An array of length n is processed by n/2 threads, except in the case of Kogge-Stone where n threads are used. Sheeran confirms this claim when exploiting the result in later work on the design of prefix sum algorithms [33]. We refer to this as the Sheeran result.…”
Section: Related Workmentioning
confidence: 54%
“…A sequential prefix sum for inputs of length n Our second main contribution is an extension of our method and theoretical results to the case of barrier-synchronising data-parallel programs, the programming model of GPU kernels. This is a contribution over previous work on the correctness of parallel prefix sums [33,38] which applies to synchronous parallel hardware described as sequential HASKELL programs, but not to asynchronous concurrent programs. We show that if a data-parallel program implementing a generic prefix sum can be proved free from data races then correctness of the prefix sum can be established by running a single test case using the interval of summations monoid, as in the sequential case.…”
Section: Data-type Operatormentioning
confidence: 96%
“…In Java, a network topology is described in the form of loops and recursive function calls. Sheeran [35] proposed similar but more generalized approach for prefix network generation from abstract specification, by modeling prefix networks using functional programming language, Haskell. In our case, the network construction in Java is more practical, as the objective is solely to generate RTL descriptions for existing prefix networks, and to evaluate their performance on FPGA.…”
Section: Area/speed Results For Max-prefix Networkmentioning
confidence: 99%
“…Sheeran [2011] has used her various platforms to explore different kinds of circuits and has shown that rapid feedback in the form of simulation, testing, and model checking is most valuable to the designer. Johnson and Bose [1997] and Seger et al [2005] make similar observations about their refinement efforts.…”
Section: Discussionmentioning
confidence: 99%
“…They have also been used to analyze many other combinational circuits, such as adders and multipliers [Axelsson 2003], and as a host for a sequential language much simpler than what we discuss in Section 3.1 [Claessen 2001, Chapter 6]. More recently, Sheeran [2005Sheeran [ , 2011 has developed techniques for context-sensitive circuit generators and optimisers using this system.…”
Section: Lava 2000mentioning
confidence: 99%