Also, if we are going to stick with mpn/x86_64/atom/sqr_basecase.asm on
atom, I need the output of make tune before this has been removed.

Bill.


On 18 February 2014 12:12, Bill Hart <goodwillh...@googlemail.com> wrote:

> Hi JP,
>
> thanks. Did you notice that the make tuneup caused an error. Did you mean
> to do make speed?
>
> It's not at all clear to me which is the better assembly source. We only
> care about the speed of the basecase up to the crossover with karatsuba,
> which seems to be very low, maybe 14 (assuming that make error didn't
> affect things).
>
> From 1-13 limbs 10 of the 13 values are lower with Jason's code. So I
> think we should stick with it on the atom.
>
> But I'll wait for you to confirm that the make error didn't actually stop
> speed being rebuilt.
>
> Bill.
>
>
> On 18 February 2014 10:24, Jean-Pierre Flori <jpfl...@gmail.com> wrote:
>
>> Here are proper timings for both sqr_squarebase and kara_sqr_n on atom in
>> 64bit mode.
>> It seems the generic assembly is slightly faster.
>> For some reason the tuning utility build failed, I'll have a look tonight.
>>
>>
>> # with mpn/x86_64/atom/mpn_sqr_basecase
>>
>> overhead 0.000000005 secs, precision 1000000 units of 6.00e-10 secs, CPU
>> freq 1667.00 MHz
>>         mpn_sqr_basecase
>> 1         0.000000016
>> 2         0.000000043
>> 3         0.000000104
>> 4         0.000000176
>> 5         0.000000249
>> 6         0.000000334
>> 7         0.000000432
>> 8         0.000000544
>> 9         0.000000670
>> 10        0.000000808
>>
>> 11        0.000000959
>> 12        0.000001124
>> 13        0.000001303
>> 14        0.000001502
>> 15        0.000001706
>> 16        0.000001924
>> 17        0.000002155
>> 18        0.000002415
>>
>> 19        0.000002655
>> 20        0.000002926
>> 21        0.000003210
>> 22        0.000003506
>> 23        0.000003815
>> 24        0.000004157
>>
>> 25        0.000004486
>> 26        0.000004834
>> 27        0.000005197
>> 28        0.000005582
>> 29        0.000005963
>> 30        0.000006364
>> 31        0.000006780
>> 32        0.000007218
>> 33        0.000007680
>> 34        0.000008165
>> 35        0.000008641
>> 36        0.000009172
>> 37        0.000009654
>> 38        0.000010184
>> 39        0.000010713
>> 40        0.000011271
>> 41        0.000011829
>> 42        0.000012377
>> 43        0.000012970
>> 44        0.000013585
>> 45        0.000014193
>> 46        0.000014788
>> 47        0.000015423
>> 48        0.000016112
>> 49        0.000016762
>> 50        0.000017411
>> 51        0.000018119
>> 52        0.000018861
>> 53        0.000019578
>> 54        0.000020279
>> 55        0.000021021
>> 56        0.000021816
>> 57        0.000022594
>> 58        0.000023349
>> 59        0.000024162
>> 60        0.000024999
>> 61        0.000025832
>> 62        0.000026648
>> 63        0.000027486
>> 64        0.000028397
>> 65        0.000029334
>> 66        0.000030221
>> 67        0.000031158
>> 68        0.000032094
>> 69        0.000033024
>> 70        0.000033927
>> 71        0.000034871
>> 72        0.000035875
>> 73        0.000036867
>> 74        0.000037832
>> 75        0.000038838
>> 76        0.000039895
>> 77        0.000040944
>> 78        0.000041958
>> 79        0.000043020
>> 80        0.000044112
>> 81        0.000045487
>> 82        0.000046551
>> 83        0.000047637
>> 84        0.000048805
>> 85        0.000049928
>> 86        0.000051082
>> 87        0.000052226
>> 88        0.000053445
>> 89        0.000054623
>> 90        0.000055803
>> 91        0.000056999
>> 92        0.000058272
>> 93        0.000059503
>> 94        0.000060762
>> 95        0.000062011
>> 96        0.000063335
>> 97        0.000069153
>> 98        0.000065906
>> 99        0.000067208
>> 100       0.000068585
>>
>> overhead 0.000000005 secs, precision 1000000 units of 6.00e-10 secs, CPU
>> freq 1667.00 MHz
>>         mpn_kara_sqr_n
>> 1                 n/a
>> 2                 n/a
>> 3                 n/a
>> 4                 n/a
>> 5                 n/a
>> 6                 n/a
>> 7                 n/a
>> 8         0.000000638
>> 9         0.000000797
>> 10        0.000000875
>> 11        0.000001057
>> 12        0.000001139
>> 13        0.000001349
>> 14        0.000001444
>> 15        0.000001691
>> 16        0.000001795
>> 17        0.000002069
>> 18        0.000002185
>> 19        0.000002482
>> 20        0.000002608
>> 21        0.000002933
>> 22        0.000003071
>> 23        0.000003424
>> 24        0.000003576
>> 25        0.000003956
>> 26        0.000004129
>> 27        0.000004556
>> 28        0.000004739
>> 29        0.000005170
>> 30        0.000005368
>> 31        0.000005809
>> 32        0.000006024
>> 33        0.000006499
>> 34        0.000006735
>> 35        0.000007253
>> 36        0.000007504
>> 37        0.000007531
>> 38        0.000007734
>> 39        0.000008046
>> 40        0.000008152
>> 41        0.000008886
>> 42        0.000009114
>> 43        0.000009428
>> 44        0.000009562
>> 45        0.000010374
>> 46        0.000010622
>> 47        0.000010947
>> 48        0.000011071
>> 49        0.000011944
>> 50        0.000012230
>> 51        0.000012603
>> 52        0.000012782
>> 53        0.000013684
>> 54        0.000014049
>> 55        0.000014461
>> 56        0.000014620
>> 57        0.000015542
>> 58        0.000015954
>> 59        0.000016354
>> 60        0.000016542
>> 61        0.000017496
>> 62        0.000017854
>> 63        0.000018321
>> 64        0.000018526
>> 65        0.000019526
>> 66        0.000019964
>> 67        0.000020452
>> 68        0.000020684
>> 69        0.000021760
>> 70        0.000022234
>> 71        0.000022777
>> 72        0.000023000
>> 73        0.000023233
>> 74        0.000023192
>> 75        0.000023532
>> 76        0.000023743
>> 77        0.000024519
>> 78        0.000024677
>> 79        0.000024947
>> 80        0.000025113
>> 81        0.000026618
>> 82        0.000027324
>> 83        0.000027783
>> 84        0.000028011
>> 85        0.000028706
>> 86        0.000028869
>> 87        0.000029194
>> 88        0.000029295
>> 89        0.000031048
>> 90        0.000031847
>> 91        0.000032358
>> 92        0.000032591
>> 93        0.000033331
>> 94        0.000033540
>> 95        0.000033855
>> 96        0.000034065
>> 97        0.000035837
>> 98        0.000036601
>> 99        0.000037108
>> 100       0.000037399
>> make  tuneup
>> make[1]: entrant dans le répertoire « /home/choupi/mpir/tune »
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mul.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c tdiv_qr.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom4_mul_n.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom4_mul.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom3_mul.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom3_mul_n.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom8h_mul.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c toom8_sqr_n.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mulmod_2expm1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c rootrem.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c divrem_euclidean_r_1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c divrem_hensel_qr_1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c rsh_divrem_hensel_qr_1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_divappr_q.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_div_qr.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_div_qr_n.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c inv_divappr_q.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c inv_div_qr.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c tdiv_q.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_bdiv_qr.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_bdiv_qr_n.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c dc_bdiv_q.c
>> for i in split_bits.c revbin.c normmod_2expp1.c mulmod_2expp1.c
>> mul_trunc_sqrt2.c mul_mfa_trunc_sqrt2.c mul_fft_main.c mul_2expmod_2expp1.c
>> ifft_trunc_sqrt2.c ifft_trunc.c ifft_radix2.c ifft_negacyclic.c fft_trunc.c
>> fft_radix2.c fft_negacylic.c fft_mfa_trunc_sqrt2.c
>> fft_mfa_trunc_sqrt2_inner.c fermat_to_mpz.c div_2expmod_2expp1.c
>> combine_bits.c butterfly_rshB.c butterfly_lshB.c adjust_sqrt2.c adjust.c;
>> do \
>>       echo "#define TUNE_PROGRAM_BUILD 1" >$i; \
>>       echo "#include \"fft/$i\"" >>$i; \
>>     done
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c split_bits.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c revbin.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c normmod_2expp1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mulmod_2expp1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mul_trunc_sqrt2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mul_mfa_trunc_sqrt2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mul_fft_main.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mul_2expmod_2expp1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c ifft_trunc_sqrt2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c ifft_trunc.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c ifft_radix2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c ifft_negacyclic.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fft_trunc.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fft_radix2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fft_negacylic.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fft_mfa_trunc_sqrt2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fft_mfa_trunc_sqrt2_inner.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c fermat_to_mpz.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c div_2expmod_2expp1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c combine_bits.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c butterfly_rshB.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c butterfly_lshB.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c adjust_sqrt2.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c adjust.c
>> echo "#define TUNE_PROGRAM_BUILD 1"                >divrem_1.c
>> echo "#define __gmpn_divrem_1  mpn_divrem_1_tune" >>divrem_1.c
>> echo "#include \"mpn/generic/divrem_1.c\""        >>divrem_1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c divrem_1.c
>> echo "#define TUNE_PROGRAM_BUILD 1"          >mod_1.c
>> echo "#define __gmpn_mod_1  mpn_mod_1_tune" >>mod_1.c
>> echo "#include \"mpn/generic/mod_1.c\""     >>mod_1.c
>> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests    -m64 -O2
>> -march=atom -mtune=atom -c mod_1.c
>> /bin/bash ../libtool --tag=CC   --mode=link gcc -std=gnu99  -m64 -O2
>> -march=atom -mtune=atom -static  -o tuneup tuneup.o sqr_basecase.o
>> divrem_2.o gcd.o gcdext.o get_str.o mul_n.o mullow_n.o mulhigh_n.o mul.o
>> tdiv_qr.o toom4_mul_n.o toom4_mul.o toom3_mul.o toom3_mul_n.o toom8h_mul.o
>> toom8_sqr_n.o mulmod_2expm1.o rootrem.o divrem_euclidean_r_1.o
>> divrem_hensel_qr_1.o rsh_divrem_hensel_qr_1.o dc_divappr_q.o dc_div_qr.o
>> dc_div_qr_n.o inv_divappr_q.o inv_div_qr.o tdiv_q.o dc_bdiv_qr.o
>> dc_bdiv_qr_n.o dc_bdiv_q.o split_bits.o revbin.o normmod_2expp1.o
>> mulmod_2expp1.o mul_trunc_sqrt2.o mul_mfa_trunc_sqrt2.o mul_fft_main.o
>> mul_2expmod_2expp1.o ifft_trunc_sqrt2.o ifft_trunc.o ifft_radix2.o
>> ifft_negacyclic.o fft_trunc.o fft_radix2.o fft_negacylic.o
>> fft_mfa_trunc_sqrt2.o fft_mfa_trunc_sqrt2_inner.o fermat_to_mpz.o
>> div_2expmod_2expp1.o combine_bits.o butterfly_rshB.o butterfly_lshB.o
>> adjust_sqrt2.o adjust.o divrem_1.o mod_1.o  libspeed.la
>> libtool: link: gcc -std=gnu99 -m64 -O2 -march=atom -mtune=atom -o tuneup
>> tuneup.o sqr_basecase.o divrem_2.o gcd.o gcdext.o get_str.o mul_n.o
>> mullow_n.o mulhigh_n.o mul.o tdiv_qr.o toom4_mul_n.o toom4_mul.o
>> toom3_mul.o toom3_mul_n.o toom8h_mul.o toom8_sqr_n.o mulmod_2expm1.o
>> rootrem.o divrem_euclidean_r_1.o divrem_hensel_qr_1.o
>> rsh_divrem_hensel_qr_1.o dc_divappr_q.o dc_div_qr.o dc_div_qr_n.o
>> inv_divappr_q.o inv_div_qr.o tdiv_q.o dc_bdiv_qr.o dc_bdiv_qr_n.o
>> dc_bdiv_q.o split_bits.o revbin.o normmod_2expp1.o mulmod_2expp1.o
>> mul_trunc_sqrt2.o mul_mfa_trunc_sqrt2.o mul_fft_main.o mul_2expmod_2expp1.o
>> ifft_trunc_sqrt2.o ifft_trunc.o ifft_radix2.o ifft_negacyclic.o fft_trunc.o
>> fft_radix2.o fft_negacylic.o fft_mfa_trunc_sqrt2.o
>> fft_mfa_trunc_sqrt2_inner.o fermat_to_mpz.o div_2expmod_2expp1.o
>> combine_bits.o butterfly_rshB.o butterfly_lshB.o adjust_sqrt2.o adjust.o
>> divrem_1.o mod_1.o  ./.libs/libspeed.a /home/choupi/mpir/.libs/libmpir.a -lm
>> tuneup.o: file not recognized: File truncated
>> collect2: ld returned 1 exit status
>> make[1]: *** [tuneup] Erreur 1
>> make[1]: quittant le répertoire « /home/choupi/mpir/tune »
>> make: *** [tune] Erreur 2
>> overhead 0.000000007 secs, precision 1000000 units of 6.00e-10 secs, CPU
>> freq 1667.00 MHz
>>         mpn_sqr_basecase
>> 1         0.000000033
>> 2         0.000000064
>> 3         0.000000112
>> 4         0.000000177
>> 5         0.000000284
>> 6         0.000000393
>> 7         0.000000512
>> 8         0.000000645
>> 9         0.000000782
>> 10        0.000000936
>> 11        0.000000893
>> 12        0.000001045
>> 13        0.000001211
>> 14        0.000001384
>> 15        0.000001574
>> 16        0.000001774
>> 17        0.000002184
>> 18        0.000002492
>> 19        0.000002830
>> 20        0.000003123
>> 21        0.000003278
>> 22        0.000003647
>> 23        0.000003506
>> 24        0.000003808
>> 25        0.000004109
>> 26        0.000004432
>> 27        0.000004772
>> 28        0.000005406
>> 29        0.000005979
>> 30        0.000006342
>> 31        0.000006793
>> 32        0.000007469
>> 33        0.000007715
>> 34        0.000007496
>> 35        0.000007880
>> 36        0.000008317
>> 37        0.000008775
>> 38        0.000009243
>> 39        0.000009716
>> 40        0.000011395
>> 41        0.000012117
>> 42        0.000011332
>> 43        0.000011761
>> 44        0.000012274
>> 45        0.000012836
>> 46        0.000014248
>> 47        0.000015515
>> 48        0.000015599
>> 49        0.000015158
>> 50        0.000015758
>> 51        0.000016389
>> 52        0.000017025
>> 53        0.000017758
>> 54        0.000021210
>> 55        0.000021674
>> 56        0.000020952
>> 57        0.000021985
>> 58        0.000021063
>> 59        0.000021775
>> 60        0.000023977
>> 61        0.000023240
>> 62        0.000023989
>> 63        0.000024749
>> 64        0.000025527
>> 65        0.000026310
>> 66        0.000027106
>> 67        0.000027913
>> 68        0.000028738
>> 69        0.000029568
>> 70        0.000030413
>> 71        0.000031267
>> 72        0.000032139
>> 73        0.000033018
>> 74        0.000033909
>> 75        0.000034812
>> 76        0.000035730
>> 77        0.000036656
>> 78        0.000037595
>> 79        0.000038544
>> 80        0.000039512
>> 81        0.000040674
>> 82        0.000041803
>> 83        0.000042467
>> 84        0.000044026
>> 85        0.000044502
>> 86        0.000045816
>> 87        0.000046580
>> 88        0.000047936
>> 89        0.000048709
>> 90        0.000059347
>> 91        0.000050885
>> 92        0.000052231
>> 93        0.000053105
>> 94        0.000054451
>> 95        0.000055382
>> 96        0.000056924
>> 97        0.000057692
>> 98        0.000059067
>> 99        0.000060058
>> 100       0.000061432
>>
>> overhead 0.000000005 secs, precision 1000000 units of 6.00e-10 secs, CPU
>> freq 1667.00 MHz
>>         mpn_kara_sqr_n
>> 1                 n/a
>> 2                 n/a
>> 3                 n/a
>> 4                 n/a
>> 5                 n/a
>> 6                 n/a
>> 7                 n/a
>> 8         0.000000536
>> 9         0.000000737
>> 10        0.000000809
>> 11        0.000000996
>> 12        0.000001059
>> 13        0.000001277
>> 14        0.000001431
>> 15        0.000001591
>> 16        0.000001676
>> 17        0.000001942
>> 18        0.000002045
>> 19        0.000002329
>> 20        0.000002443
>> 21        0.000002752
>> 22        0.000002872
>> 23        0.000003209
>> 24        0.000003337
>> 25        0.000004098
>> 26        0.000004494
>> 27        0.000004249
>> 28        0.000004392
>> 29        0.000004814
>> 30        0.000004963
>> 31        0.000005427
>> 32        0.000005586
>> 33        0.000006083
>> 34        0.000006244
>> 35        0.000006711
>> 36        0.000006910
>> 37        0.000007005
>> 38        0.000007277
>> 39        0.000007544
>> 40        0.000007649
>> 41        0.000008325
>> 42        0.000008582
>> 43        0.000008840
>> 44        0.000008974
>> 45        0.000009697
>> 46        0.000009985
>> 47        0.000010272
>> 48        0.000010425
>> 49        0.000012963
>> 50        0.000013944
>> 51        0.000011808
>> 52        0.000011950
>> 53        0.000012792
>> 54        0.000013129
>> 55        0.000013432
>> 56        0.000013596
>> 57        0.000014457
>> 58        0.000015562
>> 59        0.000015171
>> 60        0.000015323
>> 61        0.000016425
>> 62        0.000016709
>> 63        0.000017073
>> 64        0.000017223
>> 65        0.000018343
>> 66        0.000018633
>> 67        0.000019042
>> 68        0.000019220
>> 69        0.000020199
>> 70        0.000020616
>> 71        0.000021027
>> 72        0.000021216
>> 73        0.000021522
>> 74        0.000021616
>> 75        0.000022090
>> 76        0.000022361
>> 77        0.000022977
>> 78        0.000023149
>> 79        0.000023473
>> 80        0.000023537
>> 81        0.000024844
>> 82        0.000025452
>> 83        0.000026019
>> 84        0.000026327
>> 85        0.000027028
>> 86        0.000027084
>> 87        0.000027405
>> 88        0.000027466
>> 89        0.000029053
>> 90        0.000029718
>> 91        0.000030339
>> 92        0.000030628
>> 93        0.000031263
>> 94        0.000036677
>> 95        0.000037286
>> 96        0.000037099
>> 97        0.000038554
>> 98        0.000040116
>> 99        0.000034797
>> 100       0.000035127
>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mpir-devel+unsubscr...@googlegroups.com.
To post to this group, send email to mpir-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/mpir-devel.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to