|
26 | 26 | #include "arrow/util/bpacking_scalar_internal.h" |
27 | 27 | #include "arrow/util/bpacking_simd_internal.h" |
28 | 28 |
|
29 | | -#if defined(ARROW_HAVE_RUNTIME_AVX2) || defined(ARROW_HAVE_RUNTIME_SVE256) |
| 29 | +#if defined(ARROW_HAVE_RUNTIME_AVX2) || defined(ARROW_HAVE_RUNTIME_SVE128) |
30 | 30 | # include "arrow/util/cpu_info.h" |
31 | 31 | #endif |
32 | 32 |
|
@@ -254,6 +254,33 @@ BENCHMARK_CAPTURE(BM_UnpackUint64, NeonUnaligned, false, &bpacking::unpack_neon< |
254 | 254 | ->ArgsProduct(kBitWidthsNumValues64); |
255 | 255 | #endif |
256 | 256 |
|
| 257 | +#if defined(ARROW_HAVE_RUNTIME_SVE128) |
| 258 | +BENCHMARK_CAPTURE(BM_UnpackBool, Sve128Unaligned, false, &bpacking::unpack_sve128<bool>, |
| 259 | + !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE128), |
| 260 | + "Sve128 not available") |
| 261 | + ->ArgsProduct(kBitWidthsNumValuesBool); |
| 262 | +BENCHMARK_CAPTURE(BM_UnpackUint8, Sve128Unaligned, false, |
| 263 | + &bpacking::unpack_sve128<uint8_t>, |
| 264 | + !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE128), |
| 265 | + "Sve128 not available") |
| 266 | + ->ArgsProduct(kBitWidthsNumValues8); |
| 267 | +BENCHMARK_CAPTURE(BM_UnpackUint16, Sve128Unaligned, false, |
| 268 | + &bpacking::unpack_sve128<uint16_t>, |
| 269 | + !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE128), |
| 270 | + "Sve128 not available") |
| 271 | + ->ArgsProduct(kBitWidthsNumValues16); |
| 272 | +BENCHMARK_CAPTURE(BM_UnpackUint32, Sve128Unaligned, false, |
| 273 | + &bpacking::unpack_sve128<uint32_t>, |
| 274 | + !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE128), |
| 275 | + "Sve128 not available") |
| 276 | + ->ArgsProduct(kBitWidthsNumValues32); |
| 277 | +BENCHMARK_CAPTURE(BM_UnpackUint64, Sve128Unaligned, false, |
| 278 | + &bpacking::unpack_sve128<uint64_t>, |
| 279 | + !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE128), |
| 280 | + "Sve128 not available") |
| 281 | + ->ArgsProduct(kBitWidthsNumValues64); |
| 282 | +#endif |
| 283 | + |
257 | 284 | #if defined(ARROW_HAVE_RUNTIME_SVE256) |
258 | 285 | BENCHMARK_CAPTURE(BM_UnpackBool, Sve256Unaligned, false, &bpacking::unpack_sve256<bool>, |
259 | 286 | !CpuInfo::GetInstance()->IsSupported(CpuInfo::SVE256), |
|
0 commit comments