comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@merv.cs.nyu.edu (Robert Dewar)
Subject: Re: Tasking performance between Ada83 and Ada95
Date: 1997/06/07
Date: 1997-06-07T00:00:00+00:00	[thread overview]
Message-ID: <dewar.865693453@merv> (raw)
In-Reply-To: 1997Jun6.115223.7384@relay.nswc.navy.mil


Mike Rose says

<<In comparing the results between the two compilers, I found that the tasking
performance is much slower with GNAT than with Alsys, every test was at least
10 times slower and some were much more.
 
Our software depends heavily on tasking.  Is there any way to improve the
tasking performance with GNAT ? 
 
>>

You have to be careful to know exactly what you are comparing. In partciular, 
there is no question that Ada 95 does impose some additional semantic
constraints and features (e.g. requeue and ATC) that result in distributed
implementation costs. Often for example, the proper comparison is between
a task in Ada 83 and a protected type in Ada 95.

You also have to decide what features you are testing carefully. In looking
at, for example, the timings on SGI between VADS and GNAT on the PIWG tasking
benchmarks, we certainly do not see a factor of 10 difference in performance,
and in some comparative benchmarks on timing performance for tasking, we see
GNAT running faster than an Ada 83 compiler doing similar things.

The other point is that you have to be very careful that you are in fact
looking at comparable situations. For example, comparing a GNAT compiler
where tasks are mapped to operating systems threads, with an Ada 83
o

compiler where the tasking maps to a single processing and is handled in
user mode is of course a completely meaningless comparison.

One answer to your question if you are making this kind of apples/oranges
comparison is to use a similar kernel (e.g. FSU threads on GNAT). We find
on many targets that the use of FSU threads is MUCH more efficient than the
use of operating systems tasks.

A more focussed reply is possible if you tell us exactly what is being
compared (what machines, what compilers, what thread packages).

Robert Dewar
Ada Core Technologies





  reply	other threads:[~1997-06-07  0:00 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-06-06  0:00 Tasking performance between Ada83 and Ada95 Mike Rose
1997-06-07  0:00 ` Robert Dewar [this message]
1997-06-08  0:00   ` Edmond Walsh
1997-06-09  0:00     ` Robert Dewar
1997-06-15  0:00       ` Edmond Walsh
1997-06-15  0:00         ` Robert Dewar
1997-06-15  0:00           ` Tom Moran
1997-06-16  0:00           ` Robert A Duff
1997-06-17  0:00             ` Robert Dewar
1997-06-22  0:00           ` Geert Bosch
1997-06-23  0:00             ` Larry Kilgallen
1997-06-25  0:00               ` Fergus Henderson
1997-06-25  0:00                 ` Larry Kilgallen
1997-06-23  0:00             ` Robert Dewar
1997-06-07  0:00 ` jim hopper
1997-06-07  0:00 ` Robert A Duff
1997-06-08  0:00   ` Robert Dewar
1997-06-10  0:00     ` Jon S Anthony
1997-06-10  0:00     ` PascMartin
1997-06-10  0:00       ` 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