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

19991215: SX4 optimization proposal



------- Forwarded Message

        by unidata.ucar.edu (8.8.8/8.8.8) with ESMTP id NAA21352
        for <address@hidden>; Wed, 15 Dec 1999 13:26:09 -0700 (MST)
        by lumiere.idris.fr (8.9.3/8.9.3) with ESMTP id VAA09005;
        Wed, 15 Dec 1999 21:26:08 +0100 (MET)
        by mira.idris.fr (8.9.3/8.9.3) with ESMTP id VAA16376;
        Wed, 15 Dec 1999 21:26:06 +0100
Message-Id: <address@hidden>
X-Mailer: exmh version 2.0.2 2/24/98
To: address@hidden
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Date: Wed, 15 Dec 1999 21:26:06 +0100
From: Marc Guyon <address@hidden>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by unidata.ucar.edu id 
NAA21352



Steve,



Someone gave to me a proposition to vectorize a part of the netcdf lib that 
spent a lot of times with an climate model on a SX4 machine, he suggests to add 
in the ncx.m4 file this :


#if _SX && _FLOAT0
int
ncx_putn_float_double(void **xpp, size_t nelems, const double *tp)
{
         float *xp = (float *) *xpp;
         int i , errc=0 ;
 
         for(i=0 ; i < (int) nelems ; i++ ) 
         if ( tp[i] > X_FLOAT_MAX || tp[i] < X_FLOAT_MIN) errc++;
 
         if (errc > 0) return NC_ERANGE;
 
#pragma vdir nodep
         for(i=0 ; i < (int) nelems ; i++ ) xp[i] =  (float) tp[i];
 
         return ENOERR;
}
#else
NCX_PUTN(float, double)
#endif

the proposed optimization consists in implementing a simple range checking and 
data copy loops with on the fly data conversion 64 bit -> 32 bit, instead of 
going through myriads of subroutines for each individual data item. The idea 
seems attractive, but netcdf is a very complex package and I'm not sure this 
proposition is really safe? Maybe you could be interest to give the idea that 
could be good for users of netcdf. On my side, I'm a little worried because the 
part of the changed code is vectorized, but new failure messages appear during 
nc_test

With the initial code, we obtained :

