bug-gmp
[Top][All Lists]
Advanced

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

tuneup: speed_measure() could not get 4 results within 0.5%


From: Vincent Lefevre
Subject: tuneup: speed_measure() could not get 4 results within 0.5%
Date: Mon, 12 Sep 2005 10:32:51 +0200
User-agent: Mutt/1.5.10-vl-20050911

I wanted to do a "make tune" just for testing...

dixsept:...re/gmp-4.1.4/tune> make tune
make  tuneup
make[1]: Entering directory `/home/vlefevre/software/gmp-4.1.4/tune'
make[1]: `tuneup' is up to date.
make[1]: Leaving directory `/home/vlefevre/software/gmp-4.1.4/tune'
./tuneup
Parameters for ./mpn/x86/pentium4/sse2/gmp-mparam.h
Using: CPU cycle counter, supplemented by microsecond getrusage()
speed_precision 10000, speed_unittime 3.34e-10 secs, CPU freq 2993.35 MHz
DEFAULT_MAX_SIZE 1000, fft_max_size 50000

/* Generated by tuneup.c, 2005-09-12, gcc 4.0 */

#define MUL_KARATSUBA_THRESHOLD          19
#define MUL_TOOM3_THRESHOLD             282

#define SQR_BASECASE_THRESHOLD            0  /* always */
#define SQR_KARATSUBA_THRESHOLD          90
#define SQR_TOOM3_THRESHOLD             270

#define DIV_SB_PREINV_THRESHOLD           4
#define DIV_DC_THRESHOLD                 60
#define POWM_THRESHOLD                  107

#define GCD_ACCEL_THRESHOLD               8
#define GCDEXT_THRESHOLD              speed_measure() could not get 4 results 
within 0.5%
    unsorted         sorted
  0.000003032139    0.000002195144    is about 0.5%
  0.000606428       0.000439029
  0.000586942       0.000440194
  0.000634838       0.000441549
  0.000592968       0.000453323
  0.000623373       0.000455293
  0.000716978       0.000514576
  0.002137511       0.000570783
  0.000632009       0.000574113
  0.000574113       0.000575128
  0.000629115       0.000579813
  0.000575128       0.000585368
  0.000620800       0.000585922
  0.000585368       0.000586942
  0.000607740       0.000590334
  0.000514576       0.000592968
  0.000441549       0.000594171
  0.000453323       0.000599259
  0.000440194       0.000599420
  0.000455293       0.000606428
  0.000439029       0.000607740
  0.000585922       0.000620800
  0.000643698       0.000623373
  0.002192796       0.000627091
  0.000627091       0.000629115
  0.000599259       0.000632009
  0.000590334       0.000634838
  0.000570783       0.000643698
  0.000594171       0.000716978
  0.000579813       0.002137511
  0.000599420       0.002192796
make: *** [tune] Aborted (core dumped)

This is always reproducible. The cause is that I filter the output of
make:

make () {
        command make -j2 "$@" 2>& 1 | eet -f make -m bold
}

But I don't see why it has such an influence. I have no problem when
I execute tuneup manually or remove the above filter:

dixsept:...re/gmp-4.1.4/tune> ./tuneup
Parameters for ./mpn/x86/pentium4/sse2/gmp-mparam.h
Using: CPU cycle counter, supplemented by microsecond getrusage()
speed_precision 10000, speed_unittime 3.34e-10 secs, CPU freq 2993.35 MHz
DEFAULT_MAX_SIZE 1000, fft_max_size 50000

/* Generated by tuneup.c, 2005-09-12, gcc 4.0 */

#define MUL_KARATSUBA_THRESHOLD          18
#define MUL_TOOM3_THRESHOLD             276

#define SQR_BASECASE_THRESHOLD            0  /* always */
#define SQR_KARATSUBA_THRESHOLD          86
#define SQR_TOOM3_THRESHOLD             256

#define DIV_SB_PREINV_THRESHOLD           0  /* always */
#define DIV_DC_THRESHOLD                 57
#define POWM_THRESHOLD                   97

#define GCD_ACCEL_THRESHOLD               8
#define GCDEXT_THRESHOLD                 17
#define JACOBI_BASE_METHOD                1

#define USE_PREINV_DIVREM_1               1
#define USE_PREINV_MOD_1                  1
#define DIVREM_2_THRESHOLD                5
#define DIVEXACT_1_THRESHOLD              0  /* always */
#define MODEXACT_1_ODD_THRESHOLD         29

#define GET_STR_DC_THRESHOLD             24
#define GET_STR_PRECOMPUTE_THRESHOLD     25
#define SET_STR_THRESHOLD              2205

#define MUL_FFT_TABLE  { 784, 1824, 3456, 8704, 18432, 57344, 0 }
#define MUL_FFT_MODF_THRESHOLD          712
#define MUL_FFT_THRESHOLD              6912

#define SQR_FFT_TABLE  { 784, 1824, 3456, 8704, 26624, 57344, 0 }
#define SQR_FFT_MODF_THRESHOLD          800
#define SQR_FFT_THRESHOLD              5888

/* Tuneup completed successfully, took 10 seconds */

GMP was configured with:

  ./configure --enable-assert --enable-alloca=debug

The machine: Linux/x86 (Debian unstable), Intel(R) Pentium(R) 4 CPU 3.00GHz.

-- 
Vincent Lefèvre <address@hidden> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / SPACES project at LORIA




reply via email to

[Prev in Thread] Current Thread [Next in Thread]