comp.lang.ada
 help / color / mirror / Atom feed
From: bobduff@world.std.com (Robert A Duff)
Subject: Re: Tasking performance between Ada83 and Ada95
Date: 1997/06/07
Date: 1997-06-07T00:00:00+00:00	[thread overview]
Message-ID: <EBDs3J.E4v@world.std.com> (raw)
In-Reply-To: 1997Jun6.115223.7384@relay.nswc.navy.mil


In article <1997Jun6.115223.7384@relay.nswc.navy.mil>,
Mike Rose <user@machine.domain> wrote:
>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 ? 

Probably the problem is that GNAT uses the tasking (threads) of the
underlying OS, and what you're measuring is the poor performance of
those underlying systems.  Often, the issue is that you're doing system
calls to lock things and so forth -- and system calls take a l-o-o-o-n-g
time.  I don't think it's all that hard to make it fast -- change the
RTS to do all its own task dispatching and whatnot, and never never do a
system call in time-critical operations.  But then you lose something:
you have to jump through hoops to do asynchronous I/O, for example.
Also, the O/S doesn't know about your tasks, so it won't know how to
schedule your tasks in relation to tasks (threads) in other unrelated
programs.  If a page fault happens, and you're not using OS threads,
your whole program will wait for disk I/O.  A real-time program might
not care about these things, however.

- Bob




  parent 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
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 ` Robert A Duff [this message]
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
1997-06-07  0:00 ` jim hopper
replies disabled

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