PARANOIA
Kahan's Floating Point Test Program
PARANOIA
is a C program which
tests the floating point arithmetic implementation on a computer.
PARANOIA was originally written in BASIC (!)
by Professor William Kahan.
The original, true, correct version of PARANOIA
is available in the PARANOIA subdirectory of
the NETLIB web site.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
PARANOIA is available in
a C version and
a FORTRAN90 version.
Related Data and Programs:
MACHAR,
a C library which
computes the appropriate values
of machine constants for a given machine.
MACHINE,
a C library which
store the appropriate values
of machine constants for a given machine.
Reference:
-
Richard Karpinski,
Paranoia: A floating-point benchmark,
Byte Magazine,
Volume 10, Number 2, February 1985, pages 223-235.
Source Code:
Examples and Tests:
List of Routines:
-
PARANOIA tests the floating point arithmetic implementation on a computer.
-
SIGFPE is the floating point exception receiver.
-
SIGN returns the sign of a floating point value.
-
PAUSE pauses program execution until the user hits RETURN.
-
TSTCOND checks whether an error has occurred.
-
BADCOND tracks and prints the various levels of error.
-
RANDOM computes a new random value.
-
SQXMINX ???.
-
NEWD ???.
-
SR3750 ???.
-
ISYEQX checks whether two quantities are equal, as they should be.
-
SR3980 ???
-
PRINTLFNPOSITIVE warns if a discrepancy occurred one or more times.
-
TstPtUf???
-
NOTIFY warns if a test appears to be inconsistent.
-
MSGLIST prints out a block of test.
-
INSTRUCTIONS prints some instructions.
-
HEADING prints a heading.
-
CHARACTERISTICS explains the arithmetic properties to be checked.
-
HISTORY prints out an explanation of the program, and history.
You can go up one level to
the C source codes.
Last revised on 30 December 2007.