Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
OC4MC : OCaml for Multicore architectures
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jon Harrop <jon@f...>
Subject: Re: [Caml-list] OC4MC : OCaml for Multicore architectures
On Friday 25 September 2009 08:32:26 Hugo Ferreira wrote:
> Put it another way; if parallel/concurrent programming could be
> easily used with a minimum of effort then I believe "most people"
> would use it simply because it is available.

Once your run-time supports it, you just need a library that farms tasks out 
to threads via queues and a lot of parallelism really is easy.

>  >...
>  > If I tell you that you just have to modify a bit your program to get a
>  > near linear speedup, then it looks great. But in practice it is rather
>  > having to rethink completely your algorithm, to eventually get a
>  > speedup bounded by bandwidth, and starting from a point lower than the
>  > original single thread program.
>  >...
> Rethinking our application/algorithmic structure may not be a real
> deterrent. An application does not require parallel/concurrent
> processing everywhere. It is really a question of identifying where
> and when this is useful. Much like selecting the most "appropriate"
> data-structure for any application. It's not an all or nothing
> proposition.

Right. Parallelizing programs generally consists of identifying a performance 
bottleneck via measurement and performing the outermost parallelizable loops 
in parallel. You can do many more clever things but they are far less common.

Dr Jon Harrop, Flying Frog Consultancy Ltd.