Filters








17,973 Hits in 6.7 sec

A New Parallel Skeleton for General Accumulative Computations

Hideya Iwasaki, Zhenjiang Hu
2004 International journal of parallel programming  
To overcome these difficulties, we propose a powerful and general parallel skeleton, accumulate, which can be used to naturally code efficient solutions to problems as well as be efficiently implemented  ...  Skeletal parallel programming enables programmers to build a parallel program from ready-made components (parallel primitives) for which efficient implementations are known to exist, making both the parallel  ...  ACKNOWLEDGMENTS We are grateful to Yasuichi Nakayama and Kazuki Hyoudou of the University of Electro-Communications for providing the computing facilities and environment for the FireCluster.  ... 
doi:10.1023/b:ijpp.0000038069.80050.74 fatcat:cbnaogfjaraipfzmlvai4scwbq

An Accumulative Parallel Skeleton for All [chapter]

Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
2002 Lecture Notes in Computer Science  
To remedy this situation, we propose a novel parallel skeleton, called accumulate, which not only efficiently describes data dependency in computation but also exhibits nice algebraic properties for manipulation  ...  Parallel skeletons intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the parallelization process simpler  ...  Acknowledgments We thank the anonymous referees for their suggestions and comments.  ... 
doi:10.1007/3-540-45927-8_7 fatcat:a4uillvzbfhctgi7xyqce6egpq

A Fusion-Embedded Skeleton Library [chapter]

Kiminori Matsuzaki, Kazuhiko Kakehi, Hideya Iwasaki, Zhenjiang Hu, Yoshiki Akashi
2004 Lecture Notes in Computer Science  
We illustrate our idea with a new skeleton library for parallel programming in C++. It is simple and efficient to use just like other C++ libraries.  ...  This paper addresses a new framework for designing and implementing skeleton libraries, in which each skeleton should not only be efficiently implemented as is usually done, but also be equipped with a  ...  Scan is a skeleton that accumulates all intermediate results for computation of reduce.  ... 
doi:10.1007/978-3-540-27866-5_85 fatcat:duvt2rgepzhghnupwwbjqxwwmy

AN ANALYTICAL METHOD FOR PARALLELIZATION OF RECURSIVE FUNCTIONS

JOONSEON AHN, TAISOOK HAN
2000 Parallel Processing Letters  
Using static slicing, we h a ve de ned a classi cation of subexpressions based on their data-parallelism. Then, skeleton-based parallel programs are generated from the classi cation.  ...  To extend the scope of parallelization, we h a ve adopted more general parallel skeletons which do not require the associativity of argument functions.  ...  Preprocessing for Code Generation We replace each recursive call with a tuple of new variables.  ... 
doi:10.1142/s0129626400000330 fatcat:6yqjhyzzcbbt7imktxfw7vxhu4

An Analytical Method for Parallelization of Recursive Functions

J Ahn
2000 Parallel Processing Letters  
Using static slicing, we h a ve de ned a classi cation of subexpressions based on their data-parallelism. Then, skeleton-based parallel programs are generated from the classi cation.  ...  To extend the scope of parallelization, we h a ve adopted more general parallel skeletons which do not require the associativity of argument functions.  ...  Preprocessing for Code Generation We replace each recursive call with a tuple of new variables.  ... 
doi:10.1016/s0129-6264(00)00010-x fatcat:lp5lpidsn5g7xi2jghiglti6r4

AN ANALYTICAL METHOD FOR PARALLELIZATION OF RECURSIVE FUNCTIONS

JOONSEON AHN, TAISOOK HAN
2000 Parallel Processing Letters  
Using static slicing, we h a ve de ned a classi cation of subexpressions based on their data-parallelism. Then, skeleton-based parallel programs are generated from the classi cation.  ...  To extend the scope of parallelization, we h a ve adopted more general parallel skeletons which do not require the associativity of argument functions.  ...  Preprocessing for Code Generation We replace each recursive call with a tuple of new variables.  ... 
doi:10.1142/s012962640000010x fatcat:uqx7bqpr6ng4vjqj76b47ewkhy

Implementing Fusion-Equipped Parallel Skeletons by Expression Templates [chapter]

Kiminori Matsuzaki, Kento Emoto
2010 Lecture Notes in Computer Science  
We developed a parallel skeleton library SkeTo that provides parallel skeletons implemented in C++ and MPI for distributedmemory environments.  ...  In the new version of the library, the implementation of the parallel skeletons for lists is improved so that the skeletons themselves equip fusion optimization.  ...  Muskel and eSkel are parallel skeleton libraries mainly for task-parallel computation.  ... 
doi:10.1007/978-3-642-16478-1_5 fatcat:nta4nafvrbbfjcrg373dicigju

Parallel skeletons for manipulating general trees

Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
2006 Parallel Computing  
We formalize a set of skeletons (abstracted computational patterns) for rose trees (general trees of arbitrary shapes) based on the theory of Constructive Algorithmics.  ...  As far as we are aware, we are the first who have formalized and implemented a set of simple but expressive parallel skeletons for rose trees.  ...  computations: reduce and upwards accumulate • Top-down computation: downwards accumulate The definition of the parallel binary-tree skeletons is given in Fig. 1 .  ... 
doi:10.1016/j.parco.2006.06.002 fatcat:mez4igbmpvfafc4fwx5p73syjy

Accumulative Computation on MapReduce

Yu Liu, Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu
2014 IPSJ Online Transactions  
In this paper we propose a new approach of using the programming pattern accumulate over MapReduce, to handle a large class of problems that cannot be simply divided into independent sub-computations.  ...  We describe the programming interface of our accumulate framework and explain how to transform a user-specified accumulate computation to an efficient MapReduce program.  ...  • We implemented a parallel programming framework modeled by the accumulate computation pattern [15] , [16] , [18] * 3 for accumulative computations.  ... 
doi:10.2197/ipsjtrans.7.33 fatcat:oheuk4eznrd4ta3q62c7vyfxqe

SKiPPER: A Skeleton-Based Parallel Programming Environment for Real-Time Image Processing Applications [chapter]

Jocelyn Sérot, Dominique Ginhac, Jean-Pierre Dérutin
1999 Lecture Notes in Computer Science  
SKiPPER is based upon the concept of algorithmic skeletons, i.e. higher order program constructs encapsulating recurring forms of parallel computations and hiding their low-level implementation details  ...  Each s k eleton is given an architecture-independent functional (but executable) speci cation and a portable implementation as a generic process template.  ...  ) skeleton is a generalisation of the df one, in which each w orker can recursively generates new packets to be processed.  ... 
doi:10.1007/3-540-48387-x_31 fatcat:aka3f3owtjfzhbezqblqsvrmfe

Parallelization with Tree Skeletons [chapter]

Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
2003 Lecture Notes in Computer Science  
is neither clear how to make a good combination of skeletons to solve a given problem, nor obvious even how to find suitable operators used in a single skeleton.  ...  We illustrate our approach by deriving an efficient parallel program for solving a nontrivial problem called the party planning problem, the tree version of the famous maximum-weight-sum problem.  ...  A sequential program for party planning program The second specialization deals with the function whose computation of new values for each node depends on the original value, the accumulation parameter  ... 
doi:10.1007/978-3-540-45209-6_108 fatcat:zzvfsyknvzeprjv4xzt4ahljja

Efficient Implementation of Tree Skeletons on Distributed-Memory Parallel Computers

Kiminori Matsuzaki
2017 Scalable Computing : Practice and Experience  
Parallel tree skeletons are basic computational patterns that can be used to develop parallel programs for manipulating trees.  ...  We furthermore develop a cost model for our implementation of parallel tree skeletons. We confirm the efficacy of our implementation with several experiments.  ...  The parallel skeleton uAcc (upwards accumulate) is a shapepreserving manipulation, which also takes a function k and a binary tree and computes (reduce k) for each subtree.  ... 
doi:10.12694/scpe.v18i1.1231 fatcat:f55zmmhuirbljldevhvuqcdary

A Generator of Hadoop MapReduce Programs that Manipulate One-dimensional Arrays

Reina Miyazaki, Kiminori Matsuzaki, Shigeyuki Sato
2017 Journal of Information Processing  
In this study, we propose a new MapReduce-program generator that accepts programs manipulating one-dimensional arrays.  ...  MapReduce is a framework for large-scale data processing proposed by Google, and its open-source implementation, Hadoop MapReduce, is now widely used.  ...  Scan A parallel skeleton scan is an accumulative computation from the head of a list, and the result forms a list whose elements are the reduce of the prefix lists * 6 .  ... 
doi:10.2197/ipsjjip.25.841 fatcat:zpnljhnymrgs3o43s5iyuyu7qm

An Automatic Fusion Mechanism for Variable-Length List Skeletons in SkeTo

Kento Emoto, Kiminori Matsuzaki
2013 International journal of parallel programming  
Skeletal parallel programming is a promising approach to easy parallel programming in which users can build parallel programs simply by combining parts of a given set of ready-made parallel computation  ...  In this paper, we propose a novel fusion mechanism for VLL skeletons that can achieve both an easy programming interface and complete fusion.  ...  In each iteration, it first generates all possible boards by using concatmap with putNewQueen to generate a list of new boards, each of which has a new queen in the top row.  ... 
doi:10.1007/s10766-013-0263-8 fatcat:kqi4rmysu5anje6lx3clhp2ipq

Fast prototyping of parallel-vision applications using functional skeletons

Jocelyn Sérot, Dominique Ginhac, Roland Chapuis, Jean-Pierre Dérutin
2001 Machine Vision and Applications  
executive for a wide range of parallel platforms.  ...  Skeletons [2, 13, 39] are highlevel programming constructs encapsulating certain common forms of parallel computations to make them readily available for the application programmer.  ...  The authors would like to thank the anonymous referees for many insightful comments which led to improvements in this paper.  ... 
doi:10.1007/s001380050146 fatcat:yeuoewp6rndabitchtlo4u63ca
« Previous Showing results 1 — 15 out of 17,973 results