Porting the Sisal Functional Language to Distributed-memory Multiprocessors

Porting the Sisal Functional Language to Distributed-memory Multiprocessors PDF Author: Jui-Yuan Ku
Publisher:
ISBN:
Category : Prallel processing (Electronic computers)
Languages : en
Pages : 244

Get Book Here

Book Description
Parallel computing is becoming increasingly ubiquitous in recent years. The sizes of application problems continuously increase for solving real-world problems. Distributed-memory multiprocessors have been regarded as a viable architecture of scalable and economical design for building large scale parallel machines. While these parallel machines can provide computational capabilities, programming such large-scale machines is often very difficult due to many practical issues including parallelization, data distribution, workload distribution, and remote memory latency. This thesis proposes to solve the programmability and performance issues of distributed-memory machines using the Sisal functional language. The programs written in Sisal will be automatically parallelized, scheduled and run on distributed-memory multiprocessors with no programmer intervention. Specifically, the proposed approach consists of the following steps. Given a program written in Sisal, the front end Sisal compiler generates a directed acyclic graph(DAG) to expose parallelism in the program. The DAG is partitioned and scheduled based on loop parallelism. The scheduled DAG is then translated to C programs with machine specific parallel constructs. The parallel C programs are finally compiled by the target machine specific compilers to generate executables. A distributed-memory parallel machine, the 80-processor ETL EM-X, has been chosen to perform experiments. The entire procedure has been implemented on the EMX multiprocessor. Four problems are selected for experiments: bitonic sorting, search, dot-product and Fast Fourier Transform. Preliminary execution results indicate that automatic parallelization of the Sisal programs based on loop parallelism is effective. The speedup for these four problems is ranging from 17 to 60 on a 64-processor EM-X. Preliminary experimental results further indicate that programming distributed-memory multiprocessors using a functional language indeed frees the programmers from lowlevel programming details while allowing them to focus on algorithmic performance improvement.

Porting the Sisal Functional Language to Distributed-memory Multiprocessors

Porting the Sisal Functional Language to Distributed-memory Multiprocessors PDF Author: Jui-Yuan Ku
Publisher:
ISBN:
Category : Prallel processing (Electronic computers)
Languages : en
Pages : 244

Get Book Here

Book Description
Parallel computing is becoming increasingly ubiquitous in recent years. The sizes of application problems continuously increase for solving real-world problems. Distributed-memory multiprocessors have been regarded as a viable architecture of scalable and economical design for building large scale parallel machines. While these parallel machines can provide computational capabilities, programming such large-scale machines is often very difficult due to many practical issues including parallelization, data distribution, workload distribution, and remote memory latency. This thesis proposes to solve the programmability and performance issues of distributed-memory machines using the Sisal functional language. The programs written in Sisal will be automatically parallelized, scheduled and run on distributed-memory multiprocessors with no programmer intervention. Specifically, the proposed approach consists of the following steps. Given a program written in Sisal, the front end Sisal compiler generates a directed acyclic graph(DAG) to expose parallelism in the program. The DAG is partitioned and scheduled based on loop parallelism. The scheduled DAG is then translated to C programs with machine specific parallel constructs. The parallel C programs are finally compiled by the target machine specific compilers to generate executables. A distributed-memory parallel machine, the 80-processor ETL EM-X, has been chosen to perform experiments. The entire procedure has been implemented on the EMX multiprocessor. Four problems are selected for experiments: bitonic sorting, search, dot-product and Fast Fourier Transform. Preliminary execution results indicate that automatic parallelization of the Sisal programs based on loop parallelism is effective. The speedup for these four problems is ranging from 17 to 60 on a 64-processor EM-X. Preliminary experimental results further indicate that programming distributed-memory multiprocessors using a functional language indeed frees the programmers from lowlevel programming details while allowing them to focus on algorithmic performance improvement.

An Implementation of SISAL for Distributed-memory Architectures

