From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,325a055bed62c230 X-Google-Attributes: gid103376,public From: rracine@myremarq.com (Roger Racine) Subject: Re: Apex vs GNAT on solaris Date: 1999/12/07 Message-ID: <384cfdb3.691883075@newsnew.draper.com>#1/1 X-Deja-AN: 557678043 References: <82hiuj$74o$1@nnrp1.deja.com> <82hnll$ahu$1@nnrp1.deja.com> X-Complaints-To: abuse@draper.com X-Trace: newsnew.draper.com 944570318 3849 140.102.40.31 (7 Dec 1999 12:38:38 GMT) NNTP-Posting-Date: 7 Dec 1999 12:38:38 GMT Newsgroups: comp.lang.ada Date: 1999-12-07T12:38:38+00:00 List-Id: On Tue, 07 Dec 1999 01:25:13 GMT, Robert Dewar wrote: >In article <82hiuj$74o$1@nnrp1.deja.com>, > reason67@my-deja.com wrote: > > >You need to say what options you are using for both compilers. >We have sometimes found people making the *amazing* mistake >of compiling GNAT with -O0. Generally the appropriate options >for benchmarking are -O2 -gnatn. > >The options are critical, because otherwise you may simply >be measuring differences in choices of default options. For >example if one compiler inlines by default, the other one >does not, then the comparison may be meaningless. > >You also need to specify all other parameters. For instance, >if you are running tasking, make sure you are comparing >comparable underlying threads implementations, otherwise you >again have apples and oranges (e.g. which of the two threads >libraries did you use for GNAT). > Is it a mistake to use the default options for a compiler? Many people will assume that the default options are the most reliable options. Others will assume that the default options are the best options. The default options generally turn out to be the most reliable because most people use them, and bugs will be discovered and corrected sooner than those to be found using the non-default options. The same can be said for tasking. I have been hit many times by optimizer bugs, and generally assume that the compiler vendors knows what they are doing when the defaults are created. They are giving what they think should be the most common values for the options. Roger Racine