./nc_test
*** Testing nc_strerror ... ok
*** Testing nc_open ... ok
*** Testing nc_close ... ok
*** Testing nc_inq ... ok
*** Testing nc_inq_dimid ... ok
*** Testing nc_inq_dim ... ok
*** Testing nc_inq_dimlen ... ok
*** Testing nc_inq_dimname ... ok
*** Testing nc_inq_varid ... ok
*** Testing nc_inq_var ... ok
*** Testing nc_inq_natts ... ok
*** Testing nc_inq_ndims ... ok
*** Testing nc_inq_nvars ... ok
*** Testing nc_inq_unlimdim ... ok
*** Testing nc_inq_vardimid ... ok
*** Testing nc_inq_varname ... ok
*** Testing nc_inq_varnatts ... ok
*** Testing nc_inq_varndims ... ok
*** Testing nc_inq_vartype ... ok
*** Testing nc_get_var_text ...  179 good comparisons. ok
*** Testing nc_get_var_uchar ...  264 good comparisons. ok
*** Testing nc_get_var_schar ...  269 good comparisons. ok
*** Testing nc_get_var_short ...  682 good comparisons. ok
*** Testing nc_get_var_int ...  1189 good comparisons. ok
*** Testing nc_get_var_long ...  1189 good comparisons. ok
*** Testing nc_get_var_float ...  1194 good comparisons. ok
*** Testing nc_get_var_double ...  1207 good comparisons. ok
*** Testing nc_get_var1_text ...  179 good comparisons. ok
*** Testing nc_get_var1_uchar ...  264 good comparisons. ok
*** Testing nc_get_var1_schar ...  269 good comparisons. ok
*** Testing nc_get_var1_short ...  682 good comparisons. ok
*** Testing nc_get_var1_int ...  1189 good comparisons. ok
*** Testing nc_get_var1_long ...  1189 good comparisons. ok
*** Testing nc_get_var1_float ...  1194 good comparisons. ok
*** Testing nc_get_var1_double ...  1207 good comparisons. ok
*** Testing nc_get_vara_text ...  179 good comparisons. ok
*** Testing nc_get_vara_uchar ...  264 good comparisons. ok
*** Testing nc_get_vara_schar ...  269 good comparisons. ok
*** Testing nc_get_vara_short ...  682 good comparisons. ok
*** Testing nc_get_vara_int ...  1189 good comparisons. ok
*** Testing nc_get_vara_long ...  1189 good comparisons. ok
*** Testing nc_get_vara_float ...  1194 good comparisons. ok
*** Testing nc_get_vara_double ...  1207 good comparisons. ok
*** Testing nc_get_vars_text ...  179 good comparisons. ok
*** Testing nc_get_vars_uchar ...  264 good comparisons. ok
*** Testing nc_get_vars_schar ...  269 good comparisons. ok
*** Testing nc_get_vars_short ...  682 good comparisons. ok
*** Testing nc_get_vars_int ...  1189 good comparisons. ok
*** Testing nc_get_vars_long ...  1189 good comparisons. ok
*** Testing nc_get_vars_float ...  1194 good comparisons. ok
*** Testing nc_get_vars_double ...  1207 good comparisons. ok
*** Testing nc_get_varm_text ...  179 good comparisons. ok
*** Testing nc_get_varm_uchar ...  264 good comparisons. ok
*** Testing nc_get_varm_schar ...  269 good comparisons. ok
*** Testing nc_get_varm_short ...  682 good comparisons. ok
*** Testing nc_get_varm_int ...  1189 good comparisons. ok
*** Testing nc_get_varm_long ...  1189 good comparisons. ok
*** Testing nc_get_varm_float ...  1194 good comparisons. ok
*** Testing nc_get_varm_double ...  1207 good comparisons. ok
*** Testing nc_get_att_text ...  7 good comparisons. ok
*** Testing nc_get_att_uchar ...  5 good comparisons. ok
*** Testing nc_get_att_schar ...  7 good comparisons. ok
*** Testing nc_get_att_short ...  15 good comparisons. ok
*** Testing nc_get_att_int ...  19 good comparisons. ok
*** Testing nc_get_att_long ...  19 good comparisons. ok
*** Testing nc_get_att_float ...  21 good comparisons. ok
*** Testing nc_get_att_double ...  27 good comparisons. ok
*** Testing nc_inq_att ... ok
*** Testing nc_inq_attname ... ok
*** Testing nc_inq_attid ... ok
*** Testing nc_inq_attlen ... ok
*** Testing nc_inq_atttype ... ok
*** Testing nc_create ... ok
*** Testing nc_redef ...  1386 good comparisons.  34 good comparisons. ok
*** Testing nc_sync ...  34 good comparisons.  1386 good comparisons. ok
*** Testing nc_abort ...  1386 good comparisons.  34 good comparisons. ok
*** Testing nc_def_dim ... ok
*** Testing nc_rename_dim ... ok
*** Testing nc_def_var ... ok
*** Testing nc_put_var_text ...  179 good comparisons. ok
*** Testing nc_put_var_uchar ...  264 good comparisons. ok
*** Testing nc_put_var_schar ...  269 good comparisons. ok
*** Testing nc_put_var_short ...  682 good comparisons. ok
*** Testing nc_put_var_int ...  1189 good comparisons. ok
*** Testing nc_put_var_long ...  1189 good comparisons. ok
*** Testing nc_put_var_float ...  1194 good comparisons. ok
*** Testing nc_put_var_double ...  1207 good comparisons. ok
*** Testing nc_put_var1_text ...  179 good comparisons. ok
*** Testing nc_put_var1_uchar ...  264 good comparisons. ok
*** Testing nc_put_var1_schar ...  269 good comparisons. ok
*** Testing nc_put_var1_short ...  682 good comparisons. ok
*** Testing nc_put_var1_int ...  1189 good comparisons. ok
*** Testing nc_put_var1_long ...  1189 good comparisons. ok
*** Testing nc_put_var1_float ...  1194 good comparisons. ok
*** Testing nc_put_var1_double ...  1207 good comparisons. ok
*** Testing nc_put_vara_text ...  179 good comparisons. ok
*** Testing nc_put_vara_uchar ...  264 good comparisons. ok
*** Testing nc_put_vara_schar ...  269 good comparisons. ok
*** Testing nc_put_vara_short ...  682 good comparisons. ok
*** Testing nc_put_vara_int ...  1189 good comparisons. ok
*** Testing nc_put_vara_long ...  1189 good comparisons. ok
*** Testing nc_put_vara_float ...  1194 good comparisons. ok
*** Testing nc_put_vara_double ...  1207 good comparisons. ok
*** Testing nc_put_vars_text ...  179 good comparisons. ok
*** Testing nc_put_vars_uchar ...  264 good comparisons. ok
*** Testing nc_put_vars_schar ...  269 good comparisons. ok
*** Testing nc_put_vars_short ...  682 good comparisons. ok
*** Testing nc_put_vars_int ...  1189 good comparisons. ok
*** Testing nc_put_vars_long ...  1189 good comparisons. ok
*** Testing nc_put_vars_float ...  1194 good comparisons. ok
*** Testing nc_put_vars_double ...  1207 good comparisons. ok
*** Testing nc_put_varm_text ...  179 good comparisons. ok
*** Testing nc_put_varm_uchar ...  264 good comparisons. ok
*** Testing nc_put_varm_schar ...  269 good comparisons. ok
*** Testing nc_put_varm_short ...  682 good comparisons. ok
*** Testing nc_put_varm_int ...  1189 good comparisons. ok
*** Testing nc_put_varm_long ...  1189 good comparisons. ok
*** Testing nc_put_varm_float ...  1194 good comparisons. ok
*** Testing nc_put_varm_double ...  1207 good comparisons. ok
*** Testing nc_rename_var ...  1386 good comparisons. ok
*** Testing nc_put_att_text ...  7 good comparisons. ok
*** Testing nc_put_att_uchar ...  5 good comparisons. ok
*** Testing nc_put_att_schar ...  7 good comparisons. ok
*** Testing nc_put_att_short ...  15 good comparisons. ok
*** Testing nc_put_att_int ...  19 good comparisons. ok
*** Testing nc_put_att_long ...  19 good comparisons. ok
*** Testing nc_put_att_float ...  21 good comparisons. ok
*** Testing nc_put_att_double ...  27 good comparisons. ok
*** Testing nc_copy_att ...  34 good comparisons. ok
*** Testing nc_rename_att ...  34 good comparisons. ok
*** Testing nc_del_att ... ok
*** Testing nc_set_fill ...  2796 good comparisons. ok

