A Multithreaded Compiler Backend for High-level Array Programming.

Clemens Grelck · 2003

Whenever large homogeneous data structures need to be processed in a non-trivial way, e.g. in computational sci-ences, image processing, or system simulation, high-level array programming in the style of APL offers a far more concise and abstract approach than traditional scalar lan-guages such as C/C++ or FORTRAN-77. The same sort of applications often can also be characterized as performance critical and today represents the major domain for parallel processing. This paper reports on the development of a compiler backend which allows to implicitly generate multithreaded code from high-level array program specifications. On shared memory multiprocessor systems, this code can be executed in parallel without any additional programming effort. After sketching out basic compilation schemes, opti-mizations on the runtime system are addressed and, finally, experimental runtime figures are presented.

Read the paper · More papers on PaperTik