1
MPI Library Timing Tests
4
(A) SGI O2 1 x MIPS R10000 250MHz IRIX 6.5.3
5
(B) IBM RS/6000 43P-240 1 x PowerPC 603e 223MHz AIX 4.3
6
(C) Dell GX1/L+ 1 x Pentium III 550MHz Linux 2.2.12-20
7
(D) PowerBook G3 1 x PowerPC 750 266MHz LinuxPPC 2.2.6-15apmac
8
(E) PowerBook G3 1 x PowerPC 750 266MHz MacOS 8.5.1
9
(F) PowerBook G3 1 x PowerPC 750 400MHz MacOS 9.0.2
12
(1) MIPSpro C 7.2.1 -O3 optimizations
13
(2) GCC 2.95.1 -O3 optimizations
14
(3) IBM AIX xlc -O3 optimizations (version unknown)
15
(4) EGCS 2.91.66 -O3 optimizations
16
(5) Metrowerks CodeWarrior 5.0 C, all optimizations
17
(6) MIPSpro C 7.30 -O3 optimizations
18
(7) same as (6), with optimized libmalloc.so
20
Timings are given in seconds, computed using the C library's clock()
21
function. The first column gives the hardware and compiler
22
configuration used for the test. The second column indicates the
23
number of tests that were aggregated to get the statistics for that
24
size. These were compiled using 16 bit digits.
26
Source data were generated randomly using a fixed seed, so they should
27
be internally consistent, but may vary on different systems depending
28
on the C library. Also, since the resolution of the timer accessed by
29
clock() varies, there may be some variance in the precision of these
32
Prime Generation (primegen)
35
A1 200 min=0.03, avg=0.19, max=0.72, sum=38.46
36
A2 200 min=0.02, avg=0.16, max=0.62, sum=32.55
37
B3 200 min=0.01, avg=0.07, max=0.22, sum=13.29
38
C4 200 min=0.00, avg=0.03, max=0.20, sum=6.14
39
D4 200 min=0.00, avg=0.05, max=0.33, sum=9.70
40
A6 200 min=0.01, avg=0.09, max=0.36, sum=17.48
41
A7 200 min=0.00, avg=0.05, max=0.24, sum=10.07
44
A1 200 min=0.05, avg=0.45, max=3.13, sum=89.96
45
A2 200 min=0.04, avg=0.39, max=2.61, sum=77.55
46
B3 200 min=0.02, avg=0.18, max=1.25, sum=36.97
47
C4 200 min=0.01, avg=0.09, max=0.33, sum=18.24
48
D4 200 min=0.02, avg=0.15, max=0.54, sum=29.63
49
A6 200 min=0.02, avg=0.24, max=1.70, sum=47.84
50
A7 200 min=0.01, avg=0.15, max=1.05, sum=30.88
53
A1 200 min=0.08, avg=0.92, max=6.13, sum=184.79
54
A2 200 min=0.06, avg=0.76, max=5.03, sum=151.11
55
B3 200 min=0.04, avg=0.41, max=2.68, sum=82.35
56
C4 200 min=0.02, avg=0.19, max=0.69, sum=37.91
57
D4 200 min=0.03, avg=0.31, max=1.15, sum=63.00
58
A6 200 min=0.04, avg=0.48, max=3.13, sum=95.46
59
A7 200 min=0.03, avg=0.37, max=2.36, sum=73.60
62
A1 200 min=0.11, avg=1.59, max=6.14, sum=318.81
63
A2 200 min=0.09, avg=1.27, max=4.93, sum=254.03
64
B3 200 min=0.07, avg=0.82, max=3.13, sum=163.80
65
C4 200 min=0.04, avg=0.44, max=1.91, sum=87.59
66
D4 200 min=0.06, avg=0.73, max=3.22, sum=146.73
67
A6 200 min=0.07, avg=0.93, max=3.50, sum=185.01
68
A7 200 min=0.05, avg=0.76, max=2.94, sum=151.78
71
A1 200 min=0.16, avg=2.69, max=11.41, sum=537.89
72
A2 200 min=0.13, avg=2.15, max=9.03, sum=429.14
73
B3 200 min=0.11, avg=1.54, max=6.49, sum=307.78
74
C4 200 min=0.06, avg=0.81, max=4.84, sum=161.13
75
D4 200 min=0.10, avg=1.38, max=8.31, sum=276.81
76
A6 200 min=0.11, avg=1.73, max=7.36, sum=345.55
77
A7 200 min=0.09, avg=1.46, max=6.12, sum=292.02
80
A1 200 min=0.23, avg=3.36, max=15.92, sum=672.63
81
A2 200 min=0.17, avg=2.61, max=12.25, sum=522.86
82
B3 200 min=0.16, avg=2.10, max=9.83, sum=420.86
83
C4 200 min=0.09, avg=1.44, max=7.64, sum=288.36
84
D4 200 min=0.16, avg=2.50, max=13.29, sum=500.17
85
A6 200 min=0.15, avg=2.31, max=10.81, sum=461.58
86
A7 200 min=0.14, avg=2.03, max=9.53, sum=405.16
89
A1 200 min=0.30, avg=6.12, max=22.18, sum=1223.35
90
A2 200 min=0.25, avg=4.67, max=16.90, sum=933.18
91
B3 200 min=0.23, avg=4.13, max=14.94, sum=825.45
92
C4 200 min=0.13, avg=2.08, max=9.75, sum=415.22
93
D4 200 min=0.24, avg=4.04, max=20.18, sum=808.11
94
A6 200 min=0.22, avg=4.47, max=16.19, sum=893.83
95
A7 200 min=0.20, avg=4.03, max=14.65, sum=806.02
97
Modular Exponentation (metime)
99
The following results are aggregated from 200 pseudo-randomly
100
generated tests, based on a fixed seed.
102
base, exponent, and modulus size (bits)
103
P/C 128 192 256 320 384 448 512 640 768 896 1024
104
------- -----------------------------------------------------------------
105
A1 0.015 0.027 0.047 0.069 0.098 0.133 0.176 0.294 0.458 0.680 1.040
106
A2 0.013 0.024 0.037 0.053 0.077 0.102 0.133 0.214 0.326 0.476 0.668
107
B3 0.005 0.011 0.021 0.036 0.056 0.084 0.121 0.222 0.370 0.573 0.840
108
C4 0.002 0.006 0.011 0.020 0.032 0.048 0.069 0.129 0.223 0.344 0.507
109
D4 0.004 0.010 0.019 0.034 0.056 0.085 0.123 0.232 0.390 0.609 0.899
110
E5 0.007 0.015 0.031 0.055 0.088 0.133 0.183 0.342 0.574 0.893 1.317
111
A6 0.008 0.016 0.038 0.042 0.064 0.093 0.133 0.239 0.393 0.604 0.880
112
A7 0.005 0.011 0.020 0.036 0.056 0.083 0.121 0.223 0.374 0.583 0.855
114
Multiplication and Squaring tests, (mulsqr)
116
The following results are aggregated from 500000 pseudo-randomly
117
generated tests, based on a per-run wall-clock seed. Times are given
118
in seconds, except where indicated in microseconds (us).
122
bits multiply square ad percent time/mult time/square
123
64 9.33 9.15 > 1.9 18.7us 18.3us
124
128 10.88 10.44 > 4.0 21.8us 20.9us
125
192 13.30 11.89 > 10.6 26.7us 23.8us
126
256 14.88 12.64 > 15.1 29.8us 25.3us
127
320 18.64 15.01 > 19.5 37.3us 30.0us
128
384 23.11 17.70 > 23.4 46.2us 35.4us
129
448 28.28 20.88 > 26.2 56.6us 41.8us
130
512 34.09 24.51 > 28.1 68.2us 49.0us
131
640 47.86 33.25 > 30.5 95.7us 66.5us
132
768 64.91 43.54 > 32.9 129.8us 87.1us
133
896 84.49 55.48 > 34.3 169.0us 111.0us
134
1024 107.25 69.21 > 35.5 214.5us 138.4us
135
1536 227.97 141.91 > 37.8 456.0us 283.8us
136
2048 394.05 242.15 > 38.5 788.1us 484.3us
140
bits multiply square ad percent time/mult time/square
141
64 7.87 7.95 < 1.0 15.7us 15.9us
142
128 9.40 9.19 > 2.2 18.8us 18.4us
143
192 11.15 10.59 > 5.0 22.3us 21.2us
144
256 12.02 11.16 > 7.2 24.0us 22.3us
145
320 14.62 13.43 > 8.1 29.2us 26.9us
146
384 17.72 15.80 > 10.8 35.4us 31.6us
147
448 21.24 18.51 > 12.9 42.5us 37.0us
148
512 25.36 21.78 > 14.1 50.7us 43.6us
149
640 34.57 29.00 > 16.1 69.1us 58.0us
150
768 46.10 37.60 > 18.4 92.2us 75.2us
151
896 58.94 47.72 > 19.0 117.9us 95.4us
152
1024 73.76 59.12 > 19.8 147.5us 118.2us
153
1536 152.00 118.80 > 21.8 304.0us 237.6us
154
2048 259.41 199.57 > 23.1 518.8us 399.1us
158
bits multiply square ad percent time/mult time/square
159
64 2.60 2.47 > 5.0 5.20us 4.94us
160
128 4.43 4.06 > 8.4 8.86us 8.12us
161
192 7.03 6.10 > 13.2 14.1us 12.2us
162
256 10.44 8.59 > 17.7 20.9us 17.2us
163
320 14.44 11.64 > 19.4 28.9us 23.3us
164
384 19.12 15.08 > 21.1 38.2us 30.2us
165
448 24.55 19.09 > 22.2 49.1us 38.2us
166
512 31.03 23.53 > 24.2 62.1us 47.1us
167
640 45.05 33.80 > 25.0 90.1us 67.6us
168
768 63.02 46.05 > 26.9 126.0us 92.1us
169
896 83.74 60.29 > 28.0 167.5us 120.6us
170
1024 106.73 76.65 > 28.2 213.5us 153.3us
171
1536 228.94 160.98 > 29.7 457.9us 322.0us
172
2048 398.08 275.93 > 30.7 796.2us 551.9us
176
bits multiply square ad percent time/mult time/square
177
64 1.34 1.28 > 4.5 2.68us 2.56us
178
128 2.76 2.59 > 6.2 5.52us 5.18us
179
192 4.52 4.16 > 8.0 9.04us 8.32us
180
256 6.64 5.99 > 9.8 13.3us 12.0us
181
320 9.20 8.13 > 11.6 18.4us 16.3us
182
384 12.01 10.58 > 11.9 24.0us 21.2us
183
448 15.24 13.33 > 12.5 30.5us 26.7us
184
512 19.02 16.46 > 13.5 38.0us 32.9us
185
640 27.56 23.54 > 14.6 55.1us 47.1us
186
768 37.89 31.78 > 16.1 75.8us 63.6us
187
896 49.24 41.42 > 15.9 98.5us 82.8us
188
1024 62.59 52.18 > 16.6 125.2us 104.3us
189
1536 131.66 107.72 > 18.2 263.3us 215.4us
190
2048 226.45 182.95 > 19.2 453.0us 365.9us
194
bits multiply square ad percent time/mult time/square
195
64 1.74 1.71 > 1.7 3.48us 3.42us
196
128 3.48 2.96 > 14.9 6.96us 5.92us
197
192 5.74 4.60 > 19.9 11.5us 9.20us
198
256 8.75 6.61 > 24.5 17.5us 13.2us
199
320 12.5 8.99 > 28.1 25.0us 18.0us
200
384 16.9 11.9 > 29.6 33.8us 23.8us
201
448 22.2 15.2 > 31.7 44.4us 30.4us
202
512 28.3 19.0 > 32.7 56.6us 38.0us
203
640 42.4 28.0 > 34.0 84.8us 56.0us
204
768 59.4 38.5 > 35.2 118.8us 77.0us
205
896 79.5 51.2 > 35.6 159.0us 102.4us
206
1024 102.6 65.5 > 36.2 205.2us 131.0us
207
1536 224.3 140.6 > 37.3 448.6us 281.2us
208
2048 393.4 244.3 > 37.9 786.8us 488.6us
210
------------------------------------------------------------------
211
***** BEGIN LICENSE BLOCK *****
212
Version: MPL 1.1/GPL 2.0/LGPL 2.1
214
The contents of this file are subject to the Mozilla Public License Version
215
1.1 (the "License"); you may not use this file except in compliance with
216
the License. You may obtain a copy of the License at
217
http://www.mozilla.org/MPL/
219
Software distributed under the License is distributed on an "AS IS" basis,
220
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
221
for the specific language governing rights and limitations under the
224
The Original Code is the MPI Arbitrary Precision Integer Arithmetic
227
The Initial Developer of the Original Code is
228
Michael J. Fromberger <sting@linguist.dartmouth.edu>
229
Portions created by the Initial Developer are Copyright (C) 1998, 2000
230
the Initial Developer. All Rights Reserved.
234
Alternatively, the contents of this file may be used under the terms of
235
either the GNU General Public License Version 2 or later (the "GPL"), or
236
the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
237
in which case the provisions of the GPL or the LGPL are applicable instead
238
of those above. If you wish to allow use of your version of this file only
239
under the terms of either the GPL or the LGPL, and not to allow others to
240
use your version of this file under the terms of the MPL, indicate your
241
decision by deleting the provisions above and replace them with the notice
242
and other provisions required by the GPL or the LGPL. If you do not delete
243
the provisions above, a recipient may use your version of this file under
244
the terms of any one of the MPL, the GPL or the LGPL.
246
***** END LICENSE BLOCK *****
248
$Id: timing.txt,v 1.2 2005/02/02 22:28:22 gerv%gerv.net Exp $