Total number of failures: 0
*** Success ***

When running with the modified code we obtained the following set
of messages for the same test 

./nc_test
*** Testing nc_strerror ... ok
*** Testing nc_open ... ok
*** Testing nc_close ... ok
*** Testing nc_inq ... ok
*** Testing nc_inq_dimid ... ok
*** Testing nc_inq_dim ... ok
*** Testing nc_inq_dimlen ... ok
*** Testing nc_inq_dimname ... ok
*** Testing nc_inq_varid ... ok
*** Testing nc_inq_var ... ok
*** Testing nc_inq_natts ... ok
*** Testing nc_inq_ndims ... ok
*** Testing nc_inq_nvars ... ok
*** Testing nc_inq_unlimdim ... ok
*** Testing nc_inq_vardimid ... ok
*** Testing nc_inq_varname ... ok
*** Testing nc_inq_varnatts ... ok
*** Testing nc_inq_varndims ... ok
*** Testing nc_inq_vartype ... ok
*** Testing nc_get_var_text ...  179 good comparisons. ok
*** Testing nc_get_var_uchar ...  264 good comparisons. ok
*** Testing nc_get_var_schar ...  269 good comparisons. ok
*** Testing nc_get_var_short ...  682 good comparisons. ok
*** Testing nc_get_var_int ...  1189 good comparisons. ok
*** Testing nc_get_var_long ...  1189 good comparisons. ok
*** Testing nc_get_var_float ... 
        FAILURE at line 1243 of test_get.c: value read not that expected
        FAILURE at line 1243 of test_get.c: value read not that expected
        FAILURE at line 1243 of test_get.c: value read not that expected
        FAILURE at line 1243 of test_get.c: value read not that expected
 1190 good comparisons. 
        ### 4 FAILURES TESTING nc_get_var_float! ###
*** Testing nc_get_var_double ... 
        FAILURE at line 1333 of test_get.c: value read not that expected
        FAILURE at line 1333 of test_get.c: value read not that expected
        FAILURE at line 1333 of test_get.c: value read not that expected
        FAILURE at line 1333 of test_get.c: value read not that expected
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_get_var_double! ###
*** Testing nc_get_var1_text ...  179 good comparisons. ok
*** Testing nc_get_var1_uchar ...  264 good comparisons. ok
*** Testing nc_get_var1_schar ...  269 good comparisons. ok
*** Testing nc_get_var1_short ...  682 good comparisons. ok
*** Testing nc_get_var1_int ...  1189 good comparisons. ok
*** Testing nc_get_var1_long ...  1189 good comparisons. ok
*** Testing nc_get_var1_float ... 
        FAILURE at line 531 of test_get.c: expected: -3.40282E+38, got: 
9.96921E+36
        FAILURE at line 531 of test_get.c: expected: 3.40282E+38, got: 
9.96921E+36
        FAILURE at line 531 of test_get.c: expected: -3.40282E+38, got: 
9.96921E+36
        FAILURE at line 531 of test_get.c: expected: 3.40282E+38, got: 
9.96921E+36
 1190 good comparisons. 
        ### 4 FAILURES TESTING nc_get_var1_float! ###
*** Testing nc_get_var1_double ... 
        FAILURE at line 609 of test_get.c: expected: -3.40282E+38, got: 
9.96921E+36
        FAILURE at line 609 of test_get.c: expected: 3.40282E+38, got: 
9.96921E+36
        FAILURE at line 609 of test_get.c: expected: -3.40282E+38, got: 
9.96921E+36
        FAILURE at line 609 of test_get.c: expected: 3.40282E+38, got: 
9.96921E+36
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_get_var1_double! ###
*** Testing nc_get_vara_text ...  179 good comparisons. ok
*** Testing nc_get_vara_uchar ...  264 good comparisons. ok
*** Testing nc_get_vara_schar ...  269 good comparisons. ok
*** Testing nc_get_vara_short ...  682 good comparisons. ok
*** Testing nc_get_vara_int ...  1189 good comparisons. ok
*** Testing nc_get_vara_long ...  1189 good comparisons. ok
*** Testing nc_get_vara_float ... 
        FAILURE at line 2490 of test_get.c: value read not that expected
        FAILURE at line 2490 of test_get.c: value read not that expected
        FAILURE at line 2490 of test_get.c: value read not that expected
        FAILURE at line 2490 of test_get.c: value read not that expected
 1190 good comparisons. 
        ### 4 FAILURES TESTING nc_get_vara_float! ###
*** Testing nc_get_vara_double ... 
        FAILURE at line 2655 of test_get.c: value read not that expected
        FAILURE at line 2655 of test_get.c: value read not that expected
        FAILURE at line 2655 of test_get.c: value read not that expected
        FAILURE at line 2655 of test_get.c: value read not that expected
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_get_vara_double! ###
*** Testing nc_get_vars_text ...  179 good comparisons. ok
*** Testing nc_get_vars_uchar ...  264 good comparisons. ok
*** Testing nc_get_vars_schar ...  269 good comparisons. ok
*** Testing nc_get_vars_short ...  682 good comparisons. ok
*** Testing nc_get_vars_int ...  1189 good comparisons. ok
*** Testing nc_get_vars_long ...  1189 good comparisons. ok
*** Testing nc_get_vars_float ... 
        FAILURE at line 3881 of test_get.c: value read not that expected
        FAILURE at line 3881 of test_get.c: value read not that expected
        FAILURE at line 3881 of test_get.c: value read not that expected
        FAILURE at line 3881 of test_get.c: value read not that expected
 1190 good comparisons. 
        ### 4 FAILURES TESTING nc_get_vars_float! ###
*** Testing nc_get_vars_double ... 
        FAILURE at line 4056 of test_get.c: value read not that expected
        FAILURE at line 4056 of test_get.c: value read not that expected
        FAILURE at line 4056 of test_get.c: value read not that expected
        FAILURE at line 4056 of test_get.c: value read not that expected
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_get_vars_double! ###
*** Testing nc_get_varm_text ...  179 good comparisons. ok
*** Testing nc_get_varm_uchar ...  264 good comparisons. ok
*** Testing nc_get_varm_schar ...  269 good comparisons. ok
*** Testing nc_get_varm_short ...  682 good comparisons. ok
*** Testing nc_get_varm_int ...  1189 good comparisons. ok
*** Testing nc_get_varm_long ...  1189 good comparisons. ok
*** Testing nc_get_varm_float ... 
        FAILURE at line 5341 of test_get.c: value read not that expected
        FAILURE at line 5341 of test_get.c: value read not that expected
        FAILURE at line 5341 of test_get.c: value read not that expected
        FAILURE at line 5341 of test_get.c: value read not that expected
 1190 good comparisons. 
        ### 4 FAILURES TESTING nc_get_varm_float! ###
*** Testing nc_get_varm_double ... 
        FAILURE at line 5524 of test_get.c: value read not that expected
        FAILURE at line 5524 of test_get.c: value read not that expected
        FAILURE at line 5524 of test_get.c: value read not that expected
        FAILURE at line 5524 of test_get.c: value read not that expected
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_get_varm_double! ###
*** Testing nc_get_att_text ...  7 good comparisons. ok
*** Testing nc_get_att_uchar ...  5 good comparisons. ok
*** Testing nc_get_att_schar ...  7 good comparisons. ok
*** Testing nc_get_att_short ... 
        FAILURE at line 5875 of test_get.c: value read not that expected
 14 good comparisons. 
        ### 1 FAILURES TESTING nc_get_att_short! ###
*** Testing nc_get_att_int ... 
        FAILURE at line 5962 of test_get.c: value read not that expected
 18 good comparisons. 
        ### 1 FAILURES TESTING nc_get_att_int! ###
*** Testing nc_get_att_long ... 
        FAILURE at line 6049 of test_get.c: value read not that expected
 18 good comparisons. 
        ### 1 FAILURES TESTING nc_get_att_long! ###
*** Testing nc_get_att_float ... 
        FAILURE at line 6136 of test_get.c: value read not that expected
        FAILURE at line 6136 of test_get.c: value read not that expected
        FAILURE at line 6136 of test_get.c: value read not that expected
        FAILURE at line 6136 of test_get.c: value read not that expected
        FAILURE at line 6136 of test_get.c: value read not that expected
 16 good comparisons. 
        ### 5 FAILURES TESTING nc_get_att_float! ###
