Skip to content

Commit 82fb1d9

Browse files
committed
Update linux ARM64 performance data and graphs
1 parent c83b8a6 commit 82fb1d9

File tree

4 files changed

+20
-19
lines changed

4 files changed

+20
-19
lines changed
30.1 KB
Loading
20.2 KB
Loading

doc/int128/i128_benchmarks.adoc

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,16 @@ image::i128_graphs/linux/x64_relative_performance.png[x64 Relative Performance,
3939

4040
=== ARM64
4141

42-
[cols="1,1,1,1"]
42+
[cols="1,1,1,1,1"]
4343
|===
44-
| Operation | `__int128` | `int128_t` | `boost::mp::int128_t`
44+
| Operation | `__int128` | `int128_t` | `boost::mp::int128_t` | `absl::int128`
4545

46-
| Comparisons | 3524205 | 2191692 | 5559916
47-
| Addition | 109691 | 126544 | 553814
48-
| Subtraction | 195129 | 196092 | 1024231
49-
| Multiplication | 286623 | 192214 | 924637
50-
| Division | 2350225 | 2163053 | 2718340
51-
| Modulo | 2345191 | 2167260 | 2380277
46+
| Comparisons | 3495621 | 2279914 | 5910287 | 3749448
47+
| Addition | 191514 | 133319 | 566860 | 164848
48+
| Subtraction | 131380 | 193984 | 1066509 | 193467
49+
| Multiplication | 236071 | 234594 | 864526 | 237676
50+
| Division | 2412757 | 2434752 | 2508755 | 2484139
51+
| Modulo | 2501357 | 2171828 | 2571959 | 2158203
5252
|===
5353

5454
////

doc/signed_plots.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import matplotlib.pyplot as plt
22
import numpy as np
33
import pandas as pd
4-
4+
"""
55
# Linux x64
66
data = {
77
'Operation': ['Comparisons', 'Addition', 'Subtraction', 'Multiplication', 'Division', 'Modulo'],
@@ -10,16 +10,17 @@
1010
'boost::mp::int128_t': [2210502, 283528, 668953, 312723, 1320695, 1287093],
1111
'absl::int128': [741269, 92323, 90394, 89558, 1200439, 1293439],
1212
}
13-
1413
"""
14+
1515
# Linux ARM64
1616
data = {
1717
'Operation': ['Comparisons', 'Addition', 'Subtraction', 'Multiplication', 'Division', 'Modulo'],
18-
'`__int128`': [3524205, 109691, 195129, 286623, 2350225, 2345191],
19-
'int128_t': [2191692, 126544, 196092, 192214, 2163053, 2167260],
20-
'boost::mp::int128_t': [5559916, 553814, 1024231, 924637, 2718340, 2380277]
18+
'`__int128`': [3495621, 191514, 131380, 236071, 2412757, 2501357],
19+
'int128_t': [2279914, 133319, 193984, 234594, 2434752, 2171828],
20+
'boost::mp::int128_t': [5910287, 566860, 1066509, 864526, 2508755, 2571959],
21+
'absl::int128': [3749448, 164848, 193467, 237676, 2484139, 2158203]
2122
}
22-
"""
23+
2324
"""
2425
# Linux s390x
2526
data = {
@@ -121,7 +122,7 @@ def get_colors_by_rank(row):
121122

122123
ax1.set_xlabel('Operations', fontsize=12)
123124
ax1.set_ylabel('Time (nanoseconds)', fontsize=12)
124-
ax1.set_title('GCC 14 - x64 Benchmark Results', fontsize=14, fontweight='bold')
125+
ax1.set_title('GCC 13 - ARM64 Benchmark Results', fontsize=14, fontweight='bold')
125126
ax1.set_xticks(x)
126127
ax1.set_xticklabels(operations, rotation=45, ha='right')
127128
ax1.legend(loc='upper left')
@@ -150,15 +151,15 @@ def get_colors_by_rank(row):
150151

151152
ax2.set_xlabel('Operations', fontsize=12)
152153
ax2.set_ylabel('Time (nanoseconds) - Log Scale', fontsize=12)
153-
ax2.set_title('GCC 14 - x64 Benchmark Results (Log Scale)', fontsize=14, fontweight='bold')
154+
ax2.set_title('GCC 13 - ARM64 Benchmark Results (Log Scale)', fontsize=14, fontweight='bold')
154155
ax2.set_yscale('log')
155156
ax2.set_xticks(x)
156157
ax2.set_xticklabels(operations, rotation=45, ha='right')
157158
ax2.legend(loc='upper left')
158159
ax2.grid(axis='y', alpha=0.3, which='both')
159160

160161
plt.tight_layout()
161-
plt.savefig('x64_benchmarks.png', dpi=300, bbox_inches='tight')
162+
plt.savefig('arm64_benchmarks.png', dpi=300, bbox_inches='tight')
162163
plt.show()
163164

164165
# Create a normalized performance chart
@@ -187,7 +188,7 @@ def get_colors_by_rank(row):
187188

188189
ax3.set_xlabel('Operations', fontsize=12)
189190
ax3.set_ylabel('Relative Performance (vs __int128)', fontsize=12)
190-
ax3.set_title('Relative Performance Comparison - x64', fontsize=14, fontweight='bold')
191+
ax3.set_title('Relative Performance Comparison - ARM64', fontsize=14, fontweight='bold')
191192
ax3.set_xticks(x)
192193
ax3.set_xticklabels(operations, rotation=45, ha='right')
193194
ax3.legend()
@@ -198,7 +199,7 @@ def get_colors_by_rank(row):
198199
fontsize=10, verticalalignment='top', style='italic')
199200

200201
plt.tight_layout()
201-
plt.savefig('x64_relative_performance.png', dpi=300, bbox_inches='tight')
202+
plt.savefig('arm64_relative_performance.png', dpi=300, bbox_inches='tight')
202203
plt.show()
203204

204205
# Generate summary statistics

0 commit comments

Comments
 (0)