From: Georg Bauhaus <rm.dash-bauhaus@futureapps.de>
Subject: Loops and parallel execution
Date: Tue, 25 Jan 2011 16:40:38 +0100
Date: 2011-01-25T16:40:39+01:00 [thread overview]
Message-ID: <4d3eeef7$0$6879$9b4e6d93@newsspool2.arcor-online.net> (raw)
A quick idea. Assume that some subprogram Op from package P
is reentrant (and does not depend on global state). Then,
with P;
...
for K in all First .. Last loop
P.Op (K);
end loop;
should have the effect of the following being permitted:
(a) to pick K from First .. Last in any order
(b) to execute P (J) in parallel with P (K) for J, K from
First .. Last
The same would be allowed for sufficiently simple expressions:
for K in all First .. Last loop
L(K) := Standard."*" (K, 3);
end loop;
Can this be borrowed from HPF (IIUC)?
Is pragma Pure (P) sufficient to signal reentrance?
next reply other threads:[~2011-01-25 15:40 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-25 15:40 Georg Bauhaus [this message]
2011-01-25 16:37 ` Loops and parallel execution Dmitry A. Kazakov
2011-01-25 17:36 ` Georg Bauhaus
2011-01-25 17:38 ` Georg Bauhaus
2011-01-25 21:32 ` Dmitry A. Kazakov
2011-01-25 22:07 ` Georg Bauhaus
2011-01-26 1:31 ` Yannick Duchêne (Hibou57)
2011-01-26 9:04 ` Dmitry A. Kazakov
2011-01-26 1:06 ` Yannick Duchêne (Hibou57)
2011-01-26 10:08 ` Dmitry A. Kazakov
2011-01-31 13:01 ` Paul Colin Gloster
2011-02-06 20:06 ` Yannick Duchêne (Hibou57)
2011-02-07 11:43 ` Nicholas Paul Collin Gloster
2011-01-26 8:46 ` Egil Høvik
2011-01-26 10:47 ` Georg Bauhaus
2011-02-14 23:27 ` Tuck
2011-02-15 21:10 ` Georg Bauhaus
2011-01-26 11:29 ` Peter C. Chapin
2011-01-26 21:57 ` Randy Brukardt
2011-01-27 23:01 ` tmoran
2011-01-29 0:23 ` Randy Brukardt
2011-02-06 20:10 ` Yannick Duchêne (Hibou57)
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox