security/nss/lib/freebl/mpi/doc/timing.txt

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/security/nss/lib/freebl/mpi/doc/timing.txt	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,213 @@
     1.4 +MPI Library Timing Tests
     1.5 +
     1.6 +Hardware/OS
     1.7 +(A) SGI O2 1 x MIPS R10000 250MHz IRIX 6.5.3
     1.8 +(B) IBM RS/6000 43P-240 1 x PowerPC 603e 223MHz AIX 4.3
     1.9 +(C) Dell GX1/L+ 1 x Pentium III 550MHz Linux 2.2.12-20
    1.10 +(D) PowerBook G3 1 x PowerPC 750 266MHz LinuxPPC 2.2.6-15apmac
    1.11 +(E) PowerBook G3 1 x PowerPC 750 266MHz MacOS 8.5.1
    1.12 +(F) PowerBook G3 1 x PowerPC 750 400MHz MacOS 9.0.2
    1.13 +
    1.14 +Compiler
    1.15 +(1) MIPSpro C 7.2.1 -O3 optimizations
    1.16 +(2) GCC 2.95.1 -O3 optimizations
    1.17 +(3) IBM AIX xlc -O3 optimizations (version unknown)
    1.18 +(4) EGCS 2.91.66 -O3 optimizations
    1.19 +(5) Metrowerks CodeWarrior 5.0 C, all optimizations
    1.20 +(6) MIPSpro C 7.30 -O3 optimizations
    1.21 +(7) same as (6), with optimized libmalloc.so
    1.22 +
    1.23 +Timings are given in seconds, computed using the C library's clock()
    1.24 +function.  The first column gives the hardware and compiler
    1.25 +configuration used for the test. The second column indicates the
    1.26 +number of tests that were aggregated to get the statistics for that
    1.27 +size.  These were compiled using 16 bit digits.
    1.28 +
    1.29 +Source data were generated randomly using a fixed seed, so they should
    1.30 +be internally consistent, but may vary on different systems depending
    1.31 +on the C library.  Also, since the resolution of the timer accessed by
    1.32 +clock() varies, there may be some variance in the precision of these
    1.33 +measurements.
    1.34 +
    1.35 +Prime Generation (primegen)
    1.36 +
    1.37 +128 bits:
    1.38 +A1      200     min=0.03, avg=0.19, max=0.72, sum=38.46
    1.39 +A2      200     min=0.02, avg=0.16, max=0.62, sum=32.55
    1.40 +B3      200     min=0.01, avg=0.07, max=0.22, sum=13.29
    1.41 +C4      200     min=0.00, avg=0.03, max=0.20, sum=6.14
    1.42 +D4      200     min=0.00, avg=0.05, max=0.33, sum=9.70
    1.43 +A6      200     min=0.01, avg=0.09, max=0.36, sum=17.48
    1.44 +A7      200     min=0.00, avg=0.05, max=0.24, sum=10.07
    1.45 +
    1.46 +192 bits:
    1.47 +A1      200     min=0.05, avg=0.45, max=3.13, sum=89.96
    1.48 +A2      200     min=0.04, avg=0.39, max=2.61, sum=77.55
    1.49 +B3      200     min=0.02, avg=0.18, max=1.25, sum=36.97
    1.50 +C4      200     min=0.01, avg=0.09, max=0.33, sum=18.24
    1.51 +D4      200     min=0.02, avg=0.15, max=0.54, sum=29.63
    1.52 +A6      200     min=0.02, avg=0.24, max=1.70, sum=47.84
    1.53 +A7      200     min=0.01, avg=0.15, max=1.05, sum=30.88
    1.54 +
    1.55 +256 bits:
    1.56 +A1      200     min=0.08, avg=0.92, max=6.13, sum=184.79
    1.57 +A2      200     min=0.06, avg=0.76, max=5.03, sum=151.11
    1.58 +B3      200     min=0.04, avg=0.41, max=2.68, sum=82.35
    1.59 +C4      200     min=0.02, avg=0.19, max=0.69, sum=37.91
    1.60 +D4      200     min=0.03, avg=0.31, max=1.15, sum=63.00
    1.61 +A6      200     min=0.04, avg=0.48, max=3.13, sum=95.46
    1.62 +A7      200     min=0.03, avg=0.37, max=2.36, sum=73.60
    1.63 +
    1.64 +320 bits:
    1.65 +A1      200     min=0.11, avg=1.59, max=6.14, sum=318.81
    1.66 +A2      200     min=0.09, avg=1.27, max=4.93, sum=254.03
    1.67 +B3      200     min=0.07, avg=0.82, max=3.13, sum=163.80
    1.68 +C4      200     min=0.04, avg=0.44, max=1.91, sum=87.59
    1.69 +D4      200     min=0.06, avg=0.73, max=3.22, sum=146.73
    1.70 +A6      200     min=0.07, avg=0.93, max=3.50, sum=185.01
    1.71 +A7      200     min=0.05, avg=0.76, max=2.94, sum=151.78
    1.72 +
    1.73 +384 bits:
    1.74 +A1      200     min=0.16, avg=2.69, max=11.41, sum=537.89
    1.75 +A2      200     min=0.13, avg=2.15, max=9.03, sum=429.14
    1.76 +B3      200     min=0.11, avg=1.54, max=6.49, sum=307.78
    1.77 +C4      200     min=0.06, avg=0.81, max=4.84, sum=161.13
    1.78 +D4      200     min=0.10, avg=1.38, max=8.31, sum=276.81
    1.79 +A6      200     min=0.11, avg=1.73, max=7.36, sum=345.55
    1.80 +A7      200     min=0.09, avg=1.46, max=6.12, sum=292.02
    1.81 +
    1.82 +448 bits:
    1.83 +A1      200     min=0.23, avg=3.36, max=15.92, sum=672.63
    1.84 +A2      200     min=0.17, avg=2.61, max=12.25, sum=522.86
    1.85 +B3      200     min=0.16, avg=2.10, max=9.83, sum=420.86
    1.86 +C4      200     min=0.09, avg=1.44, max=7.64, sum=288.36
    1.87 +D4      200     min=0.16, avg=2.50, max=13.29, sum=500.17
    1.88 +A6      200     min=0.15, avg=2.31, max=10.81, sum=461.58
    1.89 +A7      200     min=0.14, avg=2.03, max=9.53, sum=405.16
    1.90 +
    1.91 +512 bits:
    1.92 +A1      200     min=0.30, avg=6.12, max=22.18, sum=1223.35
    1.93 +A2      200     min=0.25, avg=4.67, max=16.90, sum=933.18
    1.94 +B3      200     min=0.23, avg=4.13, max=14.94, sum=825.45
    1.95 +C4      200     min=0.13, avg=2.08, max=9.75, sum=415.22
    1.96 +D4      200     min=0.24, avg=4.04, max=20.18, sum=808.11
    1.97 +A6      200     min=0.22, avg=4.47, max=16.19, sum=893.83
    1.98 +A7      200     min=0.20, avg=4.03, max=14.65, sum=806.02
    1.99 +
   1.100 +Modular Exponentation (metime)
   1.101 +
   1.102 +The following results are aggregated from 200 pseudo-randomly
   1.103 +generated tests, based on a fixed seed. 
   1.104 +
   1.105 +                      base, exponent, and modulus size (bits)
   1.106 +P/C       128   192   256   320   384   448   512   640   768   896  1024
   1.107 +------- -----------------------------------------------------------------
   1.108 +A1      0.015 0.027 0.047 0.069 0.098 0.133 0.176 0.294 0.458 0.680 1.040
   1.109 +A2      0.013 0.024 0.037 0.053 0.077 0.102 0.133 0.214 0.326 0.476 0.668
   1.110 +B3      0.005 0.011 0.021 0.036 0.056 0.084 0.121 0.222 0.370 0.573 0.840
   1.111 +C4      0.002 0.006 0.011 0.020 0.032 0.048 0.069 0.129 0.223 0.344 0.507
   1.112 +D4      0.004 0.010 0.019 0.034 0.056 0.085 0.123 0.232 0.390 0.609 0.899
   1.113 +E5      0.007 0.015 0.031 0.055 0.088 0.133 0.183 0.342 0.574 0.893 1.317
   1.114 +A6      0.008 0.016 0.038 0.042 0.064 0.093 0.133 0.239 0.393 0.604 0.880
   1.115 +A7      0.005 0.011 0.020 0.036 0.056 0.083 0.121 0.223 0.374 0.583 0.855
   1.116 +
   1.117 +Multiplication and Squaring tests, (mulsqr)
   1.118 +
   1.119 +The following results are aggregated from 500000 pseudo-randomly
   1.120 +generated tests, based on a per-run wall-clock seed.  Times are given
   1.121 +in seconds, except where indicated in microseconds (us).
   1.122 +
   1.123 +(A1)
   1.124 +
   1.125 +bits    multiply    square  ad  percent time/mult   time/square
   1.126 +64      9.33        9.15    >   1.9     18.7us      18.3us
   1.127 +128     10.88       10.44   >   4.0     21.8us      20.9us
   1.128 +192     13.30       11.89   >   10.6    26.7us      23.8us
   1.129 +256     14.88       12.64   >   15.1    29.8us      25.3us
   1.130 +320     18.64       15.01   >   19.5    37.3us      30.0us
   1.131 +384     23.11       17.70   >   23.4    46.2us      35.4us
   1.132 +448     28.28       20.88   >   26.2    56.6us      41.8us
   1.133 +512     34.09       24.51   >   28.1    68.2us      49.0us
   1.134 +640     47.86       33.25   >   30.5    95.7us      66.5us
   1.135 +768     64.91       43.54   >   32.9    129.8us     87.1us
   1.136 +896     84.49       55.48   >   34.3    169.0us     111.0us
   1.137 +1024    107.25      69.21   >   35.5    214.5us     138.4us
   1.138 +1536    227.97      141.91  >   37.8    456.0us     283.8us
   1.139 +2048    394.05      242.15  >   38.5    788.1us     484.3us
   1.140 +
   1.141 +(A2)
   1.142 +
   1.143 +bits    multiply    square  ad  percent time/mult   time/square
   1.144 +64      7.87        7.95    <   1.0     15.7us      15.9us
   1.145 +128     9.40        9.19    >   2.2     18.8us      18.4us
   1.146 +192     11.15       10.59   >   5.0     22.3us      21.2us
   1.147 +256     12.02       11.16   >   7.2     24.0us      22.3us
   1.148 +320     14.62       13.43   >   8.1     29.2us      26.9us
   1.149 +384     17.72       15.80   >   10.8    35.4us      31.6us
   1.150 +448     21.24       18.51   >   12.9    42.5us      37.0us
   1.151 +512     25.36       21.78   >   14.1    50.7us      43.6us
   1.152 +640     34.57       29.00   >   16.1    69.1us      58.0us
   1.153 +768     46.10       37.60   >   18.4    92.2us      75.2us
   1.154 +896     58.94       47.72   >   19.0    117.9us     95.4us
   1.155 +1024    73.76       59.12   >   19.8    147.5us     118.2us
   1.156 +1536    152.00      118.80  >   21.8    304.0us     237.6us
   1.157 +2048    259.41      199.57  >   23.1    518.8us     399.1us
   1.158 +
   1.159 +(B3)
   1.160 +
   1.161 +bits    multiply    square  ad  percent time/mult   time/square
   1.162 +64      2.60        2.47    >   5.0     5.20us      4.94us
   1.163 +128     4.43        4.06    >   8.4     8.86us      8.12us
   1.164 +192     7.03        6.10    >   13.2    14.1us      12.2us
   1.165 +256     10.44       8.59    >   17.7    20.9us      17.2us
   1.166 +320     14.44       11.64   >   19.4    28.9us      23.3us
   1.167 +384     19.12       15.08   >   21.1    38.2us      30.2us
   1.168 +448     24.55       19.09   >   22.2    49.1us      38.2us
   1.169 +512     31.03       23.53   >   24.2    62.1us      47.1us
   1.170 +640     45.05       33.80   >   25.0    90.1us      67.6us
   1.171 +768     63.02       46.05   >   26.9    126.0us     92.1us
   1.172 +896     83.74       60.29   >   28.0    167.5us     120.6us
   1.173 +1024    106.73      76.65   >   28.2    213.5us     153.3us
   1.174 +1536    228.94      160.98  >   29.7    457.9us     322.0us
   1.175 +2048    398.08      275.93  >   30.7    796.2us     551.9us
   1.176 +
   1.177 +(C4)
   1.178 +
   1.179 +bits    multiply    square  ad  percent time/mult   time/square
   1.180 +64      1.34        1.28    >   4.5     2.68us      2.56us
   1.181 +128     2.76        2.59    >   6.2     5.52us      5.18us
   1.182 +192     4.52        4.16    >   8.0     9.04us      8.32us
   1.183 +256     6.64        5.99    >   9.8     13.3us      12.0us
   1.184 +320     9.20        8.13    >   11.6    18.4us      16.3us
   1.185 +384     12.01       10.58   >   11.9    24.0us      21.2us
   1.186 +448     15.24       13.33   >   12.5    30.5us      26.7us
   1.187 +512     19.02       16.46   >   13.5    38.0us      32.9us
   1.188 +640     27.56       23.54   >   14.6    55.1us      47.1us
   1.189 +768     37.89       31.78   >   16.1    75.8us      63.6us
   1.190 +896     49.24       41.42   >   15.9    98.5us      82.8us
   1.191 +1024    62.59       52.18   >   16.6    125.2us     104.3us
   1.192 +1536    131.66      107.72  >   18.2    263.3us     215.4us
   1.193 +2048    226.45      182.95  >   19.2    453.0us     365.9us
   1.194 +
   1.195 +(A7)
   1.196 +
   1.197 +bits    multiply    square  ad  percent time/mult   time/square
   1.198 +64      1.74        1.71    >   1.7     3.48us      3.42us
   1.199 +128     3.48        2.96    >   14.9    6.96us      5.92us
   1.200 +192     5.74        4.60    >   19.9    11.5us      9.20us
   1.201 +256     8.75        6.61    >   24.5    17.5us      13.2us
   1.202 +320     12.5        8.99    >   28.1    25.0us      18.0us
   1.203 +384     16.9        11.9    >   29.6    33.8us      23.8us
   1.204 +448     22.2        15.2    >   31.7    44.4us      30.4us
   1.205 +512     28.3        19.0    >   32.7    56.6us      38.0us
   1.206 +640     42.4        28.0    >   34.0    84.8us      56.0us
   1.207 +768     59.4        38.5    >   35.2    118.8us     77.0us
   1.208 +896     79.5        51.2    >   35.6    159.0us     102.4us
   1.209 +1024    102.6	    65.5    >	36.2	205.2us	    131.0us
   1.210 +1536    224.3	    140.6   >	37.3	448.6us	    281.2us
   1.211 +2048    393.4	    244.3   >	37.9	786.8us	    488.6us
   1.212 +
   1.213 +------------------------------------------------------------------
   1.214 + This Source Code Form is subject to the terms of the Mozilla Public
   1.215 + # License, v. 2.0. If a copy of the MPL was not distributed with this
   1.216 + # file, You can obtain one at http://mozilla.org/MPL/2.0/.

mercurial