Title of article :
Parallelizing Imperative Functional Programs: the Vectorization Monad
Author/Authors :
JONATHAN M. D. HILL، نويسنده , , KEITH M. CLARKE، نويسنده , , RICHARD BORNAT، نويسنده ,
Issue Information :
روزنامه با شماره پیاپی سال 1996
Pages :
16
From page :
561
To page :
576
Abstract :
Traditionally a vectorizing compiler matches the iterative constructs of a program against a set of predefined templates. If a loop contains no dependency cycles then amaptemplate can be used; other simple dependencies can often be expressed in terms offoldorscantemplates. This paper addresses the template matching problem within the context of functional programming. A small collection of program identities are used to specify vectorizable for-loops. By incorporating these program identities within a monad,allwell-typed for-loops in which the body of the loop is expressed using thevectorizationmonadcan be vectorized. This technique enables the elimination of template matching from a vectorizing compiler, and the proof of the safety of vectorization can be performed by a type inference mechanism.
Journal title :
Journal of Symbolic Computation
Serial Year :
1996
Journal title :
Journal of Symbolic Computation
Record number :
805153
Link To Document :
بازگشت