Karim BELABAS on Sat, 08 Nov 2003 12:24:27 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Experimenting with the Alpha build.


On Fri, 7 Nov 2003, Ilya Zakharevich wrote:
> On Fri, Nov 07, 2003 at 12:59:30PM +0100, Bill Allombert wrote:
> > The current bench basically run every GP functions on nearly trivial
> > input.  For tuning purpose, we need to write a special benchmark that
> > give a more accurate view of PARI performance on the platform.
> >
> > Anyone interested in doing this ?
>
> Personally, I have very little interest in fine details of PARI
> performance as far as it comes without a real test suite (so we know
> about PARI correctness "on nearly trivial input" only).  What I would
> really appreciate is a beefed up test suite which focuses on coverage,
> not benching.

I have simplified the handling of test suites: to add a new series of test
1) create  input:  test/in/xxx
          output:  test/32/xxx  and possibly test/64/xxx

2) add 'xxx' to the 'testlist' variable in config/Makexxx.SH
--> will create the two targets 'test-xxx' and 'dotest-xxx'

3) Configure && make test-xxx

Notes:

-- If the '64bit' version of the output is missing, the '32bit' one is used
instead. Useful if results are platform-independant

-- To ensure platform independant results:

  * make sure to start input file with \p38 statement [ or any other accuracy
    that exists exactly on both 32 and 64 bit architectures ]

  * avoid 'getheap' which will necessary print out different results on 32bit
    and 64bit architectures.

  * end the input file with
        print("Total time spent: ",gettime);
        \q
    and do not use gettime output anywhere else in the file

-- A nice way to create the output file is to only write test/in/xxx, do 2 &
3 as above. Then

    patch -p0  <  one_of_the_generated_dif_files

creates the missing output file.

=============================================================================

I have started by committing a Galois testsuite:

    make test-galois

will test every single branch of the polgalois() code in about 1 minute.
[ dotest-galois does the same without rebuilding missing gp binaries first ].
Relevant tests are run twice, both with new_galois_format = 0 and 1.

=============================================================================

Anybody wants to contribute series of non-trivial ( categorized ) tests ?

    Karim.
-- 
Karim Belabas                     Tel: (+33) (0)1 69 15 57 48
Dép. de Mathématiques, Bât. 425   Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud              http://www.math.u-psud.fr/~belabas/
F-91405 Orsay (France)            http://pari.math.u-bordeaux.fr/  [PARI/GP]