14 citations found. Retrieving documents...
Z. N. Grant-Duff and P. G. Harrison. Parallelism via homomorphisms. Parallel Processing Letters, 6(2):279--295, June 1996.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Analysis of Parallelism in Recursive Functions on Recursive Data .. - Ahn, Han   (Correct)

....is not easy. Therefore many researches have tried to build skeleton based parallel programs from sequential recursive programs. Most of the researches are based on the program transformation in calculation form. In these approaches, parallelization schemes start from the homomorphism lemma[1][9]. Because the lemma can be applied to restricted recursive programs, there have been many researches to expand the scope of parallelization to almost homomorphisms[16, 12] functions on sequential lists[3, 6, 8, 13] functions with accumulation parameters[13, 14] functions on general recursive ....

Z. N. Grant-Duff and P. G. Harrison. Parallelism via homomorphisms. Parallel Processing Letters, 6(2):279--295, June 1996.


An Accumulative Parallel Skeleton for All - Hu, Iwasaki, Takeichi (2001)   (1 citation)  (Correct)

....parallel program to solve this problem. 3.1 Problems in Programming Ecient Skeletal Programs Programming with skeletons eciently is hard because it requires a proper choice of skeletons and an ecient combination of them. Ecient programming with these skeletons is a well known area of research [Bir87, Ski94, Col95, GDH96, Gor96a, HIT97, HTC98]. Using skeletons, one often tries to solve a problem by composition of several passes so that each pass can be described in terms of a parallel skeleton. Considering the subproblem los1 which just checks whether the points in a single ray ps are visible or not from the observation point p 0 , one ....

....have to be distributed to processors and each result must be gathered to the master processor. Another problem is that even for a simpler subproblem like Pass 2 (a) solving it in terms of skeleton is actually not an easy task. One approach to cope with this problem is to derive a homomorphism [Col95, GDH96, Gor96a, HIT97, HTC98], resulting in skeletal parallel programs in the form of = k . Its theoretical foundation is the following homomorphism lemma. De nition 1 (Homomorphism) Function h is a homomorphism if it is de ned by h [ h [a] f a h (x y) h x h y where is a binary operator whose unit is ....

[Article contains additional citation context not shown here]

Z.N. Grant-Du and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279-295, 1996.


Towards Polytypic Parallel Programming - Hu, Takeichi, Iwasaki (1998)   (Correct)

....primitives in a uniform recursion, and to bridge the gap between natural definitions using recursions and definitions using parallel primitives. It includes as its special case the well known homomorphism lemma [Bir87] which has served as the basis for deriving parallel programs on lists [Col95, GDH96, Gor96b, HIT97, HTC98] The key idea to establish our theorem is an essential use of scans to memoize intermediate results in parallel computation. ffl Our polytypic framework can provide both explicit and implicit way to describe parallelism, supporting both mechanical implementation and ....

....of catamorphisms. 2. 2 Parallel Programming in BMF Besides the work [Ski90, Ski94] on looking for architecture independent parallel implementation of some specific catamorphisms, studies on parallel programming in BMF are actually quite recently, focusing mainly on list functions as in [Col95, GDH96, Gor96b, HIT97, HTC98] The main idea is to derive the so called List homomorphisms [Bir87] which are nothing more than catamorphisms on join lists as defined above. The relevance of homomorphisms to parallel programming is basically from the homomorphism lemma [Bir87] cata JList 8 k ....

[Article contains additional citation context not shown here]

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Enhanced Parallelization via Constraints - Wei-Ngan Chin National (1997)   (Correct)

....and for functional programs via Bird s homomorphism [Ski90] Unfortunately, most sequential specifications fail to match up directly with these schemes. To overcome this shortcoming, there have been calls to constructively transform programs to match these schemes, but these proposals [Roe91, GDH96] often require deep intuition and the support of ad hoc lemmas making automation difficult. Another approach is to provide more specialised schemes, either statically [PP91] or via a procedure [HTC98] that can be directly matched to sequential specification. Though cheap to operate, the ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279-- 295, 1996.


Calculating an Optimal Homomorphic Algorithm for Bracket Matching - Hu, Takeichi (1999)   (Correct)

....for the singleton list with element a, and x y for the concatenation of two lists x and y. The term [1] 2] 3] denotes a list with three elements, often abbreviated to [1; 2; 3] We also write a : xs for [a] xs. List homomorphisms become more and more attractive in parallel programming [2, 6, 9, 10, 11, 13, 15], mainly because of their distinguished properties of simplicity, clear parallelism, and manipulability. ffl First, they are the simplest recursive skeletons on join lists; function h is a list homomorphism 1 , if there exist a function k and an associative binary operator 8 so that h is ....

