comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada bench : count words
Date: Sun, 27 Mar 2005 23:22:10 +0200
Date: 2005-03-27T23:22:01+02:00	[thread overview]
Message-ID: <qx98jdn96c1n$.1mbzbxja83dxx.dlg@40tude.net> (raw)
In-Reply-To: d273so$e4v$1@korweta.task.gda.pl

On Sun, 27 Mar 2005 22:14:04 +0200, jtg wrote:

> Dmitry A. Kazakov wrote:
>> 
>> BTW, I think that this challenge is wrong because it does not filter I/O
>> issue out. In real-life applications it is not Text_IO (or its equivalent
>> in any other language) which is the bottleneck. Text_IO could be 10 times
>> slower and still impose no or little problems, because string processing in
>> the true sense, is usually 1000 times slower.
>> 
> IMHO the challenge is OK. Look at the system commands (in UNIX). In
> many cases text I/O performance is crucial. But since
> existing commands are very fast, nobody even thinks about it.

Ah, you hit my sore spot! In my view this is the problem of bad design. It
is characteristic of UNIX which said has three mouse drives, one per
button, but only for UNIX. [ The famous idea of splitting an application
into a chain of tiny commands like wc, sort etc is attractive but
altogether wrong. There is no universal way to do it. Then what about pipes
overhead and need of multiple re-scans. I don't buy it, and scripting
languages too. ]

> Recently I had to write some simple programs in C (after years of pure
> Ada) and I/O performance was my biggest problem. I compared my I/O
> results with wc command and wc was substantially faster than my
> pure I/O! So I downloaded
> the code and looked into it. That was mess&magic. They must have
> spent much time to get really fast I/O, and they had a good
> reason for it.
> I think that instead of blaming the challenge we must face reality:
> this test indicates that existing implementation of Ada is worse than C
> in pure I/O applications (like system commands).

But people don't use wc, they do OpenOffice (I suppose it wasn't written in
awk! (:-)). The style of programming acceptable for wc would be a disaster
for a product like OpenOffice.

> Maybe instead of
> improving the program it would be better to look into the GNAT
> source and improve things there.

In my experience, GNAT always had bad performance, and not only in
Ada.Text_IO, which is a minor problem for the mentioned above reasons, but
in far more important parts. As for patching GNAT, well, maybe next time...
(:-)) Anyway Ada.Text_IO performance is not on the top of my list. I'd
better improve ADT, add full MI and MD, make T'Class for all types, tasks
and protected types tagged, allow multiple parties rendezvous etc. (:-))

> Or to notify GNAT team about the
> problem. It would not only give Ada better
> position in this challenge, but also speed up text I/O operations of
> all the programs compiled with future versions of GNAT.

