A Tour of NTL: Some Performance Data

#

A Tour of NTL: Some Performance Data

Here are some timing figures from using NTL. They were obtained using NTL 8.1 compiled with `g++` 4.2.1 and with GMP 5.1 on a 2.8GHz Intel Core 2 Duo running on Max OSX 10.6.8.

All times are ins seconds. The times were obtained using the program `Timing` included in the distribution. The data was generated using NTL's random number generator, but running this on a different machine should (in theory) generate the same data.

    multiply 1000-bit ints: 4.47942e-07
    remainder 2000/1000-bit ints: 8.3923e-07
    gcd 1000-bit ints: 1.07981e-05
    multiply degree-1000 poly mod 1000-bit prime: 0.0140632
    remainder degree-2000/1000 poly mod 1000-bit prime: 0.0386337
    preconditioned remainder degree-2000/1000 poly mod 1000-bit prime: 0.0143691
    gcd degree-1000 poly mod 1000-bit prime: 0.338774
    multiply degree-1000 int poly with 1000-bit coeffs: 0.0162582

    factoring degree-1000 poly mod 1000-bit prime...
    square-free decomposition...0.339693
    factoring multiplicity 1, deg = 1000
    computing X^p...22.9192
    computing DDF...generating baby steps...+++++++++++++++++++++16.9463
    generating giant steps...++++++++++++++++++++++17.695
    giant refine...++++split 1 43
    split 2 38
    split 3 64
    *++++split 5 108
    *++++split 11 237
    split 12 510
    *giant refine time: 8.19123
    baby refine...split 3 6
    split 6 6
    split 9 9
    split 22 22
    split 38 38
    split 64 64
    split 108 108
    split 237 237
    split 248 248
    split 262 262
    baby refine time: 0.611474
    DDF time: 43.4528
    computing EDF(3,2)...+0.077447
    ...total time = 66.8182

    multiply 500-bit GF2Xs: 1.03529e-06
    remainder 1000/500-bit GF2Xs: 6.06942e-06
    gcd 500-bit GF2Xs: 1.19302e-05

    factoring degree-500 GF2X: 0.0010868
    gcd 500-bit GF2X: 1.18877e-05
    multiply degree-500 poly mod 500-bit GF2X: 0.024646
    remainder degree-1000/500 poly mod 500-bit GF2X: 0.0884258
    preconditioned remainder degree-1000/500 poly mod 500-bit GF2X: 0.049274
    gcd degree-500 poly mod 500-bit GF2X: 0.555096

    factoring degree-500 poly mod 500-bit GF2X...
    square-free decomposition...0.038657
    factoring multiplicity 1, deg = 250
    computing X^p...4.93964
    computing DDF...generating baby steps...++++++++++3.51054
    generating giant steps...+++++++++++3.78422
    giant refine...++++*++++split 6 59
    split 7 68
    *split 0 123
    giant refine time: 2.59123
    baby refine...split 59 59
    split 68 68
    split 123 123
    baby refine time: 3.4e-05
    DDF time: 9.88619

    ...total time = 14.879