*** Testing nc_get_att_double ... 
        FAILURE at line 6223 of test_get.c: value read not that expected
        FAILURE at line 6223 of test_get.c: value read not that expected
        FAILURE at line 6223 of test_get.c: value read not that expected
        FAILURE at line 6223 of test_get.c: value read not that expected
        FAILURE at line 6223 of test_get.c: value read not that expected
 22 good comparisons. 
        ### 5 FAILURES TESTING nc_get_att_double! ###
*** Testing nc_inq_att ... ok
*** Testing nc_inq_attname ... ok
*** Testing nc_inq_attid ... ok
*** Testing nc_inq_attlen ... ok
*** Testing nc_inq_atttype ... ok
*** Testing nc_create ... ok
*** Testing nc_redef ... 
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
 1382 good comparisons. 
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
 29 good comparisons. 
        ### 9 FAILURES TESTING nc_redef! ###
*** Testing nc_sync ... 
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
 29 good comparisons. 
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0][1]
 1382 good comparisons. 
        ### 9 FAILURES TESTING nc_sync! ###
*** Testing nc_abort ... 
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
 1382 good comparisons. 
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
 29 good comparisons. 
        ### 9 FAILURES TESTING nc_abort! ###
*** Testing nc_def_dim ... ok
*** Testing nc_rename_dim ... ok
*** Testing nc_def_var ... ok
*** Testing nc_put_var_text ...  179 good comparisons. ok
*** Testing nc_put_var_uchar ...  264 good comparisons. ok
*** Testing nc_put_var_schar ...  269 good comparisons. ok
*** Testing nc_put_var_short ...  682 good comparisons. ok
*** Testing nc_put_var_int ...  1189 good comparisons. ok
*** Testing nc_put_var_long ...  1189 good comparisons. ok
*** Testing nc_put_var_float ...  1194 good comparisons. ok
*** Testing nc_put_var_double ... 
        FAILURE at line 780 of test_put.c: Var value read not that expected
        FAILURE at line 780 of test_put.c: Var value read not that expected
        FAILURE at line 780 of test_put.c: Var value read not that expected
        FAILURE at line 780 of test_put.c: Var value read not that expected
 1203 good comparisons. 
        ### 4 FAILURES TESTING nc_put_var_double! ###
*** Testing nc_put_var1_text ...  179 good comparisons. ok
*** Testing nc_put_var1_uchar ...  264 good comparisons. ok
*** Testing nc_put_var1_schar ...  269 good comparisons. ok
*** Testing nc_put_var1_short ...  682 good comparisons. ok
*** Testing nc_put_var1_int ...  1189 good comparisons. ok
*** Testing nc_put_var1_long ...  1189 good comparisons. ok
*** Testing nc_put_var1_float ...  1194 good comparisons. ok
*** Testing nc_put_var1_double ...  1207 good comparisons. ok
*** Testing nc_put_vara_text ...  179 good comparisons. ok
*** Testing nc_put_vara_uchar ...  264 good comparisons. ok
*** Testing nc_put_vara_schar ...  269 good comparisons. ok
*** Testing nc_put_vara_short ...  682 good comparisons. ok
*** Testing nc_put_vara_int ...  1189 good comparisons. ok
*** Testing nc_put_vara_long ...  1189 good comparisons. ok
*** Testing nc_put_vara_float ...  1194 good comparisons. ok
*** Testing nc_put_vara_double ...  1207 good comparisons. ok
*** Testing nc_put_vars_text ...  179 good comparisons. ok
*** Testing nc_put_vars_uchar ...  264 good comparisons. ok
*** Testing nc_put_vars_schar ...  269 good comparisons. ok
*** Testing nc_put_vars_short ...  682 good comparisons. ok
*** Testing nc_put_vars_int ...  1189 good comparisons. ok
*** Testing nc_put_vars_long ...  1189 good comparisons. ok
*** Testing nc_put_vars_float ...  1194 good comparisons. ok
*** Testing nc_put_vars_double ...  1207 good comparisons. ok
*** Testing nc_put_varm_text ...  179 good comparisons. ok
*** Testing nc_put_varm_uchar ...  264 good comparisons. ok
*** Testing nc_put_varm_schar ...  269 good comparisons. ok
*** Testing nc_put_varm_short ...  682 good comparisons. ok
*** Testing nc_put_varm_int ...  1189 good comparisons. ok
*** Testing nc_put_varm_long ...  1189 good comparisons. ok
*** Testing nc_put_varm_float ...  1194 good comparisons. ok
*** Testing nc_put_varm_double ... 
        FAILURE at line 780 of test_put.c: Var value read not that expected
 1206 good comparisons. 
        ### 1 FAILURES TESTING nc_put_varm_double! ###
