[fpc-devel] FPC test suite and ALGLIB

Sergey Bochkanov shadeofgray at yandex.ru
Fri Dec 11 10:42:23 CET 2009


Hello, Jonas.

> Thanks, I've added them to svn. I cursorily tested them and they at
> least work under Mac OS X/x86_64 and Mac OS X/PowerPC.

Is  it  possible  to  test  them  under  other  platforms? SPARC, ARM,
PowerPC64?



I  am  testing  full set of ALGLIB units under Win32/Win64/Lin32/Lin64
(x86). After all will be finished, I'll send you new test suite.

However,  there  is  a  problem  you  should  know  about. ALGLIB uses
non-deterministic  unit  tests. I.e.  test sets are generated randomly
(instead  of  being  built-in, pre-generated). This approach have both
benefits  and  drawbacks.

From   the   one side, it allows me to test ALGLIB with much wider set
of data (each time test is run, new inputs are tested). From the other
side,  there  is a problem of false positives - test tolerances may be
too  stringent  and sometimes correctly working unit don't match  this
stringent criterion.

So error message from ALGLIB unit tests may means that:
a. there is a bug in ALGLIB
b. there is a bug in compiler
c.   there  are  no  bugs,  just too stringent criterion in unit test,
which  sometimes  (0.1%  of  time,  for  example) doesn't met.

In  case  (c) I relax error criterion used. But each case of this kind
requires careful investigation.

It  is  almost  impossible  to  get  rid  of  type  (c) errors because
numerical  algorithms  are  very  complex.  Some ALGLIB units are more
prone  to  such  false  alarms,  some  units are less prone. FFT units
I've  sent  you are the most stable in this respect - false alarms are
almost impossible.

So we have two options:
1. to use only the most stable units
2.  to  give  me limited access to SVN so I may run these tests myself
and study their results.

I  have  enough  time  on my hands so I can help you with tests if you
want.

Sergey Bochkanov.




More information about the fpc-devel mailing list