comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@cs.nyu.edu (Robert Dewar)
Subject: Re: Array mappings
Date: 20 Dec 1994 09:09:13 -0500
Date: 1994-12-20T09:09:13-05:00	[thread overview]
Message-ID: <3d6oi9$ldb@gnat.cs.nyu.edu> (raw)
In-Reply-To: 3d5ims$7gv@felix.seas.gwu.edu

Mike wonders about the difficulty of applying traditional fortran optimization
techniques to Ada.

There is no conceptual problem in writing highly optimizing Ada backends.
I don't think the "highly structured for loop" of Ada is any particular
help, it is essentially identical to the do loop of Fortran in any case.

THe only conceptual problem arises as a result of the dynamic lower bounds,
which threaten to generate extra instructions in some cases, although
address reduction in loops will generally eliminate this extra work in
most loops. Another approach is to use virtual origins for arrays, which
is our eventual plan in GNAT.

The difficulty is that the amount of technical resources to do a highly
optimizing backend of this case is HUGE, and I can't believe it would have
been worth the investment of tens of person years to develop Ada optimization
to this level, especially early on. Furthermore, such an expenditure of
effort would have harmed stability and reliability.

Fortran users tend to be more concerned with speed than with reliability (the
infamous Cray division which gives wrong results very fast is an indicator of
this general attitude), and that of course is the wrong way round for most
Ada users.

Obviously the way to get high performance is to borrow an existing backend,
which of course is what we have done with GNAT. The performance of GNAT for
a simple arithmetic loop should be entirely comparable to that of 
GNU Fortran or GNU C, which is pretty darned good, but probably STILL not
as good as the really hot commercial Fortran compilers on which huge
optimziation efforts have been spent.




  reply	other threads:[~1994-12-20 14:09 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1994-12-06 13:06 Why don't large companies use Ada? Paige Vinall
1994-12-07 14:15 ` Norman H. Cohen
1994-12-10 20:55   ` Array mappings Michael Feldman
1994-12-13 15:01     ` Norman H. Cohen
1994-12-16 18:55       ` Michael Feldman
1994-12-17  0:43         ` Keith Thompson
1994-12-17 17:17           ` Reaching traditional engineering, was: " Michael Feldman
1994-12-18  1:34             ` Robert Dewar
1994-12-19  2:11               ` Michael Feldman
1994-12-21 16:17               ` Kevin Weise
1994-12-21 13:29                 ` David Emery
1994-12-22  2:40                   ` Michael Feldman
1994-12-22 10:20                 ` Reaching traditional engineering Introspect Technologies
1994-12-22 20:49                   ` Richard Riehle
1994-12-23  9:09                   ` Peter Hermann
1994-12-27  3:37                 ` Reaching traditional engineering, was: Array mappings Richard G. Hash
1994-12-17 20:42           ` Rolf Ebert
1994-12-19  2:19             ` Michael Feldman
1994-12-19  3:46               ` Robert Dewar
1994-12-19  5:53               ` Mark S. Hathaway
1994-12-19 14:27                 ` Robert Dewar
1994-12-22 17:08               ` Richard G. Hash
1995-01-03  3:26                 ` Fred McCall
1994-12-17 17:41         ` Robert Dewar
1994-12-18  0:03           ` Dik T. Winter
1994-12-19  2:08             ` Michael Feldman
1994-12-19  2:01           ` Michael Feldman
1994-12-19  3:41             ` Robert Dewar
1994-12-20  3:23               ` Michael Feldman
1994-12-20 14:09                 ` Robert Dewar [this message]
1994-12-19 19:10             ` Matt Kennel
1994-12-09  2:31 ` Why don't large companies use Ada? Michael Feldman
replies disabled

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