If you are a paying customer of ACT, you can try... (:-))

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



  reply	other threads:[~2005-03-27 21:22 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-19 16:22 Ada bench Pascal Obry
2005-03-19 16:55 ` Dr. Adrian Wrigley
2005-03-19 21:32   ` Michael Bode
2005-03-20  9:20     ` Pascal Obry
2005-03-20  9:39       ` Michael Bode
2005-03-20 11:16         ` Pascal Obry
2005-03-20 12:20           ` Dmitry A. Kazakov
2005-03-20 12:32             ` Pascal Obry
2005-03-21  1:42             ` (see below)
2005-03-21  2:24               ` (see below)
2005-03-21 15:00                 ` (see below)
2005-03-21  3:54               ` Ed Falis
2005-03-21 12:20                 ` Jeff C
2005-03-21 15:18                 ` (see below)
2005-03-21 15:24                   ` (see below)
2005-03-21 18:56                   ` Isaac Gouy
2005-03-21 21:31                 ` Randy Brukardt
2005-03-21 22:14                   ` Ed Falis
2005-03-21 18:07               ` Pascal Obry
2005-03-20 10:11       ` Adrian Knoth
2005-03-20 10:30         ` Michael Bode
2005-03-21 23:27       ` Georg Bauhaus
2005-03-22  1:16         ` Ada bench : count words Marius Amado Alves
2005-03-22 10:59           ` Dmitry A. Kazakov
2005-03-22 11:57             ` Marius Amado Alves
2005-03-22 12:17               ` Dmitry A. Kazakov
2005-03-22 12:47                 ` Marius Amado Alves
2005-03-22 13:08                   ` Dmitry A. Kazakov
2005-03-22 13:28                     ` Marius Amado Alves
2005-03-22 16:48                     ` Marius Amado Alves
2005-03-22 17:34                       ` Dmitry A. Kazakov
2005-03-27 20:14                         ` jtg
2005-03-27 21:22                           ` Dmitry A. Kazakov [this message]
2005-03-28 19:54                             ` jtg
2005-03-28 20:56                               ` Dmitry A. Kazakov
2005-03-29 12:40                                 ` jtg
2005-03-29 13:00                                   ` [OT] " Tapio Kelloniemi
2005-03-29 13:47                                     ` Dmitry A. Kazakov
2005-03-29 15:53                                       ` Tapio Kelloniemi
2005-03-29 16:17                                         ` Dmitry A. Kazakov
     [not found]                                         ` <k33j419lgei1ui89s26o1dlr9ccf1qe1hd@4ax.com>
2005-04-11 23:04                                           ` Marius Amado Alves
2005-03-29 13:47                                   ` Dmitry A. Kazakov
2005-04-01 20:58                                   ` Georg Bauhaus
2005-04-01 20:18                                     ` Pascal Obry
2005-03-22 12:53                 ` Marius Amado Alves
     [not found]                 ` <f205219321dd18dba878fab16b7cb50d@netcabo.pt>
2005-03-22 13:12                   ` Marius Amado Alves
2005-03-23 16:58                     ` Isaac Gouy
2005-03-22 13:58                 ` Robert A Duff
2005-03-22 16:30                   ` Marius Amado Alves
2005-03-22 16:41                     ` Tapio Kelloniemi
2005-03-22 17:39                       ` Marius Amado Alves
2005-03-22 18:59                         ` Dmitry A. Kazakov
2005-03-22 19:08                         ` Tapio Kelloniemi
2005-03-22 18:34                     ` Georg Bauhaus
2005-03-22 19:32                     ` Robert A Duff
2005-03-22 20:04                       ` tmoran
2005-03-23 16:55                       ` Isaac Gouy
     [not found]                   ` <1820eab50b57f2fe1c4e8e50bb0f4fe5@netcabo.pt>
2005-03-22 22:49                     ` Stephen Leake
2005-03-22 22:58                       ` Robert A Duff
2005-03-22 23:27                   ` Larry Kilgallen
2005-03-23 22:33                     ` Robert A Duff
2005-03-24  5:02                     ` Larry Kilgallen
     [not found]                     ` <wccpsxqro0c.fsfOrganization: LJK Software <bM40pHW6P2KW@eisner.encompasserve.org>
2005-03-25  1:34                       ` Robert A Duff
2005-03-22 12:22             ` Jeff C
2005-03-23 16:48               ` Isaac Gouy
2005-03-23 17:06             ` Isaac Gouy
2005-03-22 19:49           ` tmoran
2005-03-22 21:51             ` Dmitry A. Kazakov
2005-03-23  0:16               ` tmoran
2005-03-23  7:25                 ` Dmitry A. Kazakov
2005-03-22 22:33             ` Marius Amado Alves
     [not found]             ` <00b362390273e6c04844dd4ff1885ee0@netcabo.pt>
2005-03-23 15:09               ` Marius Amado Alves
2005-03-23 19:00                 ` tmoran
2005-03-23 19:30                   ` tmoran
2005-03-23 21:38                     ` tmoran
2005-03-25  7:30                       ` Simon Wright
2005-03-25  9:38                         ` tmoran
2005-03-25 16:20                           ` Tapio Kelloniemi
2005-03-25 22:18                             ` Ada:The High Performance Language for Hyperthreaded and Multicore CPUs; was " tmoran
2005-03-23 19:54                   ` Tapio Kelloniemi
2005-03-23 20:39                     ` Ada bench : word frequency Marius Amado Alves
2005-03-23 21:26                       ` Isaac Gouy
2005-03-24  1:24                         ` Marius Amado Alves
2005-03-24 17:23                           ` Isaac Gouy
2005-03-24 19:52                           ` Martin Dowie
2005-04-11 15:11                             ` Marius Amado Alves
2005-03-24 20:16                           ` Pascal Obry
2005-03-24 22:54                             ` tmoran
2005-04-11 15:38                               ` Marius Amado Alves
2005-03-24 21:18                           ` Gautier Write-only
2005-04-11 15:32                             ` Marius Amado Alves
2005-04-11 23:56                               ` Robert A Duff
2005-04-28  4:04                       ` Matthew Heaney
2005-04-28 20:40                         ` Matthew Heaney
2005-03-23 21:38                     ` Ada bench : count words tmoran
2005-03-24 20:19                   ` tmoran
2005-03-24 21:00                     ` Pascal Obry
2005-03-24 22:54                       ` tmoran
2005-03-30 16:08                 ` Andre
2005-03-30 16:36                   ` Pascal Obry
2005-03-22 22:27           ` Dmitry A. Kazakov
2005-03-23  7:46             ` Pascal Obry
2005-03-23  7:56               ` Dmitry A. Kazakov
2005-03-23 13:38                 ` Robert A Duff
2005-03-22  7:05         ` Ada bench Pascal Obry
2005-04-07 20:59   ` David Sauvage
2005-04-07 23:40     ` David Sauvage
2005-04-08 17:11     ` Pascal Obry
2005-04-08 17:39       ` tmoran
2005-04-08 18:49       ` David Sauvage
2005-04-18 19:14       ` David Sauvage
2005-04-19 16:43         ` Matthew Heaney
2005-04-19 23:22           ` David Sauvage
2005-04-20  0:49             ` Matthew Heaney
2005-04-20  4:22               ` Georg Bauhaus
2005-04-20 21:24               ` David Sauvage
2005-04-20 23:06                 ` Georg Bauhaus
2005-04-20  9:41             ` Pascal Obry
2005-04-20 11:44               ` Matthew Heaney
2005-04-20 14:47                 ` Pascal Obry
2005-04-20 19:26                   ` Georg Bauhaus
2005-04-20 19:34                     ` Pascal Obry
replies disabled

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