Serial Combinators: "Optimal" Grains of Parallelism

نویسندگان

  • Paul Hudak
  • Benjamin Goldberg
چکیده

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 .

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

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...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1985