Skip to content

Commit 0478b0c

Browse files
committed
Update apple benchmarks
1 parent 17be9c2 commit 0478b0c

File tree

1 file changed

+78
-78
lines changed

1 file changed

+78
-78
lines changed

doc/decimal/benchmarks.adoc

Lines changed: 78 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ An example on Linux with b2: `../../../b2 cxxstd=20 toolset=gcc-13 define=BOOST_
2222

2323
== Comparisons
2424

25-
The benchmark for comparisons generates a random vector containing 2,000,000 elements and does operations `>`, `>=`, `<`, `\<=`, `==`, and `!=` between `vec[i] and vec[i + 1]`.
25+
The benchmark for comparisons generates a random vector containing 20,000,000 elements and does operations `>`, `>=`, `<`, `\<=`, `==`, and `!=` between `vec[i] and vec[i + 1]`.
2626
This is repeated 5 times to generate stable results.
2727

2828
=== x64 Linux Results
@@ -68,39 +68,39 @@ Run using an Intel i9-11900k chipset running RHEL 9.4 and GCC 11.4.1-3
6868

6969
=== M1 macOS Results
7070

71-
Run using a Macbook pro with M1 pro chipset running macOS Sonoma 14.4.1 and homebrew Clang 18.1.4
71+
Run using a Macbook pro with M1 pro chipset running macOS Sonoma 15.0 and homebrew Clang 18.1.8
7272

7373
|===
7474
| Type | Runtime (us) | Ratio to `double`
7575
| `float`
76-
| 8587
77-
| 1.376
76+
| 146,976
77+
| 2.319
7878
| `double`
79-
| 6240
79+
| 63,382
8080
| 1.000
8181
| `decimal32`
82-
| 275,597
83-
| 44.166
82+
| 1,797,597
83+
| 28.361
8484
| `decimal64`
85-
| 296,929
86-
| 47.587
85+
| 2,799,376
86+
| 44.167
8787
| `decimal128`
88-
| 821,847
89-
| 131.706
88+
| 6,478,939
89+
| 102.220
9090
| `decimal32_fast`
91-
| 99,664
92-
| 15.972
91+
| 1,070,232
92+
| 16.885
9393
| `decimal64_fast`
94-
| 102,132
95-
| 16.367
94+
| 1,111,273
95+
| 17.533
9696
| `decimal128_fast`
97-
| 146,302
98-
| 23.446
97+
| 1,118,976
98+
| 17.654
9999
|===
100100

101101
== Basic Operations
102102

103-
The benchmark for these operations generates a random vector containing 2,000,000 elements and does operations `+`, `-`, `*`, `/` between `vec[i] and vec[i + 1]`.
103+
The benchmark for these operations generates a random vector containing 20,000,000 elements and does operations `+`, `-`, `*`, `/` between `vec[i] and vec[i + 1]`.
104104
This is repeated 5 times to generate stable results.
105105

106106
=== x64 Linux Results
@@ -272,119 +272,119 @@ Run using a Macbook pro with M1 pro chipset running macOS Sonoma 14.4.1 and home
272272
|===
273273
| Type | Runtime (us) | Ratio to `double`
274274
| `float`
275-
| 2705
276-
| 0.859
275+
| 16,685
276+
| 0.955
277277
| `double`
278-
| 3148
278+
| 17,476
279279
| 1.000
280280
| `decimal32`
281-
| 351,505
282-
| 111.660
281+
| 2,528,095
282+
| 144.661
283283
| `decimal64`
284-
| 359,425
285-
| 114.176
284+
| 2,713,507
285+
| 155.270
286286
| `decimal128`
287-
| 1,446,674
288-
| 459.553
287+
| 11,969,714
288+
| 684.923
289289
| `decimal32_fast`
290-
| 146,873
291-
| 46.656
290+
| 1,423,277
291+
| 81.442
292292
| `decimal64_fast`
293-
| 139,294
294-
| 44.248
293+
| 1,280,409
294+
| 73.267
295295
| `decimal128_fast`
296-
| 707,308
297-
| 224.685
296+
| 6,047,499
297+
| 346.046
298298
|===
299299

300300
==== Subtraction
301301

302302
|===
303303
| Type | Runtime (us) | Ratio to `double`
304304
| `float`
305-
| 3339
306-
| 2.014
305+
| 16,302
306+
| 1.045
307307
| `double`
308-
| 1658
308+
| 17,033
309309
| 1.000
310310
| `decimal32`
311-
| 267,646
312-
| 161.427
311+
| 2,010,525
312+
| 118.037
313313
| `decimal64`
314-
| 303,589
315-
| 183.106
314+
| 2,237,729
315+
| 131.376
316316
| `decimal128`
317-
| 954,211
318-
| 575.519
317+
| 6,907,396
318+
| 405.530
319319
| `decimal32_fast`
320-
| 147,112
321-
| 88.729
320+
| 1,378,448
321+
| 80.928
322322
| `decimal64_fast`
323-
| 145,606
324-
| 87.820
323+
| 1,276,731
324+
| 74.956
325325
| `decimal128_fast`
326-
| 394,538
327-
| 2387.960
326+
| 2,970,586
327+
| 174.401
328328
|===
329329

330330
==== Multiplication
331331

332332
|===
333333
| Type | Runtime (us) | Ratio to `double`
334334
| `float`
335-
| 1646
336-
| 0.957
335+
| 16,499
336+
| 0.926
337337
| `double`
338-
| 1720
338+
| 17,821
339339
| 1.000
340340
| `decimal32`
341-
| 313,219
342-
| 182.104
341+
| 1,951,504
342+
| 109.506
343343
| `decimal64`
344-
| 583,818
345-
| 339.429
344+
| 2,480,528
345+
| 139.191
346346
| `decimal128`
347-
| 1,881,936
348-
| 1094.149
347+
| 14,360,630
348+
| 805.826
349349
| `decimal32_fast`
350-
| 86,093
351-
| 50.054
350+
| 630,355
351+
| 35.371
352352
| `decimal64_fast`
353-
| 333,582
354-
| 193.943
353+
| 987,703
354+
| 55.424
355355
| `decimal128_fast`
356-
| 1,269,429
357-
| 738.040
356+
| 12,573,178
357+
| 705.526
358358
|===
359359

360360
==== Division
361361

362362
|===
363363
| Type | Runtime (us) | Ratio to `double`
364364
| `float`
365-
| 2120
366-
| 0.547
365+
| 20,267
366+
| 0.841
367367
| `double`
368-
| 3874
368+
| 24,111
369369
| 1.000
370370
| `decimal32`
371-
| 307,337
372-
| 79.333
371+
| 1,757,506
372+
| 72.892
373373
| `decimal64`
374-
| 447,910
375-
| 115.620
374+
| 3,496,913
375+
| 145.033
376376
| `decimal128`
377-
| 2,544,798
378-
| 656.892
377+
| 20,017,989
378+
| 830.243
379379
| `decimal32_fast`
380-
| 105,796
381-
| 27.309
380+
| 846,727
381+
| 35.118
382382
| `decimal64_fast`
383-
| 291,671
384-
| 75.289
383+
| 2,484,985
384+
| 103.064
385385
| `decimal128_fast`
386-
| 302,003
387-
| 77.956
386+
| 2,490,175
387+
| 103.280
388388
|===
389389

390390
////

0 commit comments

Comments
 (0)