comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Everything You Know Is Wrong
Date: Tue, 29 Dec 2015 18:36:40 +0100
Date: 2015-12-29T18:36:40+01:00	[thread overview]
Message-ID: <n5ugbf$fqr$1@speranza.aioe.org> (raw)
In-Reply-To: n5udss$vh2$1@dont-email.me

On 2015-12-29 17:57, G.B. wrote:

> The point is that, since order does not matter among these parallel
> computations, and since parallel loops are not just fantasy,
> the possibility of postponement follows from parallel loops.

Ada does not have parallel loops. The job is done!

> Consider F1 and F2 from a Pure package, X a variable of type T
> and T without progenitors:
>
>     declare
>        A : T := F1 (1,2,3);
>        B : T := F2 (X);
>     begin
>        G (A, B);
>     end;
>
> Is it impossible for a compiler to see that the initializing parts of
> the declarations of A and B are independent?

No, because initialization of T may have side effects. Ada mandates B 
initialized after A. Again, the "optimization" you wanted is done.

BTW, why do you believe that the same amount of computation performed 
consecutively should require less energy or (not quite same) less 
battery drain? It is no obvious. In any case it might depend on the 
specifics of the battery, the board, the memory controller, the number 
of cores etc. You cannot optimize for these, it would lead a 
combinatoric explosion of targets. All that mess to save 0.1% drain?

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

  reply	other threads:[~2015-12-29 17:36 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-27  0:37 Everything You Know Is Wrong Jeffrey R. Carter
2015-12-27  7:55 ` J-P. Rosen
2015-12-27 17:37   ` Jeffrey R. Carter
2015-12-27  8:46 ` Dmitry A. Kazakov
2015-12-27 17:36   ` Jeffrey R. Carter
2016-01-04 14:44     ` Alejandro R. Mosteo
2015-12-28  9:57 ` Georg Bauhaus
2015-12-28 11:19   ` Dmitry A. Kazakov
2015-12-28 16:27     ` Nicholas Collin Paul de Gloucester
2015-12-28 17:30       ` Dmitry A. Kazakov
2015-12-28 18:50         ` Nicholas Collin Paul de Gloucester
2015-12-28 20:40           ` Dmitry A. Kazakov
2015-12-29 11:42             ` G.B.
2015-12-29 12:36               ` Dmitry A. Kazakov
2015-12-29 13:50                 ` G.B.
2015-12-29 14:06                   ` J-P. Rosen
2015-12-29 14:16                   ` Dmitry A. Kazakov
2015-12-29 16:31                     ` Dennis Lee Bieber
2015-12-29 17:02                       ` G.B.
2015-12-29 16:57                     ` G.B.
2015-12-29 17:36                       ` Dmitry A. Kazakov [this message]
2015-12-29 17:53                         ` G.B.
2015-12-29 18:09                           ` G.B.
2015-12-29 22:05                           ` Randy Brukardt
2016-01-04 14:51                           ` Alejandro R. Mosteo
2015-12-29 21:58                         ` Randy Brukardt
2015-12-28 17:19 ` Nicholas Collin Paul de Gloucester
2015-12-29 23:37 ` darkestkhan
2016-01-05 13:52 ` brbarkstrom
2016-01-10 14:46 ` Michael Erdmann
2016-02-29 12:14 ` Jacob Sparre Andersen
2016-03-02 14:11   ` vincent.diemunsch
2016-03-02 14:23     ` J-P. Rosen
2016-03-02 15:44       ` Bob Brown
2016-03-02 16:30         ` J-P. Rosen
2016-03-02 16:36           ` Bob Brown
2016-03-02 16:52             ` Bob Brown
2016-03-02 14:32     ` Dmitry A. Kazakov
2016-03-02 15:31       ` vincent.diemunsch
2016-02-29 12:27 ` Jacob Sparre Andersen
replies disabled

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