*** Testing nc_rename_var ... 
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f3 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected -3.4028235e+38 [0]
        FAILURE at line 755 of util.c: Var f4 value read  9.96921e+36 not that 
expected  3.4028235e+38 [1]
 1382 good comparisons. 
        ### 4 FAILURES TESTING nc_rename_var! ###
*** Testing nc_put_att_text ...  7 good comparisons. ok
*** Testing nc_put_att_uchar ...  5 good comparisons. ok
*** Testing nc_put_att_schar ...  7 good comparisons. ok
*** Testing nc_put_att_short ...  15 good comparisons. ok
*** Testing nc_put_att_int ...  19 good comparisons. ok
*** Testing nc_put_att_long ...  19 good comparisons. ok
*** Testing nc_put_att_float ...  21 good comparisons. ok
*** Testing nc_put_att_double ... 
        FAILURE at line 1380 of test_put.c: att. value read not that expected
        FAILURE at line 1380 of test_put.c: att. value read not that expected
        FAILURE at line 1380 of test_put.c: att. value read not that expected
        FAILURE at line 1380 of test_put.c: att. value read not that expected
        FAILURE at line 1380 of test_put.c: att. value read not that expected
 22 good comparisons. 
        ### 5 FAILURES TESTING nc_put_att_double! ###
*** Testing nc_copy_att ... 
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
        FAILURE at line 825 of util.c: Att value read not that expected
 29 good comparisons. 
        ### 5 FAILURES TESTING nc_copy_att! ###
*** Testing nc_rename_att ... 
        FAILURE at line 1572 of test_write.c: nc_get_att_double: unexpected 
value
        FAILURE at line 1572 of test_write.c: nc_get_att_double: unexpected 
value
        FAILURE at line 1572 of test_write.c: nc_get_att_double: unexpected 
value
        FAILURE at line 1572 of test_write.c: nc_get_att_double: unexpected 
value
        FAILURE at line 1572 of test_write.c: nc_get_att_double: unexpected 
value
 29 good comparisons. 
        ### 5 FAILURES TESTING nc_rename_att! ###
*** Testing nc_del_att ... ok
*** Testing nc_set_fill ...  2796 good comparisons. ok

Total number of failures: 104
gmake: *** [test] Error 1



The messages are the same if we comment the #pragma! 

Maybe, can you say to me your feeling about these messages ? 


In advance I thank you very much for taking care of my e-mail.

Thanks and best Regards


Marc Guyon




                       _\|//-
                       ( 0-0 )
+-------------------o00--(_)--00o-----------------------------+
|                                                             |
|                   Marc Guyon   IDRIS                        |
+------------------------------+------------------------------+
| Institut du Developpement &  | Batiment 506                 |
| des Ressources en            | BP 167                       |
| Informatique Scientifique    | F 91403 Orsay Cedex          |
| Equipe Support Utilisateurs  | France                       |
+------------------------------+------------------------------+
| Phone:  + 33 1 69 35 85 68     Fax: + 33 1 69 85 37 75      |
|                                                             |
|                    mailto:address@hidden                    |
|                                                             |
|                   .oooO                                     |
|                   (   )   Oooo.                             |
+--------------------\ (----(   )-----------------------------+
                      \_)    ) /
                            (_/




------- End of Forwarded Message