## Functional, I-Structure, and M-Structure Implementations of NAS Benchmark FT (1994)

Venue: | Proceedings of the IFIP WG 10.3 Working Conference on Parallel Architectures and Compilation Techniques, PACT '94 |

Citations: | 1 - 0 self |

### BibTeX

@INPROCEEDINGS{Sur94functional,i-structure,,

author = {S. Sur and W. Böhm},

title = {Functional, I-Structure, and M-Structure Implementations of NAS Benchmark FT},

booktitle = {Proceedings of the IFIP WG 10.3 Working Conference on Parallel Architectures and Compilation Techniques, PACT '94},

year = {1994},

pages = {47--56},

publisher = {North-Holland Publishing Co}

}

### OpenURL

### Abstract

: We implement the NAS parallel benchmark FT, which numerically solves a three dimensional partial differential equation using forward and inverse FFTs, in the dataflow language Id and run it on a one node monsoon machine. Id is a layered language with a purely functional kernel, a deterministic layer with I-structures, and a non-deterministic layer with M-structures. We compare the performance of versions of our code written in these three layers of Id. We measure instruction counts and critical path length using the Monsoon Interpreter Mint. We measure the space requirements of our codes by determining the largest possible problem size fitting on a one node monsoon machine. The purely functional code provides the highest average parallelism, but this parallelism turns out to be superfluous. The I-structure code executes the minimal number of instructions and as it has a similar critical path length as the functional code, runs the fastest. The M-structure code allows the largest pro...

### Citations

228 | K.K.: Istructures: Data-structures for parallel computing
- Arvind, Pingali
- 1989
(Show Context)
Citation Context ...of parallel programs. The declarative programming language Id has a functional kernel. Arrays in this functional kernel are created using monolithic array constructors called array comprehensions. In =-=[1]-=-, Arvind and others argue that these array comprehensions lack expressiveness, and that for certain problems a lower level of constructs, manipulating the elements of Istructures, is necessary. An I-s... |

45 |
Id (version 90.0) Reference Manual
- Nikhil
- 1990
(Show Context)
Citation Context ... and Features, Data Storage Representations 1 Introduction In this paper we study the design of efficient declarative programs by implementing the NAS three dimensional FFT PDE benchmark FT [2] in Id =-=[8]-=-. This study is part of a larger project where we try to assess which declarative language features are of importance to write efficient scientific codes. A declarative programming language allows exp... |

4 |
Nikhil and Arvind, "M-structures: Extending a parallel, non-strict, functional language with state
- Barth, S
- 1991
(Show Context)
Citation Context ...ynchronization for reads and writes. Because of their single assignment nature, Id programs with I-structures are deterministic, even though pure functional referential transparency has been lost. In =-=[3]-=- it is shown that for certain problems I-structures are again not powerful enough and that the more expressive M-structures are needed. M-structures are also arrays with element-level synchronization,... |

4 |
Ang and Arvind, "Performance studies of Id on the Monsoon dataflow system
- Hicks, Chiou, et al.
- 1993
(Show Context)
Citation Context ...cuted and the critical path length and provides parallelism profiles. We measure the space complexity of our programs by determining the maximal problem size that fits in our one node Monsoon machine =-=[7]-=-, which has a 4 Megaword data memory. In this case, the goal is to run a 64 \Theta 64 \Theta 64 problem, given in the NAS benchmark specification as the minimal sized problem, on a one node Monsoon ma... |

3 |
The NAS Parallel Benchmarks", Report RNR-91-002 revision 2
- al
- 1991
(Show Context)
Citation Context ...Constructs and Features, Data Storage Representations 1 Introduction In this paper we study the design of efficient declarative programs by implementing the NAS three dimensional FFT PDE benchmark FT =-=[2]-=- in Id [8]. This study is part of a larger project where we try to assess which declarative language features are of importance to write efficient scientific codes. A declarative programming language ... |

3 |
Implementing FFT's in Sisal
- Bollman, Sanmiguel, et al.
- 1992
(Show Context)
Citation Context ...re. 5 Conclusion I-Structures and M-structures are introduced in [1] and [3], respectively. Id implementations of the 1D FFT are discussed in [4]. Sisal implementations of the 1D FFT are discussed in =-=[5]-=-. A high performance 1D FFT algorithm in Sisal for a vector computer is presented in [6]. The contribution of this paper is the quantitative comparison of the different declarative programming styles ... |

3 |
Developing a high-performance FFT algorithm in Sisal for a vector supercomputer
- Feo, Cann
- 1993
(Show Context)
Citation Context ...ly. Id implementations of the 1D FFT are discussed in [4]. Sisal implementations of the 1D FFT are discussed in [5]. A high performance 1D FFT algorithm in Sisal for a vector computer is presented in =-=[6]-=-. The contribution of this paper is the quantitative comparison of the different declarative programming styles using a realistic, well-known benchmark. In this paper we have studied certain declarati... |

2 |
Hiromoto R.E.,"Dataflow Time and Space Complexity of FFTs
- Bohm
- 1993
(Show Context)
Citation Context ...nstead of 1 or 2 cuts out the bottom-most branches of the FFT tree making it much more space and time efficient. It also makes resource management simpler as pointers and objects are not interchanged =-=[4]-=-. We use iterative FFTs instead of recursive ones, because in the iterative codes all the intermediate arrays can be deallocated immediately after they are no longer required. Details about this can a... |