comp.lang.ada
 help / color / mirror / Atom feed
From: news.crd.ge.com!e7sa!groleau@uunet.uu.net  (Wes Groleau X7574)
Subject: Re: ADA performance
Date: 30 Apr 93 17:18:18 GMT	[thread overview]
Message-ID: <C6B42J.9tt@crdnns.crd.ge.com> (raw)

There is a saying that the first step in learning to do genealogy is learning
to spell it (A little teasing about the subject line).

Seriously, y'all had good responses about the performance problem.  One more
factor, though:  To expand and generalize on the comments about a) size of
floats, b) use or non-use of co-processor, c) built-in abstraction vs.
hand-coded abstraction --  Some computers (such as the high-end VAXen) and some
co-processors have complex as a simple data type.  In such a system, a complex
multiplication may be a single instruction:  certainly more efficient than
four floating point multiplications and two floating point multiplications
i.e. (a+bi)*(c+di) = [ac-bd]+[ad+bc]i  where the + outside the brackets doesn't
count.  Probably one complex add is probably more efficient even than two
( [a+c] + [b+d]i ).  Any optimizer smart enough to recognize the Ada record
or two-float versions as a complex operation is probably smart enough to
recognize complex operations where there aren't any.  All four of these reasons
(a, b, c, and mine are why many compiler vendors provide complex math packages.

Some of these vendor packages use assembler or pragma INTERFACE for the body.
Verdix, unfortunately, uses the Ada record approach with the body in Ada.
(Also, there is a coding error and a STUPID design error in the Verdix complex
package--e-mail me if you can't find it.)

Conclusions:  1. Don't compare two compilers by using non-equivalent code.
              2. RTFM - with Verdix, you have to read it VERY carefully to
                 find out they have a complex math package.
             
Wes G.

(Back to our regularly scheduled info-mercial about marketing Ada.)

             reply	other threads:[~1993-04-30 17:18 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1993-04-30 17:18 Wes Groleau X7574 [this message]
  -- strict thread matches above, loose matches on Subject: below --
1993-05-04 19:31 ADA Performance Robert I. Eachus
1993-05-04 15:18 Boris Pelakh
1993-05-04 15:03 cis.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!howland.
1993-05-03 21:21 Robert I. Eachus
1993-05-03 11:54 cis.ohio-state.edu!news.sei.cmu.edu!firth
1993-04-29 17:08 Jeffrey M. Creem x5700
1993-04-29 16:12 Robert Dewar
replies disabled

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