comp.lang.ada
 help / color / mirror / Atom feed
* How many hardware threads?
@ 2010-07-12  0:47 Peter C. Chapin
  2010-07-12  2:31 ` Jeffrey R. Carter
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Peter C. Chapin @ 2010-07-12  0:47 UTC (permalink / raw)


As we all know there is currently a lot of "buzz" about parallel
programming and about the "crisis in software development" that is
associated with it. People using languages with weak support for
concurrency are now wondering how they will use multi-core systems
effectively and reliably. Of course Ada already has decent support for
concurrency so part of the problem is solved for those of us using Ada.

But not all of the problem...

I see a couple of difficulties with writing effective parallel programs
for "ordinary" applications (that is, applications that are not
embarrassingly parallel). One difficulty is load balancing: how can one
decompose a problem to keep all processors reasonably busy? The other
difficulty is scalability: how can one design a single program that can
use 2, 4, 16, 128, or more processors effectively without knowing ahead
of time exactly how many processors there will be? I'm not an expert in
Ada tasking but it seems like these questions are as big a problem for
Ada as they are for any other language environment.

I'm not looking for a solution to all tasking problems here. But there
is one feature that seems like a necessary prerequisite to such a
solution. The language (or its standard library) needs to provide a
portable way for the program to determine how many hardware threads are
available.

I'm about to write a simple program that decomposes into parallel,
compute-bound tasks quite nicely. How many such tasks should I create? I
could ask the user to provide the number as a command line argument or
in a configuration file. Yet it seems like the program should just be
able to figure it out. Does Ada have a standard way of doing that? I
didn't see anything in my (admittedly short) review.

Thanks!

Peter



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2010-08-17  9:27 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-12  0:47 How many hardware threads? Peter C. Chapin
2010-07-12  2:31 ` Jeffrey R. Carter
2010-07-12 17:04   ` Pascal Obry
2010-08-16 19:36     ` Yannick Duchêne (Hibou57)
2010-08-17  3:45       ` Randy Brukardt
2010-08-17  9:27       ` Pascal Obry
2010-07-12  2:38 ` tmoran
2010-07-12  7:40 ` Dmitry A. Kazakov
2010-07-12 17:14   ` Warren
2010-07-13  0:01   ` Gene
2010-07-13  1:09     ` Shark8
2010-07-12 10:08 ` anon
2010-07-12 11:04 ` Ludovic Brenta
2010-07-12 11:47 ` Egil Høvik

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