Serial Combinators: "Optimal" Grains of Parallelism
نویسندگان
چکیده
A m e t h o d Is d e s c r i b e d for t r a n s l a t i n g a h l g h l e v e l f u n c t i o n a l p r o g r a m I n t o e o m b l n a t o r s s u l t a b l e f o r e x e c u t i o n o n m u l t l p r o e e s s o r s w l t h n o s h a r e d m e m o r y . I t Is a r g u e d t h a t t h e g r a n u l a r i t y o f t h e s t a n d a r d s e t o f f i x e d c o m b l n a t o r s ls t o o f ine , w h e r e a s t h e g r a n u l a r i t y o f u s e r d e f i n e d f u n c t i o n s Is t o o coa r se . T h e n o t i o n o f a s e r i a l com~nator is I n t r o d u c e d t h a t in s o m e s e n s e h a s o p t l m a l g r a n u l a r i t y , a n d t h a t t a k e s I n t o a c c o u n t p r a g m a t i c I s sues s u c h as t h e c o m p l e x i t y o f e x p r e s s i o n s a n d c o m m u n i c a t i o n cos t s b e t w e e n p r o c e s s o r s . T h e t e c h n i q u e I m p r o v e s o n t h e s t a n d a r d n o t i o n o f super-combinator8 b y m a k i n g t h e m l a r g e r t o r e t a i n l oca l i t y a n d I m p r o v e e f f i c i ency , a n d b y e n s u r l n g t h a t t h e y h a v e n o c o n c u r r e n t s u b s t r u c t u r e t h a t c o u l d r e s u l t t n los t p a r a l l e l i s m . S i m u l a t i o n r e s u l t s d e m o n s t r a t e I m p r o v e d p e r f o r m a n c e o n b o t h s e q u e n t i a l a n d p a r a l l e l c o m p u t i n g m o d e l s . T h i s r e s e a r c h w a s s u p p o r t e d In p a r t b y N S F G r a n t M C S 8 3 0 2 0 1 8 a n d a g r a n t f r o m B u r r o u g h s C o r p o r a t i o n .
منابع مشابه
Parallel Combinator Reduction: Some Performance Bounds
A parallel graph reduction machine simulator is described. This performs combinator reduction and can simulate various different parallel reduction strategies. A number of functional programs are examined, and experimental results presented comparing the amount of parallelism obtainable using explicit divide-and-conquer with the maximum amount of parallelism available in the programs. Ke ywords...
متن کاملCache-oblivious wavefront algorithms for dynamic programming problems: efficient scheduling with optimal cache performance and high parallelism
Wavefront algorithms are algorithms on grids where execution proceeds in a wavefront manner from the start to the end of the execution (execution moves through the grid as if a wavefront is moving). Many dynamic programming problems and stencil computations are wavefront algorithms. Iterative wavefront algorithms for evaluating dynamic programming (DP) recurrences exploit optimal parallelism, b...
متن کاملCommunicating Haskell Processes: Composable Explicit Concurrency using Monads
Writing concurrent programs in languages that lack explicit support for concurrency can often be awkward and difficult. Haskell’s monads provide a way to explicitly specify sequence and effects in a functional language, and monadic combinators allow composition of monadic actions, for example via parallelism and choice – two core aspects of Communicating Sequential Processes (CSP).We show how t...
متن کاملAppling Metaheuristic Algorithms on a Two Stage Hybrid Flowshop Scheduling Problem with Serial Batching (RESEARCH NOTE)
In this paper the problem of serial batch scheduling in a two-stage hybrid flow shop environment with minimizing Makesapn is investigated. In serial batching it is assumed that jobs in a batch are processed serially, and their completion time is defined to be equal to the finishing time of the last job in the batch. The analysis and implementation of the prohibited transference of jobs among th...
متن کاملConcurrency Combinators for Declarative Synchronization
Developing computer systems that are both concurrent and evolving is challenging. To guarantee consistent access to resources by concurrent software components, some synchronization is required. A synchronization logic, or policy, is at present entangled in the component code. Adding a new component or modifying existing components, which may require a change of the (global) synchronization pol...
متن کاملA Two-Stage Hybrid Flowshop Scheduling Problem with Serial Batching
In this paper the problem of serial batch scheduling in a two-stage hybrid flow shop environment with minimizing Makesapn is studied. In serial batching it is assumed that jobs in a batch are processed serially, and their completion time is defined to be equal to the finishing time of the last job in the batch. The analysis and implementation of the prohibited transference of jobs among the mac...
متن کامل