Skip to content

Commit c280f19

Browse files
committed
Add Intel libbid with GCC compiler benchmarks
1 parent ee1974a commit c280f19

File tree

1 file changed

+61
-15
lines changed

1 file changed

+61
-15
lines changed

doc/modules/ROOT/pages/benchmarks.adoc

Lines changed: 61 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ To run the GCC benchmarks you can use the following command: `gcc benchmark_libd
2828

2929
To run the Intel benchmarks you will need both the https://www.intel.com/content/www/us/en/developer/tools/oneapi/overview.html[Intel Compiler], and the https://www.intel.com/content/www/us/en/developer/articles/tool/intel-decimal-floating-point-math-library.html[library].
3030
You can the use the following command: `icx benchmark_libbid.c -O3 $PATH_TO_LIBBID/libbid.a -std=c17` followed by: `./a.out`
31+
You can also use `gcc` instead of `icx`.
3132

3233
NOTE: The Intel benchmarks can only be run on one of their supported architectures: IA-32, IA-64, and Intel x64
3334

@@ -92,13 +93,13 @@ Intel Compiler:
9293
| `decimal_fast128_t`
9394
| 698,945
9495
| 4.856
95-
| Intel `Decimal32`
96+
| Intel `BID_UINT32`
9697
| 2,411,294
9798
| 16.754
98-
| Intel `Decimal64`
99+
| Intel `BID_UINT64`
99100
| 3,158,422
100101
| 21.945
101-
| Intel `Decimal128`
102+
| Intel `BID_UINT128`
102103
| 3,389,883
103104
| 23.553
104105
|===
@@ -140,6 +141,15 @@ GCC:
140141
| GCC `_Decimal128`
141142
| 914,600
142143
| 14.844
144+
| Intel `BID_UINT32`
145+
| 3,718,385
146+
| 60.348
147+
| Intel `BID_UINT64`
148+
| 5,721,887
149+
| 92.865
150+
| Intel `BID_UINT128`
151+
| 7,090,648
152+
| 115.080
143153
|===
144154

145155
=== Addition
@@ -172,13 +182,13 @@ Intel Compiler:
172182
| `decimal_fast128_t`
173183
| 1,367,004
174184
| 15.092
175-
| Intel `Decimal32`
185+
| Intel `BID_UINT32`
176186
| 1,242,797
177187
| 13.721
178-
| Intel `Decimal64`
188+
| Intel `BID_UINT64`
179189
| 1,689,585
180190
| 18.653
181-
| Intel `Decimal128`
191+
| Intel `BID_UINT128`
182192
| 1,958,345
183193
| 21.620
184194
|===
@@ -220,6 +230,15 @@ GCC:
220230
| GCC `_Decimal128`
221231
| 3,368,864
222232
| 46.138
233+
| Intel `BID_UINT32`
234+
| 2,838,194
235+
| 38.879
236+
| Intel `BID_UINT64`
237+
| 3,297,652
238+
| 45.163
239+
| Intel `BID_UINT128`
240+
| 2,796,283
241+
| 38.296
223242
|===
224243

225244
=== Subtraction
@@ -252,13 +271,13 @@ Intel Compiler:
252271
| `decimal_fast128_t`
253272
| 1,212,405
254273
| 16.564
255-
| Intel `Decimal32`
274+
| Intel `BID_UINT32`
256275
| 1,922,108
257276
| 26.261
258-
| Intel `Decimal64`
277+
| Intel `BID_UINT64`
259278
| 1,793,879
260279
| 24.509
261-
| Intel `Decimal128`
280+
| Intel `BID_UINT128`
262281
| 2,397,372
263282
| 32.754
264283
|===
@@ -300,6 +319,15 @@ GCC:
300319
| GCC `_Decimal128`
301320
| 3,178,891
302321
| 10.816
322+
| Intel `BID_UINT32`
323+
| 3,762,566
324+
| 12.802
325+
| Intel `BID_UINT64`
326+
| 3,432,814
327+
| 11.680
328+
| Intel `BID_UINT128`
329+
| 3,725,534
330+
| 12.676
303331
|===
304332

305333
=== Multiplication
@@ -332,13 +360,13 @@ Intel Compiler:
332360
| `decimal_fast128_t`
333361
| 5,959,977
334362
| 81.870
335-
| Intel `Decimal32`
363+
| Intel `BID_UINT32`
336364
| 1,375,434
337365
| 18.894
338-
| Intel `Decimal64`
366+
| Intel `BID_UINT64`
339367
| 2,052,278
340368
| 28.191
341-
| Intel `Decimal128`
369+
| Intel `BID_UINT128`
342370
| 5,964,489
343371
| 81.932
344372
|===
@@ -380,6 +408,15 @@ GCC:
380408
| GCC `_Decimal128`
381409
| 7,050,299
382410
| 107.289
411+
| Intel `BID_UINT32`
412+
| 2,638,999
413+
| 40.197
414+
| Intel `BID_UINT64`
415+
| 4,605,497
416+
| 70.150
417+
| Intel `BID_UINT128`
418+
| 13,075,436
419+
| 199.163
383420
|===
384421

385422
=== Division
@@ -412,13 +449,13 @@ Intel Compiler:
412449
| `decimal_fast128_t`
413450
| 8,105,004
414451
| 78.086
415-
| Intel `Decimal32`
452+
| Intel `BID_UINT32`
416453
| 1,561,213
417454
| 15.041
418-
| Intel `Decimal64`
455+
| Intel `BID_UINT64`
419456
| 3,115,862
420457
| 30.019
421-
| Intel `Decimal128`
458+
| Intel `BID_UINT128`
422459
| 7,474,712
423460
| 72.013
424461
|===
@@ -460,6 +497,15 @@ GCC:
460497
| GCC `_Decimal128`
461498
| 10,257,437
462499
| 130.490
500+
| Intel `BID_UINT32`
501+
| 3,242,695
502+
| 40.194
503+
| Intel `BID_UINT64`
504+
| 6,143,554
505+
| 76.151
506+
| Intel `BID_UINT128`
507+
| 13,499,022
508+
| 167.324
463509
|===
464510

465511
=== `from_chars`

0 commit comments

Comments
 (0)