.... is very useful for formal derivation of parallel algorithms, besides its effectness in constructing parallelization compiler as studied in [12] In particular, we formally deriveanovel but efficient parallel homomorphic algorithm for bracket matching, which would be difficult with other approaches [10, 11]. Acknowledgements Thanks are to Wei Ngan Chin for stimulating discussions on parallelization, and to Manuel M. T. Chakravarty and Gabriele Keller for helping us to test on a Cray machine the final NESL code in the appendix. Calculating an Optimal Homomorphic Algorithm for Bracket Matching 9 ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Abstraction and Performance in the Design of Parallel Programs - Gorlatch (1997)   (1 citation)  (Correct)

....yields the image of h on a singleton list, and the combine operator fi . Whereas f can be found easily, the problem of constructing fi is not trivial: e.g. for the scan function (5) an elaborated correctness proof of a parallel algorithm is presented in [52] or some eureka steps are applied in [31]. 4.1 The CS Method A systematic way to address the homomorphism extraction problem is offered in BMF by establishing a connection between two ways of defining functions on lists. In contrast to homomorphisms, in which the constructor is list concatenation, sequential functional programming is ....

Z. Grant-Duff and P. Harrison. Parallelism via homomorphisms. Parallel Processing Letters, 6(2):279--295, 1996.


Deriving Parallel Codes via Invariants - Chin, Khoo, Hu, Takeichi   (Correct)

....and for functional programs via Bird s homomorphism [Ski90] Unfortunately, most sequential specifications fail to match up directly with these schemes. To overcome this shortcoming, there have been calls to constructively transform programs to match these schemes, but these proposals [Roe91,GDH96] often require deep intuition and the support of adhoc lemmas making automation difficult. Another approach is to provide more specialised schemes, either statically [PP91] or via a procedure [HTC98] that can be directly matched to sequential specification. Though cheap to operate, the ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Parallelization via Context Preservation - Chin, Takano, Hu (1998)   (Correct)

....most sequential specifications fail to match up directly with these schemes. An approach to this problem is to constructively transform user programs to match these schemes. However, direct 8 calculations of homomorphic functions often require deep intuition and the support of ad hoc lemmas [24, 17], in order to massage the sequential definitions into having the needed associative combine operator. An alternative approach is to have programmers supply both a leftward (cons based) and a rightward (snoc based) versions of the sequential program. This method was systematically formulated by ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Constructing List Homomorphisms for Parallelism - Gorlatch   (Correct)

....homomorphism and thus yield immediately a parallel algorithm which has a standard form: map followed by a reduction. This format is efficiently implementable on a wide variety of parallel systems, but is not always the best possible [11] Our approach can be compared with the method advocated in [12] since we consider the same examples. On simple examples like length, we actually do the same: take the cons representation and try to guess from it the form of the operation in case of lists, after which its associativity has to be proved. The difference becomes visible on more complicated ....

....the same examples. On simple examples like length, we actually do the same: take the cons representation and try to guess from it the form of the operation in case of lists, after which its associativity has to be proved. The difference becomes visible on more complicated examples: in [12], the scan function requires rather involved calculations and intuition to come to the expression for Phi; here the advantages of the systematic cons snoc approach are evident. For almost homomorphisms, the method of [12] does not work at all. In [13] the third homomorphism theorem is applied ....

[Article contains additional citation context not shown here]

Z. Grant-Duff and P. Harrison. Parallelism via homomorphisms. Parallel Processing Letters. To appear.


Systematic Extraction and Implementation of Divide-and-Conquer.. - Gorlatch (1996)   (12 citations)  (Correct)

.... to be able to extract the homomorphic parallelism of a given function h, i.e. to find the corresponding combine operation fi satisfying property (1) For functions like length this construction is simple, but already for the scan function it requires a formal correctness proof [23] or intuition [15]. For non homomorphic functions, the problem is how to massage them into a homomorphism [7] ffl Parallelism implementation. The reduction stage of (2) may be inefficient: e.g. for functions which yield lists, its direct implementation has linear time complexity because of communication, and ....

....a segment of the input list. Formal derivation of a time and cost optimal algorithm for this practical situation exploits BMF transformations which involve data distributions; this is the subject of another paper [14] 7 Related Work Our approach to parallelism extraction can be compared with [15] since we consider the same examples. On simple examples like length, we actually do the same. For scan, rather involved calculations and intuition are required in [15] to obtain fi ; here the advantages of the systematic CS approach are evident. For almost homomorphisms, the method of [15] is not ....