An Implementation of SISAL for Distributed-memory Architectures PDF Author:
Publisher:
ISBN:
Category :
Languages : en
Pages : 45

Get Book Here

Book Description
This thesis describes a new implementation of the implicitly parallel functional programming language SISAL, for massively parallel processor supercomputers. The Optimizing SISAL Compiler (OSC), developed at Lawrence Livermore National Laboratory, was originally designed for shared-memory multiprocessor machines and has been adapted to distributed-memory architectures. OSC has been relatively portable between shared-memory architectures, because they are architecturally similar, and OSC generates portable C code. However, distributed-memory architectures are not standardized -- each has a different programming model. Distributed-memory SISAL depends on a layer of software that provides a portable, distributed, shared-memory abstraction. This layer is provided by Split-C, a dialect of the C programming language developed at U.C. Berkeley, which has demonstrated good performance on distributed-memory architectures. Split-C provides important capabilities for good performance: support for program-specific distributed data structures, and split-phase memory operations. Distributed data structures help achieve good memory locality, while split-phase memory operations help tolerate the longer communication latencies inherent in distributed-memory architectures. The distributed-memory SISAL compiler and run-time system takes advantage of these capabilities. The results of these efforts is a compiler that runs identically on the Thinking Machines Connection Machine (CM-5), and the Meiko Computing Surface (CS-2).

An Implementation of SISAL for Distributed-memory Architectures

An Implementation of SISAL for Distributed-memory Architectures PDF Author: Patrick Charles Beard
Publisher:
ISBN:
Category :
Languages : en
Pages : 118

Get Book Here

Book Description


Implementation of Functional Languages

Implementation of Functional Languages PDF Author: Kevin Hammond
Publisher: Springer
ISBN: 3540485155
Category : Computers
Languages : en
Pages : 258

Get Book Here

Book Description
This book constitutes the thoroughly refereed post-workshop proceedings of the 10th International Workshop on the Implementation of Functional Languages, IFL'98, held in London, UK, in September 1998. The 15 revised full papers presented were carefully selected during two rounds of reviewing. The volume covers a wide range of topics including parallel process organization, parallel profiling, compilation and semantics of parallel systems, programming methodology, interrupt handling, strictness analysis, concurrency and message passing, and inter-language working.

A single-assignment language in a distributed memory multiprocessor

A single-assignment language in a distributed memory multiprocessor PDF Author: Paraskevas Evripidou
Publisher:
ISBN:
Category : Multiprocessors
Languages : en
Pages : 17

Get Book Here

Book Description
This paper describes the implementation of a single-assignment language, SISAL, on a distributed memory multiprocessor."

Proceedings of the ... ACM Conference on LISP and Functional Programming

Proceedings of the ... ACM Conference on LISP and Functional Programming PDF Author:
Publisher:
ISBN:
Category : Functional programming (Computer science)
Languages : en
Pages : 368

Get Book Here

Book Description


Scientific and Technical Aerospace Reports

Scientific and Technical Aerospace Reports PDF Author:
Publisher:
ISBN:
Category : Aeronautics
Languages : en
Pages : 704

Get Book Here

Book Description


Dissertation Abstracts International

Dissertation Abstracts International PDF Author:
Publisher:
ISBN:
Category : Dissertations, Academic
Languages : en
Pages : 856

Get Book Here

Book Description


Porting Multiprocessor SISAL Software

Porting Multiprocessor SISAL Software PDF Author: D. C. Cann
Publisher:
ISBN:
Category : Computer software
Languages : en
Pages : 36

Get Book Here

Book Description
In addition to introducing the applicative language SISAL, discussing the chosen model of computation, and highlighting the ports themselves, we present some preliminary performance results to illustrate the success of each port and show that the model of computation, managed by microtasking, uses most available processors. The lessons learned are not new, but require reexamination to obtain parallel software portability."

Conference Publication

Conference Publication PDF Author:
Publisher:
ISBN:
Category : Computer programming
Languages : en
Pages : 764

Get Book Here

Book Description