comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: basic question on Ada tasks and running on different cores
Date: Thu, 17 May 2012 08:50:18 +0200
Date: 2012-05-17T08:50:18+02:00	[thread overview]
Message-ID: <kmndp77xo5us$.jwegwuf0fytu$.dlg@40tude.net> (raw)
In-Reply-To: jp1ivb$o6m$1@adenine.netfront.net

On Wed, 16 May 2012 18:06:49 -0700, Jeffrey Carter wrote:

> On 05/16/2012 05:11 PM, Randy Brukardt wrote:
>>
>> The problem is, if you're trying to implement fine-grained parallelism, you
>> have to surround that code with some sort of scheduling mechanism, and that
>> overhead means you aren't going to get anywhere near 100% of the CPU at any
>> point.
> 
> The assumption here is that there are more tasks/threads/parallel things than 
> there are processors/cores. That's generally true now, but they way things are 
> going, it may not be true in the not-too-distant future (1-atom transistors 
> could make for a lot of cores). When you have a core per task you no longer need 
> scheduling.

You will still have synchronization issues to handle (real time, e.g. delay
until and to other tasks).

I assume that memory will not be shared because evidently that will be a
bottleneck for thousands of cores. Now if processors (not cores) are
synchronized by data exchange using some topology of connections, that will
be transputers reborn. In the heydays of transputers there existed switches
to connect transputer links dynamically, but that was slow and expensive.
Very likely the same problem and worse would emerge if we had architectures
of thousands of processors. The topology of the mesh will be rather fixed
with some few links left to reconnect dynamically.

Scheduling will remain but the objective will be to choose a processor with
physical connections satisfying most of synchronization constraints of the
task it will have to run. That might be a very different kind of parallel
programming than we know today.

But I agree with Randy that fine grained parallelism will never make it,
whatever architecture comes.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2012-05-17  6:50 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-06  7:38 basic question on Ada tasks and running on different cores Nasser M. Abbasi
2012-05-06  7:59 ` Gautier write-only
2012-05-06 10:02 ` Simon Wright
2012-05-06 10:31   ` Ludovic Brenta
2012-05-06 14:14     ` Robert A Duff
2012-05-06 16:07       ` Vinzent Hoefler
2012-05-06 19:43       ` Ludovic Brenta
     [not found]         ` <15qdq7df9cji7htp52i9d5f8sqsgmisc3b@invalid.netcom.com>
2012-05-06 21:24           ` Ludovic Brenta
2012-05-06 14:13 ` Robert A Duff
2012-05-07  7:36 ` anon
2012-05-08  7:08   ` Maciej Sobczak
2012-05-08  9:02     ` anon
2012-05-08  9:52       ` Ludovic Brenta
2012-05-09 12:28         ` anon
2012-05-10  2:20           ` Randy Brukardt
2012-05-11  2:38             ` NatarovVI
2012-05-11  8:30               ` Georg Bauhaus
2012-05-16 15:40                 ` NatarovVI
2012-05-16 18:03                   ` Georg Bauhaus
2012-05-12  0:33               ` Randy Brukardt
2012-05-12 10:57                 ` Stephen Leake
2012-05-15  6:55                   ` Randy Brukardt
2012-05-15 22:54                     ` Shark8
2012-05-16 15:54                 ` NatarovVI
2012-05-17  0:11                   ` Randy Brukardt
2012-05-17  1:06                     ` Jeffrey Carter
2012-05-17  6:50                       ` Dmitry A. Kazakov [this message]
2012-05-18  4:12                       ` Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox