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

Re: NEC SX-4 64 bit IEEE Netcdf



Harvey,

>Date: Thu, 11 Dec 1997 11:01:40 +1100 (EST) 
>From: Harvey DAVIES <address@hidden>
>Organization: CSIRO Mathematical and Information Sciences
>To: Steve Emmerson <address@hidden>
>Subject: Re: NEC SX-4 64 bit IEEE Netcdf 
>Keywords: 199711262243.PAA12321

In the above message, you wrote:

> Following is output from 'make fortran/test':
> 
>         ar cru ../libsrc/libnetcdf.a fort-attio.o        fort-control.o  
> fort-dim.o      fort-genatt.o   fort-geninq.o   fort-genvar.o   fort-lib.o    
>   fort-misc.o     fort-v2compat.o         fort-vario.o    fort-var1io.o   
> fort-varaio.o   fort-varmio.o 
>   fort-varsio.o
>         : ../libsrc/libnetcdf.a
>         f90 -o ftest -float0 -ew  ftest.o ../libsrc/libnetcdf.a 
>         ./ftest
> *** Testing nccre ...
> *** Testing ncddef ...
> *** Testing ncvdef ...
> *** Testing ncapt, ncaptc ...
> *** Testing ncclos ...
> *** Testing ncvpt1 ...
> *** Testing ncvgt1 ...
> *** Testing ncvpt ...
> *** Testing ncopn, ncinq, ncdinq, ncvinq, ncanam, ncainq ...
> *** Testing ncvgt, ncvgtc ...
> *** Testing ncagt, ncagtc ...
> *** Testing ncredf, ncdren, ncvren, ncaren, ncendf ...
> *** Testing ncacpy ...
> *** Testing ncadel ...
> *** Testing fill values ...

Good.

> 
> 
> Following is output from 'make nf_test/test':
> 
>         cc -Xa -c -hfloat0   -DNDEBUG fortlib.c
> "fortlib.c", line 435: vec inf: Unvectorized loop
> "fortlib.c", line 451: vec inf: Unvectorized loop
> "fortlib.c", line 516: vec inf: Unvectorized loop
> "fortlib.c", line 403: vec inf: Unvectorized loop
> "fortlib.c", line 405: vec inf: Unvectorized loop
> "fortlib.c", line 423: vec inf: Unvectorized loop
> "fortlib.c", line 464: vec inf: Unvectorized loop
>         f90 -o nf_test -float0 -ew  test_get.o   test_put.o      nf_error.o   
>    nf_test.o       test_read.o     test_write.o    util.o  fortlib.o 
> ../libsrc/libnetcdf.a  -lm 
>         ./nf_test -c
>         ./nf_test
> *** Testing nf_strerror ... 
> *** Testing nf_open ... 
> *** Testing nf_close ... 
> *** Testing nf_inq ... 
> *** Testing nf_inq_dimid ... 
> *** Testing nf_inq_dim ... 
> *** Testing nf_inq_dimlen ... 
> *** Testing nf_inq_dimname ... 
> *** Testing nf_inq_varid ... 
> *** Testing nf_inq_var ... 
> *** Testing nf_inq_natts ... 
> *** Testing nf_inq_ndims ... 
> *** Testing nf_inq_nvars ... 
> *** Testing nf_inq_unlimdim ... 
> *** Testing nf_inq_vardimid ... 
> *** Testing nf_inq_varname ... 
> *** Testing nf_inq_varnatts ... 
> *** Testing nf_inq_varndims ... 
> *** Testing nf_inq_vartype ... 
> *** Testing nf_get_var1_text ... 
> *** Testing nf_get_var1_int1 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   1844   FAILURES TESTING nf_get_var1_int1! ###
> *** Testing nf_get_var1_int2 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   1018   FAILURES TESTING nf_get_var1_int2! ###
> *** Testing nf_get_var1_int ... 
> *** Testing nf_get_var1_real ... 
> *** Testing nf_get_var1_double ... 
> *** Testing nf_get_var_text ... 
> *** Testing nf_get_var_int1 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   146   FAILURES TESTING nf_get_var_int1! ###
> *** Testing nf_get_var_int2 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   62   FAILURES TESTING nf_get_var_int2! ###
> *** Testing nf_get_var_int ... 
> *** Testing nf_get_var_real ... 
> *** Testing nf_get_var_double ... 
> *** Testing nf_get_vara_text ... 
> *** Testing nf_get_vara_int1 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   496   FAILURES TESTING nf_get_vara_int1! ###
> *** Testing nf_get_vara_int2 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   236   FAILURES TESTING nf_get_vara_int2! ###
> *** Testing nf_get_vara_int ... 
> *** Testing nf_get_vara_real ... 
> *** Testing nf_get_vara_double ... 
> *** Testing nf_get_vars_text ... 
> *** Testing nf_get_vars_int1 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   690   FAILURES TESTING nf_get_vars_int1! ###
> *** Testing nf_get_vars_int2 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   364   FAILURES TESTING nf_get_vars_int2! ###
> *** Testing nf_get_vars_int ... 
> *** Testing nf_get_vars_real ... 
> *** Testing nf_get_vars_double ... 
> *** Testing nf_get_varm_text ... 
> *** Testing nf_get_varm_int1 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   966   FAILURES TESTING nf_get_varm_int1! ###
> *** Testing nf_get_varm_int2 ... 
>  Range error: No error
>  Range error: No error
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   584   FAILURES TESTING nf_get_varm_int2! ###
> *** Testing nf_get_varm_int ... 
> *** Testing nf_get_varm_real ... 
> *** Testing nf_get_varm_double ... 
> *** Testing nf_get_att_text ... 
> *** Testing nf_get_att_int1 ... 
>  Range error: No error
>  Range error: No error
>   
>   
>    ###   4   FAILURES TESTING nf_get_att_int1! ###
> *** Testing nf_get_att_int2 ... 
>  Range error: No error