[Article contains additional citation context not shown here]

Z. Grant-Duff and P. Harrison. Parallelism via homomorphisms. Parallel Processing Letters. To appear.


Parallelization in Calculational Forms - Hu, Takeichi (1998)   (6 citations)  (Correct)

....[dM92] circuit design [JS90] and optimization of functional programs [TM95, HIT96, HITT97] In each specialization, new laws and theorems need to be developed in order to handle specific problems. However, in the field of parallelization (i.e. development of efficient parallel program) GDH96, Gor96a, Gor96b] there is a lack of powerful parallelization laws and theorems, which greatly limits its scope. Our calculational framework should remedy this situation. In this paper, we shall report our first attempt to construct a calculational framework specifically for parallelization. Our ....

.... it, we develop an elementary, but general calculational theorem for parallelization (Section 4) By elementary, we mean that it contributes to the core transformations in our parallelization algorithm; and by general, we mean that it is more powerful than all the previous laws and theorems [Ski92, GDH96, Gor96a, Gor96b] and thus can be applied to synthesize many interesting parallel programs (as demonstrated in Section 4) Moreover, this theorem can be directly implemented by way of simple symbolic manipulation. ffl We propose a systematic and constructive parallelization algorithm (Section 5) ....

[Article contains additional citation context not shown here]

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Calculating an Optimal Homomorphic Algorithm for Bracket Matching - Hu, Takeichi (1999)   (Correct)

....for the singleton list with element a, and x y for the concatenation of two lists x and y. The term [1] 2] 3] denotes a list with three elements, often abbreviated to [1; 2; 3] We also write a : xs for [a] xs. List homomorphisms become more and more attractive in parallel programming [2,6,9,10,11,12,15], mainly because of their distinguished properties of simplicity, clear parallelism, and manipulability. ffl First, they are the simplest recursive skeletons on join lists; function h is a list homomorphism y , if there exist a function k and an associative binary operator y We assume that h ....

.... effectness in constructing parallelizing compiler as studied in [15] In particular, we formally derive a novel Calculating an Optimal Homomorphic Algorithm for Bracket Matching 9 but efficient parallel homomorphic algorithm for bracket matching, which would be difficult with other approaches [10,11]. Acknowledgements Thanks are to Wei Ngan Chin for stimulating discussions on parallelization, and to Manuel M. T. Chakravarty and Gabriele Keller for helping us to test on a Cray machine the final NESL code in the appendix. ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279--295, 1996.


Extracting and Implementing List Homomorphisms in Parallel.. - Sergei Gorlatch (1997)   (9 citations)  (Correct)

.... the following two problems: i) Parallelism extraction: for a given function, find the corresponding combine operator fi that satisfies property (1) For functions like length this construction is simple, but already for the scan function it requires a formal proof [23] or some eureka steps [15]. For non homomorphic functions, the problem is how to transform them into homomorphisms [8] ii) Parallelism implementation: for a given homomorphism, develop its efficient parallel implementation systematically. The reduction stage in (2) is a potential source of inefficiency: its direct ....

....list inspected from right to left. 5 Related Work Our work is inspired by the current research on systematic methods of deriving correct and efficient programs for parallel machines by transformation. Our approach to the homomorphism extraction can be compared with work by Grant Duff and Harrison [15] since we consider the same examples. On simple examples like length, we actually do the same. For scan, rather involved calculations and intuition are required in [15] to obtain the combine operator; our cons snoc method arrives at the result in a systematic way. For almost homomorphisms, the ....

[Article contains additional citation context not shown here]

Z. Grant-Duff and P. Harrison. Parallelism via homomorphisms. Parallel Processing Letters, 6(2):279--295, 1996.


Diffusion: Calculating Efficient Parallel Programs - Hu, Takeichi, Iwasaki (1999)   (2 citations)  (Correct)

....we are lacking of powerful parallelization theorem and laws for calculating efficient parallel programs, which more or less prevents it from being widely used. To remedy this situation, Quite a lot of recent studies have been devoted to the development of powerful parallelization methods with BMF [Ski93a, Col95, Gor96b, Gor96a, GDH96, HIT97, HTC98]. As explained in Section 2, the main idea is based on derivation of list homomorphism from a naive specification. This is based on the fact that a list homomorphism can be efficiently implemented by a composition of two parallel primitives, namely reduce and map. Our uniform recursions for ....

Z.N. Grant-Duff and P. Harrison. Parallelism via homomorphism. Parallel Processing Letters, 6(2):279-- 295, 1996.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC