caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Robert Fischer <robert@fischerventure.com>
To: caml-list <caml-list@yquem.inria.fr>
Subject: Code Mobility [was Re: thousands of CPU cores]
Date: Sat, 12 Jul 2008 22:17:38 -0500	[thread overview]
Message-ID: <487973D2.3040909@fischerventure.com> (raw)
In-Reply-To: <200807110950.52327.jon@ffconsultancy.com>

One thing being left out on this conversation is code mobility.

If I want to execute an arbitrary piece of code in parallel, organizing a distributed message
passing system to accomplish that is nontrivial.

Since we're in a functional language, a key piece of our functionality is the ability to abstract
out what code we're executing in new and exciting ways -- CPS being a classic example of this.
However, if I'm in a multi-process system, my capability of doing CPS is exceedingly limited,
because OCaml isn't the kind of language where you can just schlep around arbitrary code.

So, until we have code mobility, there is a huge win of multithreaded code over multiprocess code.

Problems which can be simply broken down at a nice, obvious breakpoint work just fine in a
multiprocess style.  But if I want implicit or radical parallelism -- if I want the ability to go
"take this function -- whatever it is -- and execute it in parallel and give me back the result",
then I'm going to need truly parallel threads.  And that kind of stunts is exactly the kind of thing
which is going to make your code leverage kilocores effectively.

~~ Robert.

Jon Harrop wrote:
> On Friday 11 July 2008 07:26:44 Sylvain Le Gall wrote:
>> On 10-07-2008, Oliver Bandel <oliver@first.in-berlin.de> wrote:
>>> Using multi-processes instead of multi-threads is the
>>> usual way on Unix, and it has a lot of advantages.
>>> Threads-apologetes often say, threads are the ultimative
>>> technology... but processes have the advantage of encapsulation
>>> of the wohole environment of the program.
>> There is also the fact that using multi process allow you to go further
>> than the memory limit per process...
> 
> Yes.
> 
>> (3GB for Linux/
> 
> Is that for 32-bit Linux?
> 
>> 1GB for Windows)...  
> 
> 32-bit Windows XP has a 2Gb default process memory limit:
> 
>   http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx
>   http://msdn.microsoft.com/en-us/library/aa366778.aspx
> 
> 32-bit Windows Server can be increased to 3Gb.
> 
> However, any serious power users will already be on 64-bit where these limits 
> have been relegated to quaint stories your grandpa will tell you.
> 


  parent reply	other threads:[~2008-07-13  3:17 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-10  5:57 thousands of CPU cores J C
2008-07-10  6:15 ` [Caml-list] " Erik de Castro Lopo
2008-07-10 12:47   ` Oliver Bandel
2008-07-10 13:48     ` Hezekiah M. Carty
2008-07-10 11:35 ` Jon Harrop
2008-07-14 11:32   ` J C
2008-07-14 12:08     ` Jon Harrop
2008-07-14 17:04       ` Mike Lin
2008-07-14 17:28         ` Jon Harrop
2008-07-14 17:16       ` Richard Jones
2008-07-10 13:21 ` Jon Harrop
2008-07-10 13:44 ` Peng Zang
2008-07-10 14:00   ` Jon Harrop
2008-07-10 22:25     ` Richard Jones
2008-07-10 23:04       ` Jon Harrop
2008-07-10 23:41         ` Oliver Bandel
2008-07-11  0:17           ` Oliver Bandel
2008-07-11  9:30             ` Richard Jones
2008-09-21 19:05               ` Michaël Grünewald
2008-09-21 21:41                 ` Jon Harrop
2008-09-22  7:51                   ` Alan Schmitt
2008-09-22 19:03                     ` Jon Harrop
2008-09-22 19:49                       ` David Teller
2008-09-23  6:42                       ` kirillkh
2008-09-24 13:30                       ` [Caml-list] Link tracking Chris Clearwater
2008-09-24 15:43                         ` Jon Harrop
2008-07-11 14:53     ` [Caml-list] thousands of CPU cores Peng Zang
2008-07-15 14:39     ` Kuba Ober
2008-07-19 12:41       ` Oliver Bandel
2008-07-10 19:15 ` Gerd Stolpmann
2008-07-10 20:07   ` Sylvain Le Gall
2008-07-10 20:24     ` [Caml-list] " Gerd Stolpmann
2008-07-10 21:02       ` Sylvain Le Gall
2008-07-10 21:19         ` [Caml-list] " Gerd Stolpmann
2008-07-10 21:35           ` Jon Harrop
2008-07-10 22:39             ` Gerd Stolpmann
2008-07-15 15:57           ` Kuba Ober
2008-07-15 18:03             ` Gerd Stolpmann
2008-07-15 19:23               ` Adrien
2008-07-15 19:45                 ` Adrien
2008-07-16  8:59               ` Michaël Grünewald
2008-07-16 16:43                 ` Gerd Stolpmann
2008-07-16 11:46               ` Richard Jones
2008-07-16 18:35                 ` Erik de Castro Lopo
2008-07-17 12:48               ` Kuba Ober
2008-07-15 15:21       ` Kuba Ober
2008-07-10 20:48     ` Basile STARYNKEVITCH
2008-07-10 21:12       ` Jon Harrop
2008-07-10 23:33   ` [Caml-list] " Oliver Bandel
2008-07-10 23:43     ` Oliver Bandel
2008-07-11  6:26     ` Sylvain Le Gall
2008-07-11  8:50       ` [Caml-list] " Jon Harrop
2008-07-11  9:29         ` Sylvain Le Gall
2008-07-15 16:01           ` [Caml-list] " Kuba Ober
2008-07-13  3:17         ` Robert Fischer [this message]
2008-07-11  3:01   ` [Caml-list] " Brian Hurt
2008-07-11 13:01     ` Gerd Stolpmann
2008-07-11 13:43       ` Jon Harrop
2008-07-11 14:03         ` Basile STARYNKEVITCH
2008-07-11 15:08           ` Jon Harrop
2008-07-11 17:28           ` Jon Harrop
2008-07-11 17:54         ` Richard Jones
2008-07-11 18:30           ` Raoul Duke
2008-07-12 17:35       ` Brian Hurt
2008-07-11 15:01     ` Peng Zang
2008-07-12  0:23       ` Oliver Bandel
2008-07-12 22:54         ` J C
2008-07-19 12:06           ` Oliver Bandel
2008-07-11 14:06 ` Xavier Leroy
2008-07-11 15:20   ` Oliver Bandel
2008-07-11 15:23   ` Bill
2008-07-11 18:14   ` Mattias Engdegård
2008-07-12 23:05   ` J C

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=487973D2.3040909@fischerventure.com \
    --to=robert@fischerventure.com \
    --cc=caml-list@yquem.inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).