I believe that the "Range error: No error" messages above stem from a
problem in the testing routine rather than with any problem with the
netCDF library itself.  I believe that it is caused by the following macros

    I_INT1_MAX
    I_INT1_MIN
    I_INT2_MAX
    I_INT2_MIN

getting the wrong values in the file "nf_test/tests.inc" (these macros
hold the value extrema for the given, internal, types).  For example, I
think the macro I_INT1_MAX is getting the value 127 on your system when
it should be getting the value 9223372036854775807.

I believe, therefore, that you can sucessfully ignore these messages.

>   
>   
>    ###   2   FAILURES TESTING nf_get_att_int2! ###
> *** Testing nf_get_att_int ... 
> *** Testing nf_get_att_real ... 
> *** Testing nf_get_att_double ... 
> *** Testing nf_inq_att ... 
> *** Testing nf_inq_attname ... 
> *** Testing nf_inq_attid ... 
> *** Testing nf_inq_attlen ... 
> *** Testing nf_inq_atttype ... 
> *** Testing nf_create ... 
> *** Testing nf_redef ... 
> *** Testing nf_enddef ... 
> *** Testing nf_sync ... 
> *** Testing nf_abort ... 
> *** Testing nf_def_dim ... 
> *** Testing nf_rename_dim ... 
> *** Testing nf_def_var ... 
> *** Testing nf_put_var1_text ... 
> *** Testing nf_put_var1_int1 ... 
> *** Testing nf_put_var1_int2 ... 
> *** Testing nf_put_var1_int ... 
> *** Testing nf_put_var1_real ... 
> *** Testing nf_put_var1_double ... 
> *** Testing nf_put_var_text ... 
> *** Testing nf_put_var_int1 ... 
> *** Testing nf_put_var_int2 ... 
> *** Testing nf_put_var_int ... 
> *** Testing nf_put_var_real ... 
> *** Testing nf_put_var_double ... 
> *** Testing nf_put_vara_text ... 
> *** Testing nf_put_vara_int1 ... 
> *** Testing nf_put_vara_int2 ... 
> *** Testing nf_put_vara_int ... 
> *** Testing nf_put_vara_real ... 
> *** Testing nf_put_vara_double ... 
> *** Testing nf_put_vars_text ... 
> *** Testing nf_put_vars_int1 ... 
> *** Testing nf_put_vars_int2 ... 
> *** Testing nf_put_vars_int ... 
> *** Testing nf_put_vars_real ... 
> *** Testing nf_put_vars_double ... 
> *** Testing nf_put_varm_text ... 
> *** Testing nf_put_varm_int1 ... 
> *** Testing nf_put_varm_int2 ... 
> *** Testing nf_put_varm_int ... 
> *** Testing nf_put_varm_real ... 
> *** Testing nf_put_varm_double ... 
> *** Testing nf_rename_var ... 
> *** Testing nf_put_att_text ... 
> *** Testing nf_put_att_int1 ... 
> *** Testing nf_put_att_int2 ... 
> *** Testing nf_put_att_int ... 
> *** Testing nf_put_att_real ... 
> *** Testing nf_put_att_double ... 
> *** Testing nf_copy_att ... 
> *** Testing nf_rename_att ... 
> *** Testing nf_del_att ... 
> *** Testing nf_set_fill ... 
>  Unexpected old fill mode:   1099511627776
>   
>   
>    ###   1   FAILURES TESTING nf_set_fill! ###

I believe I've found the last error above.  Edit the file
fortran/fort-misc.c: change line 23 from

    NCID, FINT2CINT, PINT)

to

    NCID, FINT2CINT, PCINT2FINT)

After this change, recompile and retest.  If the only errors are the
"Range error" message, then go ahead and install the package.

> Thanks yet again,
> I think I must owe you a beer or two after all this work!

At least!  :-)

--------
Steve Emmerson   <http://www.unidata.ucar.edu>