C      ALGORITHM 692, COLLECTED ALGORITHMS FROM ACM.
C      THIS WORK PUBLISHED IN TRANSACTIONS ON MATHEMATICAL SOFTWARE,
C      VOL. 17, NO. 2, PP. 264-272.  JUNE, 1991.
                DISTRIBUTION OF SOURCE CODE FOR THE SPARSE BLAS

The sparse BLAS source code consists of the test program and model
implementation for each of the three floating point precisions available in
FORTRAN-77 (REAL, DOUBLE PRECISION, and COMPLEX) and the commonly supplied
extension COMPLEX*16.  In addition to the source code there are input files
for each of the four test programs.  The source code for the sparse BLAS is
distributed on two floppy disks.  The first floppy disk contains the source
code and input files for the REAL and COMPLEX versions as well as this file
(README.DOC).  The second floppy disk contains the source code for the DOUBLE
PRECISION and COMPLEX*16 versions.

The files on the first disk are:

        STSTDRV.FOR    Test program for certification of REAL version
        SSPBLAS.FOR    REAL version of sparse BLAS subroutines
        STSTDRV.INP    Input dataset for REAL certification

        CTSTDRV.FOR    Test program for certification of COMPLEX version
        CSPBLAS.FOR    COMPLEX version of sparse BLAS subroutines
        CTSTDRV.INP    Input dataset for COMPLEX certification

        README.DOC     This file

The files on the second disk are:

        DTSTDRV.FOR    Test program for certification of D. P. version
        DSPBLAS.FOR    D. P. version of sparse BLAS subroutines
        DTSTDRV.INP    Input dataset for DOUBLE PRECISION certification

        ZTSTDRV.FOR    Test program for certification of COMPLEX*16 version
        ZSPBLAS.FOR    COMPLEX*16 version of sparse BLAS subroutines
        ZTSTDRV.INP    Input dataset for COMPLEX*16 certification

To certify the REAL version, compile and link STSTDRV.FOR+SSPBLAS.FOR
and execute with STSTDRV.INP.

To certify the DOUBLE PRECISION version, compile and link DTSTDRV.FOR
+DSPBLAS.FOR and execute with DTSTDRV.INP.

To certify the COMPLEX version, compile and link CTSTDRV.FOR+CSPBLAS.FOR
and execute with CTSTDRV.INP.

To certify the COMPLEX*16 version, compile and link ZTSTDRV.FOR+ZSPBLAS.FOR
and execute with ZTSTDRV.INP.


The following table indicates certifications performed to date.  Entries with P
all passed certification with default settings for compilation and execution.
Entries with PNO passed certification only when compiler optimization was
turned off.  Other entries indicate failure due to an identifable flaw in the
complier.

                        REAL    D.P.    COMPLEX   COMPLEX*16

Alliant (v. 4.0.0)        P       P         P          2
CDC 760 (FTN 5.1)         P       P         P        -na-
CONVEX C1 (v. 2.0)        P       P         P          P
Cray X-MP (CFT 1.14)      P       P         P          P
IBM 3081 (FORT-V 1.4.1)   P       P         P          P
IBM PC XT
  Microsoft (v. 4.0)      P       P         P          PNO
  Leahy (v. 2.20)         P       P         1          1
MicroVax-VMS (v. 4.4)     P       P         P          P
MicroVax-Ultrix (v. 1.2)  P       P         P          P
SCS-40 (CFT 1.13)         P       P         P          P
SUN 3/260 (v. 3.4)        P       P         P          P
VAX 780 (v. 4.5)          P       P         P          P

1 - compiler aborted with internal error
2 - altered input array Y for subprograms ZDOTCI, ZDOTUI, and ZGTHR
    for some vector lengths.  Otherwise the results were correct.
    Failure reported to Alliant.

