The BLAZE language: A parallel language for scientific programming (Q580952)

From MaRDI portal





scientific article; zbMATH DE number 4018353
Language Label Description Also known as
default for all languages
No label defined
    English
    The BLAZE language: A parallel language for scientific programming
    scientific article; zbMATH DE number 4018353

      Statements

      The BLAZE language: A parallel language for scientific programming (English)
      0 references
      0 references
      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

      Identifiers