The BLAZE language: A parallel language for scientific programming (Q580952)
From MaRDI portal
scientific article
Language | Label | Description | Also known as |
---|---|---|---|
English | The BLAZE language: A parallel language for scientific programming |
scientific article |
Statements
The BLAZE language: A parallel language for scientific programming (English)
0 references
1987
0 references
Programming multiprocessor parallel architectures is a complex task. This paper describes a block-structured scientific programming language, BLAZE, designed to simplify this task. BLAZE contains array arithmetic, `forall' loops, and APL-style accumulation operators, which allow natural expression of fine grained parallelism. It also employs an applicative or functional invocation mechanism, which makes it easy for compilers to extract coarse grained parallelism using machine specific program restructuring. Thus BLAZE should allow one to achieve highly parallel execution on multiprocessor architectures, while still providing the user with conceptually sequential control flow. A central goal in the design of BLAZE is portability across a broad range of parallel architectures. The multiple levels of parallelism present in BLAZE code, in principle, allow a compiler to extract the types of parallelism appropriate for the given architecture, while neglecting the remainder. This paper describes the features of BLAZE, and shows how this language would be used in typical scientific programming.
0 references
MIMD architectures
0 references
restructuring of conventional sequential languages
0 references
compiler
0 references
multiprocessor parallel architectures
0 references
parallelism
0 references