Skip to content

[Not for merge] Make ConvertedType optional in the Parquet schema#9980

Closed
etseidl wants to merge 10 commits into
apache:mainfrom
etseidl:optional_conv_type
Closed

[Not for merge] Make ConvertedType optional in the Parquet schema#9980
etseidl wants to merge 10 commits into
apache:mainfrom
etseidl:optional_conv_type

Conversation

@etseidl
Copy link
Copy Markdown
Contributor

@etseidl etseidl commented May 15, 2026

Which issue does this PR close?

  • Closes #NNN.

Rationale for this change

Test of making converted type an optional field (as it is in the Parquet spec).

What changes are included in this PR?

Convert converted_type in the BasicTypeInfo to an Option<ConvertedType>, remove the ConvertedType::NONE variant (which is not in the spec).

Are these changes tested?

Are there any user-facing changes?

@github-actions github-actions Bot added parquet Changes to the parquet crate parquet-derive labels May 15, 2026
@etseidl
Copy link
Copy Markdown
Contributor Author

etseidl commented May 15, 2026

run benchmark metadata, parquet_round_trip

@adriangbot
Copy link
Copy Markdown

Hi @etseidl, thanks for the request (#9980 (comment)).

Supported benchmarks:

  • Standard: (none)
  • Criterion: (any)

Usage:

run benchmark <name>           # run specific benchmark(s)
run benchmarks                 # run default suite
run benchmarks <name1> <name2> # run specific benchmarks

Per-side configuration (run benchmark tpch followed by):

env:
SHARED_SETTING: enabled
baseline:
ref: v45.0.0
env:
DATAFUSION_RUNTIME_MEMORY_LIMIT: 1G
changed:
ref: v46.0.0
env:
DATAFUSION_RUNTIME_MEMORY_LIMIT: 2G

File an issue against this benchmark runner

@etseidl
Copy link
Copy Markdown
Contributor Author

etseidl commented May 15, 2026

run benchmarks metadata parquet_round_trip

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark running (GKE) | trigger
Instance: c4a-highmem-16 (12 vCPU / 65 GiB) | Linux bench-c4462998181-154-8tghq 6.12.68+ #1 SMP Wed Apr 1 02:23:28 UTC 2026 aarch64 GNU/Linux

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected

Comparing optional_conv_type (efb7f60) to fd1c5b3 (merge-base) diff
BENCH_NAME=parquet_round_trip
BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench parquet_round_trip
BENCH_FILTER=
Results will be posted here when complete


File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark running (GKE) | trigger
Instance: c4a-highmem-16 (12 vCPU / 65 GiB) | Linux bench-c4462998181-153-l9d4l 6.12.68+ #1 SMP Wed Apr 1 02:23:28 UTC 2026 aarch64 GNU/Linux

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected

Comparing optional_conv_type (efb7f60) to fd1c5b3 (merge-base) diff
BENCH_NAME=metadata
BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench metadata
BENCH_FILTER=
Results will be posted here when complete


File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark completed (GKE) | trigger

Instance: c4a-highmem-16 (12 vCPU / 65 GiB)

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected
Details

group                                               main                                   optional_conv_type
-----                                               ----                                   ------------------
decode metadata (wide) with schema                  1.00     27.9±0.35ms        ? ?/sec    1.01     28.2±0.37ms        ? ?/sec
decode metadata (wide) with skip PES                1.00     28.5±0.38ms        ? ?/sec    1.01     28.7±0.35ms        ? ?/sec
decode metadata (wide) with skip all stats          1.00     32.4±0.20ms        ? ?/sec    1.01     32.9±0.20ms        ? ?/sec
decode metadata (wide) with skip column stats       1.00     29.5±0.29ms        ? ?/sec    1.01     29.8±0.31ms        ? ?/sec
decode metadata (wide) with skip size stats         1.00     32.8±0.30ms        ? ?/sec    1.00     33.0±0.28ms        ? ?/sec
decode metadata (wide) with stats mask              1.00     27.4±0.36ms        ? ?/sec    1.01     27.6±0.41ms        ? ?/sec
decode metadata with schema                         1.01      4.2±0.01µs        ? ?/sec    1.00      4.1±0.01µs        ? ?/sec
decode metadata with skip PES                       1.00      7.0±0.05µs        ? ?/sec    1.00      7.0±0.01µs        ? ?/sec
decode metadata with skip column stats              1.02      6.8±0.06µs        ? ?/sec    1.00      6.7±0.09µs        ? ?/sec
decode metadata with stats mask                     1.01      6.8±0.01µs        ? ?/sec    1.00      6.8±0.05µs        ? ?/sec
decode parquet metadata                             1.01      7.2±0.01µs        ? ?/sec    1.00      7.1±0.03µs        ? ?/sec
decode parquet metadata (wide)                      1.00     30.0±0.37ms        ? ?/sec    1.00     30.1±0.39ms        ? ?/sec
decode parquet metadata no path_in_schema (wide)    1.00     29.4±0.36ms        ? ?/sec    1.00     29.5±0.42ms        ? ?/sec
decode parquet metadata w/ size stats (wide)        1.00     36.2±0.40ms        ? ?/sec    1.00     36.3±0.41ms        ? ?/sec
open(default)                                       1.00      7.8±0.01µs        ? ?/sec    1.00      7.7±0.05µs        ? ?/sec
open(page index)                                    1.01    132.9±0.18µs        ? ?/sec    1.00    132.1±0.09µs        ? ?/sec

Resource Usage

base (merge-base)

Metric Value
Wall time 160.0s
Peak memory 4.2 GiB
Avg memory 4.2 GiB
CPU user 156.2s
CPU sys 0.8s
Peak spill 0 B

branch

Metric Value
Wall time 160.0s
Peak memory 4.2 GiB
Avg memory 4.2 GiB
CPU user 156.1s
CPU sys 0.2s
Peak spill 0 B

File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark completed (GKE) | trigger

Instance: c4a-highmem-16 (12 vCPU / 65 GiB)

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected
Details

group                                     main                                   optional_conv_type
-----                                     ----                                   ------------------
read Binary(100) delta_byte_array         1.01      9.0±0.20ms        ? ?/sec    1.00      8.9±0.23ms        ? ?/sec
read Binary(100) delta_length             1.00      3.5±0.09ms        ? ?/sec    1.01      3.6±0.07ms        ? ?/sec
read Binary(100) dict                     1.00      4.0±0.04ms        ? ?/sec    1.00      4.0±0.04ms        ? ?/sec
read Binary(100) plain                    1.00      4.5±0.25ms        ? ?/sec    1.00      4.5±0.26ms        ? ?/sec
read Binary(20) delta_byte_array          1.00      4.9±0.04ms        ? ?/sec    1.00      4.9±0.02ms        ? ?/sec
read Binary(20) delta_length              1.00  1922.5±77.22µs        ? ?/sec    1.00  1913.8±78.19µs        ? ?/sec
read Binary(20) dict                      1.00      2.6±0.01ms        ? ?/sec    1.00      2.6±0.01ms        ? ?/sec
read Binary(20) plain                     1.01      2.9±0.09ms        ? ?/sec    1.00      2.9±0.09ms        ? ?/sec
read Fixed(16) byte_stream_split          1.00      5.5±0.02ms        ? ?/sec    1.00      5.5±0.04ms        ? ?/sec
read Fixed(16) delta_byte_array           1.00      3.4±0.08ms        ? ?/sec    1.03      3.5±0.10ms        ? ?/sec
read Fixed(16) dict                       1.00   651.0±22.94µs        ? ?/sec    1.00   648.0±11.83µs        ? ?/sec
read Fixed(16) plain                      1.00   638.1±19.77µs        ? ?/sec    1.02   649.2±22.47µs        ? ?/sec
read Fixed(2) byte_stream_split           1.00    936.5±2.99µs        ? ?/sec    1.00    933.7±3.13µs        ? ?/sec
read Fixed(2) delta_byte_array            1.00      3.2±0.01ms        ? ?/sec    1.00      3.2±0.02ms        ? ?/sec
read Fixed(2) dict                        1.00    436.5±2.63µs        ? ?/sec    1.01    440.4±2.96µs        ? ?/sec
read Fixed(2) plain                       1.00    444.0±2.39µs        ? ?/sec    1.00    443.4±1.70µs        ? ?/sec
read String(100) delta_byte_array         1.00      9.8±0.20ms        ? ?/sec    1.00      9.8±0.23ms        ? ?/sec
read String(100) delta_length             1.00      4.6±0.08ms        ? ?/sec    1.03      4.7±0.10ms        ? ?/sec
read String(100) dict                     1.01      4.0±0.04ms        ? ?/sec    1.00      4.0±0.04ms        ? ?/sec
read String(100) plain                    1.00      5.3±0.34ms        ? ?/sec    1.01      5.4±0.30ms        ? ?/sec
read String(20) delta_byte_array          1.00      5.3±0.05ms        ? ?/sec    1.00      5.3±0.04ms        ? ?/sec
read String(20) delta_length              1.00      2.1±0.09ms        ? ?/sec    1.06      2.2±0.12ms        ? ?/sec
read String(20) dict                      1.01      2.6±0.01ms        ? ?/sec    1.00      2.6±0.02ms        ? ?/sec
read String(20) plain                     1.00      3.0±0.08ms        ? ?/sec    1.02      3.1±0.07ms        ? ?/sec
read StringView(100) delta_byte_array     1.00      9.1±0.23ms        ? ?/sec    1.00      9.1±0.21ms        ? ?/sec
read StringView(100) delta_length         1.00      4.9±0.26ms        ? ?/sec    1.00      4.9±0.35ms        ? ?/sec
read StringView(100) dict                 1.00    998.7±5.03µs        ? ?/sec    1.00    999.6±3.66µs        ? ?/sec
read StringView(100) plain                1.01      5.5±0.11ms        ? ?/sec    1.00      5.4±0.24ms        ? ?/sec
read StringView(20) delta_byte_array      1.00      5.3±0.05ms        ? ?/sec    1.01      5.3±0.04ms        ? ?/sec
read StringView(20) delta_length          1.04      2.7±0.14ms        ? ?/sec    1.00      2.6±0.12ms        ? ?/sec
read StringView(20) dict                  1.00    985.1±3.91µs        ? ?/sec    1.00    990.0±4.24µs        ? ?/sec
read StringView(20) plain                 1.03  1809.1±73.18µs        ? ?/sec    1.00  1759.1±113.35µs        ? ?/sec
read f32 byte_stream_split                1.00   1033.5±9.85µs        ? ?/sec    1.01  1045.8±11.62µs        ? ?/sec
read f32 dict                             1.00   1456.6±6.56µs        ? ?/sec    1.00   1451.9±6.61µs        ? ?/sec
read f32 plain                            1.00   970.5±16.85µs        ? ?/sec    1.00   966.0±14.42µs        ? ?/sec
read f64 byte_stream_split                1.03  1661.0±94.87µs        ? ?/sec    1.00  1615.3±89.03µs        ? ?/sec
read f64 dict                             1.00   1487.1±7.82µs        ? ?/sec    1.00   1490.3±7.51µs        ? ?/sec
read f64 plain                            1.01  1134.3±27.76µs        ? ?/sec    1.00  1119.4±14.47µs        ? ?/sec
read int32 byte_stream_split              1.00  1080.1±12.87µs        ? ?/sec    1.00  1082.0±13.90µs        ? ?/sec
read int32 delta_binary                   1.01      2.2±0.05ms        ? ?/sec    1.00      2.2±0.05ms        ? ?/sec
read int32 dict                           1.00   1517.9±8.83µs        ? ?/sec    1.00   1514.5±6.70µs        ? ?/sec
read int32 plain                          1.01   1028.4±9.46µs        ? ?/sec    1.00   1023.0±7.88µs        ? ?/sec
read int64 byte_stream_split              1.01  1662.3±47.66µs        ? ?/sec    1.00  1645.5±34.88µs        ? ?/sec
read int64 delta_binary                   1.00      2.5±0.09ms        ? ?/sec    1.01      2.5±0.09ms        ? ?/sec
read int64 dict                           1.01   1554.6±6.58µs        ? ?/sec    1.00   1546.6±3.50µs        ? ?/sec
read int64 plain                          1.00  1178.5±40.12µs        ? ?/sec    1.00  1183.8±47.77µs        ? ?/sec
write Binary(100) delta_byte_array        1.00     18.7±1.47ms        ? ?/sec    1.45     27.1±0.35ms        ? ?/sec
write Binary(100) delta_length            1.00     14.5±0.91ms        ? ?/sec    1.08     15.7±1.81ms        ? ?/sec
write Binary(100) dict                    1.01     17.7±0.05ms        ? ?/sec    1.00     17.5±0.04ms        ? ?/sec
write Binary(100) plain                   1.00     12.8±0.40ms        ? ?/sec    1.00     12.9±0.40ms        ? ?/sec
write Binary(20) delta_byte_array         1.00     12.7±0.04ms        ? ?/sec    1.00     12.7±0.07ms        ? ?/sec
write Binary(20) delta_length             1.00      9.1±0.05ms        ? ?/sec    1.03      9.4±0.06ms        ? ?/sec
write Binary(20) dict                     1.01     13.3±0.03ms        ? ?/sec    1.00     13.1±0.04ms        ? ?/sec
write Binary(20) plain                    1.01      8.2±0.04ms        ? ?/sec    1.00      8.2±0.02ms        ? ?/sec
write Fixed(16) byte_stream_split         1.01     27.6±0.16ms        ? ?/sec    1.00     27.3±0.15ms        ? ?/sec
write Fixed(16) delta_byte_array          1.00     64.4±0.35ms        ? ?/sec    1.01     65.1±0.22ms        ? ?/sec
write Fixed(16) dict                      1.01     22.8±0.16ms        ? ?/sec    1.00     22.5±0.12ms        ? ?/sec
write Fixed(16) plain                     1.01     22.7±0.16ms        ? ?/sec    1.00     22.5±0.17ms        ? ?/sec
write Fixed(2) byte_stream_split          1.01     21.8±0.07ms        ? ?/sec    1.00     21.5±0.05ms        ? ?/sec
write Fixed(2) delta_byte_array           1.00     63.3±0.21ms        ? ?/sec    1.01     63.8±0.29ms        ? ?/sec
write Fixed(2) dict                       1.01     22.6±0.11ms        ? ?/sec    1.00     22.4±0.08ms        ? ?/sec
write Fixed(2) plain                      1.01     22.6±0.07ms        ? ?/sec    1.00     22.4±0.11ms        ? ?/sec
write String(100) delta_byte_array        1.01     28.2±0.92ms        ? ?/sec    1.00     27.9±0.38ms        ? ?/sec
write String(100) delta_length            1.01     23.7±0.79ms        ? ?/sec    1.00     23.5±0.97ms        ? ?/sec
write String(100) dict                    1.01     17.7±0.04ms        ? ?/sec    1.00     17.5±0.03ms        ? ?/sec
write String(100) plain                   1.00     12.7±0.40ms        ? ?/sec    1.00     12.7±0.37ms        ? ?/sec
write String(20) delta_byte_array         1.00     12.9±0.07ms        ? ?/sec    1.00     12.9±0.08ms        ? ?/sec
write String(20) delta_length             1.00      9.4±0.06ms        ? ?/sec    1.00      9.5±0.03ms        ? ?/sec
write String(20) dict                     1.01     13.2±0.03ms        ? ?/sec    1.00     13.1±0.03ms        ? ?/sec
write String(20) plain                    1.00      8.1±0.04ms        ? ?/sec    1.00      8.2±0.05ms        ? ?/sec
write StringView(100) delta_byte_array    1.00     17.9±0.36ms        ? ?/sec    1.58     28.2±1.04ms        ? ?/sec
write StringView(100) delta_length        1.00     14.3±0.24ms        ? ?/sec    1.71     24.4±0.38ms        ? ?/sec
write StringView(100) dict                1.00     18.6±0.06ms        ? ?/sec    1.00     18.5±0.05ms        ? ?/sec
write StringView(100) plain               1.02     13.2±0.24ms        ? ?/sec    1.00     12.9±0.38ms        ? ?/sec
write StringView(20) delta_byte_array     1.00     12.8±0.05ms        ? ?/sec    1.00     12.9±0.08ms        ? ?/sec
write StringView(20) delta_length         1.00      9.5±0.05ms        ? ?/sec    1.00      9.5±0.06ms        ? ?/sec
write StringView(20) dict                 1.01     13.5±0.04ms        ? ?/sec    1.00     13.4±0.04ms        ? ?/sec
write StringView(20) plain                1.00      8.1±0.03ms        ? ?/sec    1.00      8.1±0.03ms        ? ?/sec
write f32 byte_stream_split               1.00      5.1±0.04ms        ? ?/sec    1.00      5.1±0.03ms        ? ?/sec
write f32 dict                            1.01     16.2±0.05ms        ? ?/sec    1.00     16.1±0.06ms        ? ?/sec
write f32 plain                           1.01      5.2±0.04ms        ? ?/sec    1.00      5.1±0.04ms        ? ?/sec
write f64 byte_stream_split               1.01      6.8±0.03ms        ? ?/sec    1.00      6.8±0.03ms        ? ?/sec
write f64 dict                            1.01     16.2±0.06ms        ? ?/sec    1.00     16.1±0.05ms        ? ?/sec
write f64 plain                           1.01      5.9±0.05ms        ? ?/sec    1.00      5.9±0.05ms        ? ?/sec
write int32 byte_stream_split             1.00      5.4±0.04ms        ? ?/sec    1.00      5.4±0.03ms        ? ?/sec
write int32 delta_binary                  1.00     10.8±0.05ms        ? ?/sec    1.00     10.8±0.09ms        ? ?/sec
write int32 dict                          1.00     16.9±0.09ms        ? ?/sec    1.00     16.9±0.08ms        ? ?/sec
write int32 plain                         1.00      5.5±0.03ms        ? ?/sec    1.00      5.5±0.03ms        ? ?/sec
write int64 byte_stream_split             1.01      6.9±0.04ms        ? ?/sec    1.00      6.9±0.04ms        ? ?/sec
write int64 delta_binary                  1.00     12.0±0.13ms        ? ?/sec    1.01     12.1±0.18ms        ? ?/sec
write int64 dict                          1.00     16.6±0.07ms        ? ?/sec    1.00     16.5±0.06ms        ? ?/sec
write int64 plain                         1.00      6.2±0.04ms        ? ?/sec    1.00      6.2±0.04ms        ? ?/sec

Resource Usage

base (merge-base)

Metric Value
Wall time 965.2s
Peak memory 8.9 GiB
Avg memory 5.5 GiB
CPU user 930.0s
CPU sys 33.1s
Peak spill 0 B

branch

Metric Value
Wall time 950.2s
Peak memory 8.9 GiB
Avg memory 5.3 GiB
CPU user 906.7s
CPU sys 39.4s
Peak spill 0 B

File an issue against this benchmark runner

@etseidl
Copy link
Copy Markdown
Contributor Author

etseidl commented May 15, 2026

run benchmark parquet_round_trip

env:
  BENCH_FILTER: write StringView

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark running (GKE) | trigger
Instance: c4a-highmem-16 (12 vCPU / 65 GiB) | Linux bench-c4463760843-161-mb5s5 6.12.68+ #1 SMP Wed Apr 1 02:23:28 UTC 2026 aarch64 GNU/Linux

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected

Comparing optional_conv_type (1517231) to fd1c5b3 (merge-base) diff
BENCH_NAME=parquet_round_trip
BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench parquet_round_trip
BENCH_FILTER=write StringView
Results will be posted here when complete


File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark completed (GKE) | trigger

Instance: c4a-highmem-16 (12 vCPU / 65 GiB)

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected
Details

group                                     main                                   optional_conv_type
-----                                     ----                                   ------------------
write StringView(100) delta_byte_array    1.01     17.5±0.03ms        ? ?/sec    1.00     17.3±0.05ms        ? ?/sec
write StringView(100) delta_length        1.01     13.7±0.03ms        ? ?/sec    1.00     13.6±0.05ms        ? ?/sec
write StringView(100) dict                1.00     18.5±0.04ms        ? ?/sec    1.00     18.5±0.08ms        ? ?/sec
write StringView(100) plain               1.00     12.6±0.02ms        ? ?/sec    1.00     12.6±0.06ms        ? ?/sec
write StringView(20) delta_byte_array     1.00     12.4±0.02ms        ? ?/sec    1.00     12.4±0.06ms        ? ?/sec
write StringView(20) delta_length         1.00      9.2±0.02ms        ? ?/sec    1.00      9.2±0.04ms        ? ?/sec
write StringView(20) dict                 1.00     13.5±0.03ms        ? ?/sec    1.00     13.4±0.04ms        ? ?/sec
write StringView(20) plain                1.00      8.0±0.01ms        ? ?/sec    1.00      8.1±0.04ms        ? ?/sec

Resource Usage

base (merge-base)

Metric Value
Wall time 85.0s
Peak memory 8.9 GiB
Avg memory 5.8 GiB
CPU user 74.9s
CPU sys 5.9s
Peak spill 0 B

branch

Metric Value
Wall time 80.0s
Peak memory 8.9 GiB
Avg memory 5.9 GiB
CPU user 74.3s
CPU sys 5.4s
Peak spill 0 B

File an issue against this benchmark runner

@etseidl
Copy link
Copy Markdown
Contributor Author

etseidl commented May 15, 2026

run benchmarks arrow_reader arrow_writer

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark running (GKE) | trigger
Instance: c4a-highmem-16 (12 vCPU / 65 GiB) | Linux bench-c4463797817-162-skqpk 6.12.68+ #1 SMP Wed Apr 1 02:23:28 UTC 2026 aarch64 GNU/Linux

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected

Comparing optional_conv_type (70752e5) to fd1c5b3 (merge-base) diff
BENCH_NAME=arrow_reader
BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench arrow_reader
BENCH_FILTER=
Results will be posted here when complete


File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark running (GKE) | trigger
Instance: c4a-highmem-16 (12 vCPU / 65 GiB) | Linux bench-c4463797817-163-sgc9j 6.12.68+ #1 SMP Wed Apr 1 02:23:28 UTC 2026 aarch64 GNU/Linux

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected

Comparing optional_conv_type (70752e5) to fd1c5b3 (merge-base) diff
BENCH_NAME=arrow_writer
BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench arrow_writer
BENCH_FILTER=
Results will be posted here when complete


File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark completed (GKE) | trigger

Instance: c4a-highmem-16 (12 vCPU / 65 GiB)

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected
Details

group                                              main                                   optional_conv_type
-----                                              ----                                   ------------------
bool/bloom_filter                                  1.00     13.0±0.07ms    19.2 MB/sec    1.00     13.1±0.07ms    19.1 MB/sec
bool/cdc                                           1.00     15.8±0.08ms    15.8 MB/sec    1.01     16.0±0.05ms    15.7 MB/sec
bool/default                                       1.00     11.0±0.07ms    22.8 MB/sec    1.00     10.9±0.04ms    22.9 MB/sec
bool/parquet_2                                     1.00     14.7±0.08ms    17.0 MB/sec    1.00     14.8±0.06ms    16.9 MB/sec
bool/zstd                                          1.00     11.5±0.06ms    21.8 MB/sec    1.00     11.5±0.05ms    21.8 MB/sec
bool/zstd_parquet_2                                1.00     15.1±0.09ms    16.5 MB/sec    1.00     15.2±0.07ms    16.5 MB/sec
bool_non_null/bloom_filter                         1.00      7.1±0.03ms    17.6 MB/sec    1.01      7.2±0.02ms    17.5 MB/sec
bool_non_null/cdc                                  1.00      6.9±0.03ms    18.2 MB/sec    1.00      6.9±0.03ms    18.2 MB/sec
bool_non_null/default                              1.00      4.4±0.02ms    28.7 MB/sec    1.00      4.4±0.02ms    28.7 MB/sec
bool_non_null/parquet_2                            1.00      9.1±0.04ms    13.7 MB/sec    1.01      9.2±0.03ms    13.7 MB/sec
bool_non_null/zstd                                 1.00      4.7±0.02ms    26.6 MB/sec    1.00      4.7±0.02ms    26.6 MB/sec
bool_non_null/zstd_parquet_2                       1.00      9.5±0.03ms    13.1 MB/sec    1.01      9.6±0.03ms    13.0 MB/sec
float_with_nans/bloom_filter                       1.00     94.0±0.35ms   148.9 MB/sec    1.01     94.9±0.42ms   147.5 MB/sec
float_with_nans/cdc                                1.01     82.7±1.75ms   169.2 MB/sec    1.00     82.0±0.21ms   170.8 MB/sec
float_with_nans/default                            1.00     74.4±0.26ms   188.2 MB/sec    1.00     74.5±0.25ms   187.9 MB/sec
float_with_nans/parquet_2                          1.00     95.0±0.43ms   147.3 MB/sec    1.00     95.4±0.39ms   146.8 MB/sec
float_with_nans/zstd                               1.00    112.2±0.26ms   124.8 MB/sec    1.00    112.3±0.27ms   124.7 MB/sec
float_with_nans/zstd_parquet_2                     1.00    132.4±0.40ms   105.7 MB/sec    1.00    132.6±0.39ms   105.6 MB/sec
list_primitive/bloom_filter                        1.03    343.5±7.50ms  1587.5 MB/sec    1.00    334.3±1.71ms  1631.5 MB/sec
list_primitive/cdc                                 1.00    365.1±2.39ms  1493.7 MB/sec    1.00    366.1±6.62ms  1489.8 MB/sec
list_primitive/default                             1.04    262.1±7.87ms     2.0 GB/sec    1.00    252.7±2.26ms     2.1 GB/sec
list_primitive/parquet_2                           1.03    282.6±7.96ms  1930.1 MB/sec    1.00    274.6±0.72ms  1985.8 MB/sec
list_primitive/zstd                                1.02    512.7±7.72ms  1063.7 MB/sec    1.00    501.6±2.55ms  1087.3 MB/sec
list_primitive/zstd_parquet_2                      1.02    506.3±8.14ms  1077.2 MB/sec    1.00    498.0±0.62ms  1095.2 MB/sec
list_primitive_non_null/bloom_filter               1.00    423.5±5.73ms  1285.2 MB/sec    1.09   462.2±11.95ms  1177.4 MB/sec
list_primitive_non_null/cdc                        1.01    442.3±8.81ms  1230.5 MB/sec    1.00    439.4±8.89ms  1238.5 MB/sec
list_primitive_non_null/default                    1.00    284.4±4.35ms  1913.5 MB/sec    1.07   304.8±17.32ms  1785.4 MB/sec
list_primitive_non_null/parquet_2                  1.00    303.6±8.08ms  1792.6 MB/sec    1.10   333.1±25.66ms  1633.9 MB/sec
list_primitive_non_null/zstd                       1.00    706.0±6.16ms   770.8 MB/sec    1.01    714.5±9.00ms   761.7 MB/sec
list_primitive_non_null/zstd_parquet_2             1.00    678.2±3.59ms   802.5 MB/sec    1.01    683.7±2.82ms   796.0 MB/sec
list_primitive_sparse_99pct_null/bloom_filter      1.01     11.4±0.12ms     3.2 GB/sec    1.00     11.2±0.06ms     3.3 GB/sec
list_primitive_sparse_99pct_null/cdc               1.01     22.6±0.12ms  1651.8 MB/sec    1.00     22.5±0.10ms  1663.6 MB/sec
list_primitive_sparse_99pct_null/default           1.01     11.0±0.12ms     3.3 GB/sec    1.00     10.9±0.04ms     3.4 GB/sec
list_primitive_sparse_99pct_null/parquet_2         1.01     11.0±0.13ms     3.3 GB/sec    1.00     10.9±0.04ms     3.4 GB/sec
list_primitive_sparse_99pct_null/zstd              1.01     12.9±0.12ms     2.8 GB/sec    1.00     12.7±0.05ms     2.9 GB/sec
list_primitive_sparse_99pct_null/zstd_parquet_2    1.01     11.1±0.13ms     3.3 GB/sec    1.00     11.0±0.04ms     3.3 GB/sec
primitive/bloom_filter                             1.00    151.6±0.65ms   296.0 MB/sec    1.00    151.5±0.73ms   296.2 MB/sec
primitive/cdc                                      1.00    158.9±0.61ms   282.4 MB/sec    1.00    158.7±0.62ms   282.8 MB/sec
primitive/default                                  1.00    118.5±0.52ms   378.8 MB/sec    1.00    118.3±0.53ms   379.4 MB/sec
primitive/parquet_2                                1.00    134.0±0.60ms   334.9 MB/sec    1.00    133.3±0.41ms   336.5 MB/sec
primitive/zstd                                     1.00    148.1±0.51ms   302.9 MB/sec    1.00    148.0±0.50ms   303.2 MB/sec
primitive/zstd_parquet_2                           1.00    166.6±0.49ms   269.4 MB/sec    1.00    166.9±0.53ms   268.9 MB/sec
primitive_all_null/bloom_filter                    1.00    909.5±3.51µs    48.2 GB/sec    1.00    912.7±3.47µs    48.0 GB/sec
primitive_all_null/cdc                             1.00     18.8±0.25ms     2.3 GB/sec    1.00     18.8±0.25ms     2.3 GB/sec
primitive_all_null/default                         1.00    277.1±0.76µs   158.1 GB/sec    1.00    277.9±1.23µs   157.7 GB/sec
primitive_all_null/parquet_2                       1.00    278.0±0.97µs   157.6 GB/sec    1.00    277.9±1.96µs   157.7 GB/sec
primitive_all_null/zstd                            1.00    390.7±0.79µs   112.2 GB/sec    1.00    389.8±1.45µs   112.4 GB/sec
primitive_all_null/zstd_parquet_2                  1.01    355.8±1.05µs   123.2 GB/sec    1.00    352.3±1.50µs   124.4 GB/sec
primitive_non_null/bloom_filter                    1.00    109.5±0.46ms   401.7 MB/sec    1.00    109.7±0.34ms   401.0 MB/sec
primitive_non_null/cdc                             1.00     90.3±0.36ms   487.4 MB/sec    1.00     90.6±0.29ms   485.5 MB/sec
primitive_non_null/default                         1.00     67.8±0.25ms   648.8 MB/sec    1.00     67.6±0.29ms   650.8 MB/sec
primitive_non_null/parquet_2                       1.00     89.5±0.28ms   491.6 MB/sec    1.00     89.4±0.26ms   492.3 MB/sec
primitive_non_null/zstd                            1.00    105.0±1.02ms   418.9 MB/sec    1.00    104.6±0.28ms   420.8 MB/sec
primitive_non_null/zstd_parquet_2                  1.04    129.1±2.57ms   340.9 MB/sec    1.00    123.5±1.10ms   356.2 MB/sec
primitive_sparse_99pct_null/bloom_filter           1.00     18.2±0.14ms     2.4 GB/sec    1.01     18.3±0.19ms     2.4 GB/sec
primitive_sparse_99pct_null/cdc                    1.00     35.5±0.35ms  1264.9 MB/sec    1.00     35.4±0.32ms  1267.5 MB/sec
primitive_sparse_99pct_null/default                1.00     16.8±0.07ms     2.6 GB/sec    1.00     16.8±0.06ms     2.6 GB/sec
primitive_sparse_99pct_null/parquet_2              1.00     16.8±0.06ms     2.6 GB/sec    1.00     16.8±0.06ms     2.6 GB/sec
primitive_sparse_99pct_null/zstd                   1.00     20.1±0.08ms     2.2 GB/sec    1.00     20.1±0.07ms     2.2 GB/sec
primitive_sparse_99pct_null/zstd_parquet_2         1.00     18.7±0.07ms     2.3 GB/sec    1.00     18.7±0.10ms     2.3 GB/sec
string/bloom_filter                                1.06   220.9±20.10ms     2.3 GB/sec    1.00    209.1±1.39ms     2.4 GB/sec
string/cdc                                         1.00    221.4±4.59ms     2.3 GB/sec    1.00    222.1±5.95ms     2.3 GB/sec
string/default                                     1.00   125.5±19.41ms     4.1 GB/sec    1.04   129.9±19.83ms     3.9 GB/sec
string/parquet_2                                   1.00    112.2±6.65ms     4.6 GB/sec    1.13    126.2±0.99ms     4.1 GB/sec
string/zstd                                        1.00    416.9±1.90ms  1257.6 MB/sec    1.07   444.8±17.59ms  1178.7 MB/sec
string/zstd_parquet_2                              1.00    402.8±6.79ms  1301.6 MB/sec    1.05    424.5±7.60ms  1234.9 MB/sec
string_and_binary_view/bloom_filter                1.01     65.4±0.39ms   493.0 MB/sec    1.00     65.1±0.32ms   495.7 MB/sec
string_and_binary_view/cdc                         1.00     58.6±0.26ms   550.2 MB/sec    1.00     58.7±0.22ms   549.3 MB/sec
string_and_binary_view/default                     1.00     48.3±0.19ms   667.9 MB/sec    1.00     48.2±0.24ms   668.7 MB/sec
string_and_binary_view/parquet_2                   1.00     59.2±0.20ms   544.6 MB/sec    1.00     59.4±0.20ms   543.4 MB/sec
string_and_binary_view/zstd                        1.00     85.0±0.23ms   379.5 MB/sec    1.00     85.1±0.17ms   379.2 MB/sec
string_and_binary_view/zstd_parquet_2              1.00     73.1±0.23ms   441.1 MB/sec    1.00     73.3±0.21ms   439.7 MB/sec
string_dictionary/bloom_filter                     1.00     92.9±1.02ms     2.8 GB/sec    1.01     94.2±0.77ms     2.7 GB/sec
string_dictionary/cdc                              1.06     54.3±0.61ms     4.8 GB/sec    1.00     51.2±0.42ms     5.0 GB/sec
string_dictionary/default                          1.00     47.6±0.77ms     5.4 GB/sec    1.04     49.3±0.42ms     5.2 GB/sec
string_dictionary/parquet_2                        1.01     55.0±0.28ms     4.7 GB/sec    1.00     54.3±0.37ms     4.8 GB/sec
string_dictionary/zstd                             1.00    210.2±1.36ms  1256.6 MB/sec    1.00    209.9±0.79ms  1258.1 MB/sec
string_dictionary/zstd_parquet_2                   1.00    200.0±0.23ms  1320.8 MB/sec    1.00    199.1±0.19ms  1326.5 MB/sec
string_non_null/bloom_filter                       1.02   263.4±12.95ms  1989.3 MB/sec    1.00   258.3±12.12ms  2028.7 MB/sec
string_non_null/cdc                                1.00    276.4±8.16ms  1896.0 MB/sec    1.00   275.3±10.25ms  1903.5 MB/sec
string_non_null/default                            1.04   141.6±11.51ms     3.6 GB/sec    1.00   135.8±12.11ms     3.8 GB/sec
string_non_null/parquet_2                          1.04    142.2±6.52ms     3.6 GB/sec    1.00    136.5±7.22ms     3.7 GB/sec
string_non_null/zstd                               1.00    535.6±1.96ms   978.3 MB/sec    1.00    535.6±2.21ms   978.3 MB/sec
string_non_null/zstd_parquet_2                     1.00    506.4±1.15ms  1034.7 MB/sec    1.00    505.6±0.60ms  1036.3 MB/sec
struct_all_null/bloom_filter                       1.01    384.2±1.96µs    41.0 GB/sec    1.00    382.1±2.15µs    41.2 GB/sec
struct_all_null/cdc                                1.00      7.7±0.15ms     2.0 GB/sec    1.00      7.7±0.06ms     2.0 GB/sec
struct_all_null/default                            1.00    120.2±0.20µs   131.0 GB/sec    1.00    119.9±0.43µs   131.3 GB/sec
struct_all_null/parquet_2                          1.01    120.2±0.45µs   131.0 GB/sec    1.00    119.4±0.64µs   131.9 GB/sec
struct_all_null/zstd                               1.00    167.2±0.32µs    94.2 GB/sec    1.00    166.9±0.42µs    94.3 GB/sec
struct_all_null/zstd_parquet_2                     1.02    154.7±0.48µs   101.8 GB/sec    1.00    152.4±0.67µs   103.3 GB/sec
struct_non_null/bloom_filter                       1.00     47.5±0.18ms   337.0 MB/sec    1.00     47.5±0.19ms   336.9 MB/sec
struct_non_null/cdc                                1.00     45.8±0.15ms   349.1 MB/sec    1.00     45.7±0.20ms   349.7 MB/sec
struct_non_null/default                            1.00     32.3±0.13ms   494.8 MB/sec    1.00     32.3±0.13ms   495.9 MB/sec
struct_non_null/parquet_2                          1.06     43.4±1.86ms   368.3 MB/sec    1.00     41.1±0.16ms   389.5 MB/sec
struct_non_null/zstd                               1.00     41.1±0.12ms   389.1 MB/sec    1.00     41.0±0.12ms   390.7 MB/sec
struct_non_null/zstd_parquet_2                     1.02     56.0±1.87ms   285.6 MB/sec    1.00     55.1±0.16ms   290.1 MB/sec
struct_sparse_99pct_null/bloom_filter              1.00      6.4±0.03ms     2.4 GB/sec    1.00      6.5±0.04ms     2.4 GB/sec
struct_sparse_99pct_null/cdc                       1.00     13.3±0.08ms  1215.4 MB/sec    1.00     13.3±0.08ms  1215.5 MB/sec
struct_sparse_99pct_null/default                   1.00      5.9±0.02ms     2.7 GB/sec    1.00      5.9±0.02ms     2.7 GB/sec
struct_sparse_99pct_null/parquet_2                 1.00      5.9±0.02ms     2.7 GB/sec    1.01      6.0±0.02ms     2.6 GB/sec
struct_sparse_99pct_null/zstd                      1.00      7.3±0.03ms     2.2 GB/sec    1.00      7.3±0.03ms     2.2 GB/sec
struct_sparse_99pct_null/zstd_parquet_2            1.00      6.7±0.02ms     2.3 GB/sec    1.00      6.7±0.02ms     2.4 GB/sec

Resource Usage

base (merge-base)

Metric Value
Wall time 1935.4s
Peak memory 6.6 GiB
Avg memory 6.4 GiB
CPU user 1891.7s
CPU sys 43.0s
Peak spill 0 B

branch

Metric Value
Wall time 1940.4s
Peak memory 6.6 GiB
Avg memory 6.3 GiB
CPU user 1876.1s
CPU sys 59.7s
Peak spill 0 B

File an issue against this benchmark runner

@adriangbot
Copy link
Copy Markdown

🤖 Arrow criterion benchmark completed (GKE) | trigger

Instance: c4a-highmem-16 (12 vCPU / 65 GiB)

CPU Details (lscpu)
Architecture:                            aarch64
CPU op-mode(s):                          64-bit
Byte Order:                              Little Endian
CPU(s):                                  16
On-line CPU(s) list:                     0-15
Vendor ID:                               ARM
Model name:                              Neoverse-V2
Model:                                   1
Thread(s) per core:                      1
Core(s) per cluster:                     16
Socket(s):                               -
Cluster(s):                              1
Stepping:                                r0p1
BogoMIPS:                                2000.00
Flags:                                   fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache:                               1 MiB (16 instances)
L1i cache:                               1 MiB (16 instances)
L2 cache:                                32 MiB (16 instances)
L3 cache:                                80 MiB (1 instance)
NUMA node(s):                            1
NUMA node0 CPU(s):                       0-15
Vulnerability Gather data sampling:      Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit:             Not affected
Vulnerability L1tf:                      Not affected
Vulnerability Mds:                       Not affected
Vulnerability Meltdown:                  Not affected
Vulnerability Mmio stale data:           Not affected
Vulnerability Reg file data sampling:    Not affected
Vulnerability Retbleed:                  Not affected
Vulnerability Spec rstack overflow:      Not affected
Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:                Mitigation; __user pointer sanitization
Vulnerability Spectre v2:                Mitigation; CSV2, BHB
Vulnerability Srbds:                     Not affected
Vulnerability Tsa:                       Not affected
Vulnerability Tsx async abort:           Not affected
Vulnerability Vmscape:                   Not affected
Details

group                                                                                                      main                                   optional_conv_type
-----                                                                                                      ----                                   ------------------
arrow_array_reader/BYTE_ARRAY/Decimal128Array/plain encoded, mandatory, no NULLs                           1.00    834.2±9.88µs        ? ?/sec    1.00    834.0±7.87µs        ? ?/sec
arrow_array_reader/BYTE_ARRAY/Decimal128Array/plain encoded, optional, half NULLs                          1.00    945.6±5.16µs        ? ?/sec    1.00    947.3±4.41µs        ? ?/sec
arrow_array_reader/BYTE_ARRAY/Decimal128Array/plain encoded, optional, no NULLs                            1.00   838.5±10.01µs        ? ?/sec    1.00    836.5±9.22µs        ? ?/sec
arrow_array_reader/BinaryArray/dictionary encoded, mandatory, no NULLs                                     1.00    274.8±0.18µs        ? ?/sec    1.02    279.0±0.17µs        ? ?/sec
arrow_array_reader/BinaryArray/dictionary encoded, optional, half NULLs                                    1.00    384.8±0.62µs        ? ?/sec    1.00    386.4±0.51µs        ? ?/sec
arrow_array_reader/BinaryArray/dictionary encoded, optional, no NULLs                                      1.03    278.5±0.20µs        ? ?/sec    1.00    271.1±0.19µs        ? ?/sec
arrow_array_reader/BinaryArray/plain encoded, mandatory, no NULLs                                          1.00    407.2±4.84µs        ? ?/sec    1.00    406.9±6.44µs        ? ?/sec
arrow_array_reader/BinaryArray/plain encoded, optional, half NULLs                                         1.00    462.1±3.40µs        ? ?/sec    1.01    465.2±4.31µs        ? ?/sec
arrow_array_reader/BinaryArray/plain encoded, optional, no NULLs                                           1.00    410.6±4.65µs        ? ?/sec    1.00    411.1±6.49µs        ? ?/sec
arrow_array_reader/BinaryViewArray/dictionary encoded, mandatory, no NULLs                                 1.00     79.4±0.05µs        ? ?/sec    1.00     79.6±0.05µs        ? ?/sec
arrow_array_reader/BinaryViewArray/dictionary encoded, optional, half NULLs                                1.00    107.6±0.09µs        ? ?/sec    1.00    107.7±0.12µs        ? ?/sec
arrow_array_reader/BinaryViewArray/dictionary encoded, optional, no NULLs                                  1.00     83.2±0.04µs        ? ?/sec    1.00     83.6±0.05µs        ? ?/sec
arrow_array_reader/BinaryViewArray/plain encoded, mandatory, no NULLs                                      1.00    146.0±0.65µs        ? ?/sec    1.00    145.5±0.52µs        ? ?/sec
arrow_array_reader/BinaryViewArray/plain encoded, mandatory, no NULLs, short string                        1.00    141.0±0.42µs        ? ?/sec    1.01    142.0±0.36µs        ? ?/sec
arrow_array_reader/BinaryViewArray/plain encoded, optional, half NULLs                                     1.01    145.5±1.81µs        ? ?/sec    1.00    144.6±0.23µs        ? ?/sec
arrow_array_reader/BinaryViewArray/plain encoded, optional, no NULLs                                       1.01    151.0±0.33µs        ? ?/sec    1.00    149.9±0.22µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/byte_stream_split encoded, mandatory, no NULLs     1.00    965.4±0.55µs        ? ?/sec    1.00    965.1±0.84µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/byte_stream_split encoded, optional, half NULLs    1.00    669.8±0.43µs        ? ?/sec    1.01    673.7±0.45µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/byte_stream_split encoded, optional, no NULLs      1.00    969.5±0.61µs        ? ?/sec    1.00    969.9±0.70µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/plain encoded, mandatory, no NULLs                 1.00    189.1±0.25µs        ? ?/sec    1.00    188.9±0.16µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/plain encoded, optional, half NULLs                1.00    292.3±0.39µs        ? ?/sec    1.00    292.2±0.20µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Decimal128Array/plain encoded, optional, no NULLs                  1.00    194.5±0.25µs        ? ?/sec    1.00    193.9±0.33µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/byte_stream_split encoded, mandatory, no NULLs        1.00    127.2±0.28µs        ? ?/sec    1.01    128.9±0.29µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/byte_stream_split encoded, optional, half NULLs       1.01    183.8±1.50µs        ? ?/sec    1.00    182.2±0.21µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/byte_stream_split encoded, optional, no NULLs         1.00    132.1±0.26µs        ? ?/sec    1.01    132.9±0.24µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/plain encoded, mandatory, no NULLs                    1.01     60.3±0.07µs        ? ?/sec    1.00     59.9±0.05µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/plain encoded, optional, half NULLs                   1.01    147.0±0.08µs        ? ?/sec    1.00    146.3±0.13µs        ? ?/sec
arrow_array_reader/FIXED_LEN_BYTE_ARRAY/Float16Array/plain encoded, optional, no NULLs                     1.02     64.0±0.06µs        ? ?/sec    1.00     62.8±0.05µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/byte_stream_split encoded, mandatory, no NULLs                    1.00    801.6±0.46µs        ? ?/sec    1.07   855.6±26.21µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/byte_stream_split encoded, optional, half NULLs                   1.00    507.4±0.41µs        ? ?/sec    1.00    509.1±0.37µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/byte_stream_split encoded, optional, no NULLs                     1.02   820.6±13.02µs        ? ?/sec    1.00    805.4±0.45µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/plain encoded, mandatory, no NULLs                                1.00     22.2±0.05µs        ? ?/sec    1.07     23.7±0.05µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/plain encoded, optional, half NULLs                               1.00    128.7±0.19µs        ? ?/sec    1.01    129.6±0.13µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(16)/plain encoded, optional, no NULLs                                 1.02     27.6±0.06µs        ? ?/sec    1.00     27.1±0.07µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/byte_stream_split encoded, mandatory, no NULLs                     1.00     74.7±0.20µs        ? ?/sec    1.02     76.0±0.57µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/byte_stream_split encoded, optional, half NULLs                    1.00    128.0±0.16µs        ? ?/sec    1.00    127.5±0.15µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/byte_stream_split encoded, optional, no NULLs                      1.02     80.2±0.68µs        ? ?/sec    1.00     78.7±0.30µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/plain encoded, mandatory, no NULLs                                 1.01      5.3±0.02µs        ? ?/sec    1.00      5.2±0.02µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/plain encoded, optional, half NULLs                                1.00     92.1±0.07µs        ? ?/sec    1.00     92.3±0.08µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(2)/plain encoded, optional, no NULLs                                  1.01      8.8±0.02µs        ? ?/sec    1.00      8.7±0.01µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/byte_stream_split encoded, mandatory, no NULLs                     1.00    147.5±0.38µs        ? ?/sec    1.01    148.8±0.90µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/byte_stream_split encoded, optional, half NULLs                    1.01    198.9±0.27µs        ? ?/sec    1.00    197.7±0.42µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/byte_stream_split encoded, optional, no NULLs                      1.00    149.8±0.36µs        ? ?/sec    1.02    152.1±0.49µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/plain encoded, mandatory, no NULLs                                 1.00      7.5±0.01µs        ? ?/sec    1.00      7.5±0.02µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/plain encoded, optional, half NULLs                                1.01    127.6±0.10µs        ? ?/sec    1.00    126.7±0.09µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(4)/plain encoded, optional, no NULLs                                  1.00     11.1±0.02µs        ? ?/sec    1.00     11.1±0.01µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/byte_stream_split encoded, mandatory, no NULLs                     1.00    298.6±2.36µs        ? ?/sec    1.05   312.3±29.18µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/byte_stream_split encoded, optional, half NULLs                    1.00    264.5±0.53µs        ? ?/sec    1.01    265.9±0.42µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/byte_stream_split encoded, optional, no NULLs                      1.03   319.1±24.20µs        ? ?/sec    1.00    308.8±3.71µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/plain encoded, mandatory, no NULLs                                 1.00     12.4±0.05µs        ? ?/sec    1.03     12.8±0.03µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/plain encoded, optional, half NULLs                                1.00    122.1±0.09µs        ? ?/sec    1.01    123.3±0.10µs        ? ?/sec
arrow_array_reader/FixedLenByteArray(8)/plain encoded, optional, no NULLs                                  1.00     15.7±0.02µs        ? ?/sec    1.01     15.9±0.02µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed increasing value                                    1.00     85.5±0.45µs        ? ?/sec    1.02     87.3±0.35µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed single value                                        1.00     77.8±0.44µs        ? ?/sec    1.00     78.2±0.26µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip increasing value                               1.00     50.0±0.21µs        ? ?/sec    1.01     50.7±0.12µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip single value                                   1.00     45.3±0.18µs        ? ?/sec    1.01     45.6±0.15µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip stepped increasing value                       1.00     73.3±0.09µs        ? ?/sec    1.00     73.6±0.05µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip, mandatory, no NULLs                           1.00     88.1±0.20µs        ? ?/sec    1.01     88.6±0.10µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip, optional, half NULLs                          1.00     89.4±0.26µs        ? ?/sec    1.00     89.6±0.12µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed skip, optional, no NULLs                            1.00     90.3±0.17µs        ? ?/sec    1.00     90.6±0.12µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed stepped increasing value                            1.00    105.7±0.18µs        ? ?/sec    1.01    106.4±0.14µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed, mandatory, no NULLs                                1.00    124.7±0.62µs        ? ?/sec    1.00    125.3±0.92µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed, optional, half NULLs                               1.00    147.2±0.20µs        ? ?/sec    1.00    147.3±0.22µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/binary packed, optional, no NULLs                                 1.00    127.9±0.41µs        ? ?/sec    1.01    128.9±0.13µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/byte_stream_split encoded, mandatory, no NULLs                    1.00     54.0±0.04µs        ? ?/sec    1.01     54.7±0.55µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/byte_stream_split encoded, optional, half NULLs                   1.00    110.7±0.12µs        ? ?/sec    1.00    111.2±0.12µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/byte_stream_split encoded, optional, no NULLs                     1.01     57.5±0.04µs        ? ?/sec    1.00     57.2±0.05µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/dictionary encoded, mandatory, no NULLs                           1.01     84.3±0.07µs        ? ?/sec    1.00     83.7±0.05µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/dictionary encoded, optional, half NULLs                          1.01    128.6±0.15µs        ? ?/sec    1.00    127.9±0.16µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/dictionary encoded, optional, no NULLs                            1.00     87.8±0.04µs        ? ?/sec    1.00     87.5±0.08µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/plain encoded, mandatory, no NULLs                                1.02     48.8±0.51µs        ? ?/sec    1.00     47.7±0.04µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/plain encoded, optional, half NULLs                               1.00    108.0±0.45µs        ? ?/sec    1.00    108.2±0.13µs        ? ?/sec
arrow_array_reader/INT32/Decimal128Array/plain encoded, optional, no NULLs                                 1.00     50.6±0.05µs        ? ?/sec    1.00     50.7±0.04µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed increasing value                                    1.01     78.2±0.21µs        ? ?/sec    1.00     77.6±0.22µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed single value                                        1.00     74.4±0.17µs        ? ?/sec    1.00     74.2±0.18µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip increasing value                               1.01     43.5±0.17µs        ? ?/sec    1.00     43.3±0.15µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip single value                                   1.01     41.8±0.06µs        ? ?/sec    1.00     41.5±0.10µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip stepped increasing value                       1.00     66.9±0.09µs        ? ?/sec    1.00     67.0±0.12µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip, mandatory, no NULLs                           1.00     79.4±0.09µs        ? ?/sec    1.00     79.1±0.06µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip, optional, half NULLs                          1.00     90.2±0.07µs        ? ?/sec    1.00     89.8±0.08µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed skip, optional, no NULLs                            1.00     81.3±0.07µs        ? ?/sec    1.00     81.3±0.08µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed stepped increasing value                            1.00     98.8±0.15µs        ? ?/sec    1.00     98.9±0.47µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed, mandatory, no NULLs                                1.00    114.2±0.18µs        ? ?/sec    1.00    114.0±0.13µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed, optional, half NULLs                               1.01    152.1±0.16µs        ? ?/sec    1.00    151.3±0.10µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/binary packed, optional, no NULLs                                 1.01    118.5±0.21µs        ? ?/sec    1.00    117.8±0.11µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/byte_stream_split encoded, mandatory, no NULLs                    1.01     83.4±0.08µs        ? ?/sec    1.00     82.9±0.28µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/byte_stream_split encoded, optional, half NULLs                   1.01    136.3±0.23µs        ? ?/sec    1.00    135.4±0.11µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/byte_stream_split encoded, optional, no NULLs                     1.01     88.4±0.13µs        ? ?/sec    1.00     87.5±0.39µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/dictionary encoded, mandatory, no NULLs                           1.01     87.0±0.19µs        ? ?/sec    1.00     86.1±0.08µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/dictionary encoded, optional, half NULLs                          1.02    140.9±0.24µs        ? ?/sec    1.00    138.8±0.23µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/dictionary encoded, optional, no NULLs                            1.00     90.4±0.11µs        ? ?/sec    1.00     90.2±0.24µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/plain encoded, mandatory, no NULLs                                1.00     54.3±0.07µs        ? ?/sec    1.00     54.6±0.05µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/plain encoded, optional, half NULLs                               1.01    121.2±0.11µs        ? ?/sec    1.00    120.2±0.10µs        ? ?/sec
arrow_array_reader/INT64/Decimal128Array/plain encoded, optional, no NULLs                                 1.00     58.5±0.06µs        ? ?/sec    1.00     58.7±0.07µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed increasing value                                               1.00     53.3±0.44µs        ? ?/sec    1.01     53.7±0.30µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed single value                                                   1.00     44.8±0.22µs        ? ?/sec    1.01     45.2±0.18µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip increasing value                                          1.00     33.2±0.25µs        ? ?/sec    1.01     33.6±0.07µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip single value                                              1.00     28.5±0.11µs        ? ?/sec    1.01     28.8±0.14µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip stepped increasing value                                  1.00     56.2±0.08µs        ? ?/sec    1.00     56.3±0.07µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip, mandatory, no NULLs                                      1.00     71.2±0.08µs        ? ?/sec    1.01     71.7±0.06µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip, optional, half NULLs                                     1.00     72.3±0.10µs        ? ?/sec    1.00     72.2±0.09µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed skip, optional, no NULLs                                       1.00     73.2±0.11µs        ? ?/sec    1.00     73.4±0.07µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed stepped increasing value                                       1.00     72.7±0.18µs        ? ?/sec    1.00     72.9±0.11µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed, mandatory, no NULLs                                           1.00     91.2±0.15µs        ? ?/sec    1.01     91.7±0.12µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed, optional, half NULLs                                          1.00    113.5±0.17µs        ? ?/sec    1.00    113.8±0.20µs        ? ?/sec
arrow_array_reader/Int16Array/binary packed, optional, no NULLs                                            1.00     94.9±0.20µs        ? ?/sec    1.00     95.3±0.15µs        ? ?/sec
arrow_array_reader/Int16Array/byte_stream_split encoded, mandatory, no NULLs                               1.00     20.9±0.05µs        ? ?/sec    1.00     20.9±0.06µs        ? ?/sec
arrow_array_reader/Int16Array/byte_stream_split encoded, optional, half NULLs                              1.00     77.3±0.13µs        ? ?/sec    1.01     78.2±0.09µs        ? ?/sec
arrow_array_reader/Int16Array/byte_stream_split encoded, optional, no NULLs                                1.00     24.6±0.02µs        ? ?/sec    1.02     25.1±0.03µs        ? ?/sec
arrow_array_reader/Int16Array/dictionary encoded, mandatory, no NULLs                                      1.01     51.2±0.03µs        ? ?/sec    1.00     50.8±0.06µs        ? ?/sec
arrow_array_reader/Int16Array/dictionary encoded, optional, half NULLs                                     1.00     95.2±0.12µs        ? ?/sec    1.00     95.1±0.13µs        ? ?/sec
arrow_array_reader/Int16Array/dictionary encoded, optional, no NULLs                                       1.01     54.9±0.04µs        ? ?/sec    1.00     54.6±0.04µs        ? ?/sec
arrow_array_reader/Int16Array/plain encoded, mandatory, no NULLs                                           1.00     13.9±0.04µs        ? ?/sec    1.00     13.9±0.03µs        ? ?/sec
arrow_array_reader/Int16Array/plain encoded, optional, half NULLs                                          1.00     75.2±0.14µs        ? ?/sec    1.00     74.9±0.07µs        ? ?/sec
arrow_array_reader/Int16Array/plain encoded, optional, no NULLs                                            1.00     17.4±0.02µs        ? ?/sec    1.02     17.8±0.03µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed increasing value                                               1.00     49.8±0.49µs        ? ?/sec    1.01     50.1±0.44µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed single value                                                   1.00     41.4±0.24µs        ? ?/sec    1.00     41.6±0.21µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip increasing value                                          1.00     31.4±0.17µs        ? ?/sec    1.00     31.5±0.17µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip single value                                              1.00     26.7±0.13µs        ? ?/sec    1.01     26.9±0.15µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip stepped increasing value                                  1.00     54.3±0.05µs        ? ?/sec    1.00     54.4±0.03µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip, mandatory, no NULLs                                      1.00     69.5±0.11µs        ? ?/sec    1.00     69.6±0.10µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip, optional, half NULLs                                     1.00     71.1±0.11µs        ? ?/sec    1.00     70.9±0.12µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed skip, optional, no NULLs                                       1.00     72.0±0.12µs        ? ?/sec    1.00     71.9±0.12µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed stepped increasing value                                       1.00     68.9±0.12µs        ? ?/sec    1.00     69.0±0.10µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed, mandatory, no NULLs                                           1.00     87.5±0.25µs        ? ?/sec    1.01     88.1±0.17µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed, optional, half NULLs                                          1.00    111.0±0.20µs        ? ?/sec    1.01    111.7±0.24µs        ? ?/sec
arrow_array_reader/Int32Array/binary packed, optional, no NULLs                                            1.00     91.6±0.24µs        ? ?/sec    1.01     92.2±0.18µs        ? ?/sec
arrow_array_reader/Int32Array/byte_stream_split encoded, mandatory, no NULLs                               1.00     17.4±0.03µs        ? ?/sec    1.00     17.4±0.02µs        ? ?/sec
arrow_array_reader/Int32Array/byte_stream_split encoded, optional, half NULLs                              1.00     74.7±0.09µs        ? ?/sec    1.00     75.0±0.07µs        ? ?/sec
arrow_array_reader/Int32Array/byte_stream_split encoded, optional, no NULLs                                1.01     21.2±0.03µs        ? ?/sec    1.00     20.9±0.02µs        ? ?/sec
arrow_array_reader/Int32Array/dictionary encoded, mandatory, no NULLs                                      1.01     47.7±0.05µs        ? ?/sec    1.00     47.2±0.04µs        ? ?/sec
arrow_array_reader/Int32Array/dictionary encoded, optional, half NULLs                                     1.00     91.8±0.12µs        ? ?/sec    1.00     92.0±0.16µs        ? ?/sec
arrow_array_reader/Int32Array/dictionary encoded, optional, no NULLs                                       1.00     51.4±0.05µs        ? ?/sec    1.00     51.3±0.03µs        ? ?/sec
arrow_array_reader/Int32Array/plain encoded, mandatory, no NULLs                                           1.01     10.0±0.05µs        ? ?/sec    1.00      9.9±0.03µs        ? ?/sec
arrow_array_reader/Int32Array/plain encoded, optional, half NULLs                                          1.00     71.7±0.10µs        ? ?/sec    1.00     71.9±0.06µs        ? ?/sec
arrow_array_reader/Int32Array/plain encoded, optional, no NULLs                                            1.01     13.7±0.03µs        ? ?/sec    1.00     13.6±0.02µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed increasing value                                               1.00     40.3±0.13µs        ? ?/sec    1.00     40.2±0.12µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed single value                                                   1.00     37.6±0.18µs        ? ?/sec    1.00     37.5±0.19µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip increasing value                                          1.00     24.2±0.07µs        ? ?/sec    1.00     24.1±0.07µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip single value                                              1.01     22.6±0.06µs        ? ?/sec    1.00     22.4±0.05µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip stepped increasing value                                  1.00     47.9±0.04µs        ? ?/sec    1.00     48.0±0.05µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip, mandatory, no NULLs                                      1.00     60.2±0.08µs        ? ?/sec    1.00     60.2±0.06µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip, optional, half NULLs                                     1.01     71.7±0.06µs        ? ?/sec    1.00     71.0±0.18µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed skip, optional, no NULLs                                       1.00     62.2±0.05µs        ? ?/sec    1.00     62.3±0.06µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed stepped increasing value                                       1.00     61.8±0.10µs        ? ?/sec    1.00     61.6±0.08µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed, mandatory, no NULLs                                           1.00     77.0±0.10µs        ? ?/sec    1.00     76.9±0.11µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed, optional, half NULLs                                          1.00    114.9±0.10µs        ? ?/sec    1.00    114.8±0.08µs        ? ?/sec
arrow_array_reader/Int64Array/binary packed, optional, no NULLs                                            1.00     81.2±0.12µs        ? ?/sec    1.00     81.1±0.10µs        ? ?/sec
arrow_array_reader/Int64Array/byte_stream_split encoded, mandatory, no NULLs                               1.00     46.1±0.03µs        ? ?/sec    1.00     46.2±0.03µs        ? ?/sec
arrow_array_reader/Int64Array/byte_stream_split encoded, optional, half NULLs                              1.01     99.2±0.11µs        ? ?/sec    1.00     98.4±0.07µs        ? ?/sec
arrow_array_reader/Int64Array/byte_stream_split encoded, optional, no NULLs                                1.00     50.4±0.04µs        ? ?/sec    1.01     50.8±0.06µs        ? ?/sec
arrow_array_reader/Int64Array/dictionary encoded, mandatory, no NULLs                                      1.00     49.4±0.03µs        ? ?/sec    1.00     49.6±0.04µs        ? ?/sec
arrow_array_reader/Int64Array/dictionary encoded, optional, half NULLs                                     1.01    102.9±0.11µs        ? ?/sec    1.00    101.8±0.14µs        ? ?/sec
arrow_array_reader/Int64Array/dictionary encoded, optional, no NULLs                                       1.00     53.3±0.04µs        ? ?/sec    1.00     53.3±0.04µs        ? ?/sec
arrow_array_reader/Int64Array/plain encoded, mandatory, no NULLs                                           1.00     16.2±0.03µs        ? ?/sec    1.00     16.1±0.02µs        ? ?/sec
arrow_array_reader/Int64Array/plain encoded, optional, half NULLs                                          1.00     85.2±0.15µs        ? ?/sec    1.00     84.8±0.05µs        ? ?/sec
arrow_array_reader/Int64Array/plain encoded, optional, no NULLs                                            1.02     20.4±0.03µs        ? ?/sec    1.00     20.1±0.02µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed increasing value                                                1.01     53.2±0.38µs        ? ?/sec    1.00     52.6±0.47µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed single value                                                    1.02     45.0±0.18µs        ? ?/sec    1.00     44.2±0.52µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip increasing value                                           1.01     33.2±0.08µs        ? ?/sec    1.00     32.9±0.23µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip single value                                               1.01     28.5±0.12µs        ? ?/sec    1.00     28.2±0.26µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip stepped increasing value                                   1.00     56.1±0.08µs        ? ?/sec    1.00     56.2±0.07µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip, mandatory, no NULLs                                       1.00     71.3±0.05µs        ? ?/sec    1.00     71.4±0.09µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip, optional, half NULLs                                      1.00     72.7±0.08µs        ? ?/sec    1.00     72.7±0.09µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed skip, optional, no NULLs                                        1.00     73.7±0.05µs        ? ?/sec    1.00     73.8±0.11µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed stepped increasing value                                        1.00     72.4±0.13µs        ? ?/sec    1.00     72.6±0.11µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed, mandatory, no NULLs                                            1.00     91.7±0.06µs        ? ?/sec    1.00     91.9±0.18µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed, optional, half NULLs                                           1.00    113.4±0.16µs        ? ?/sec    1.01    114.6±0.15µs        ? ?/sec
arrow_array_reader/Int8Array/binary packed, optional, no NULLs                                             1.00     95.3±0.06µs        ? ?/sec    1.00     95.5±0.20µs        ? ?/sec
arrow_array_reader/Int8Array/byte_stream_split encoded, mandatory, no NULLs                                1.00     20.6±0.06µs        ? ?/sec    1.00     20.6±0.04µs        ? ?/sec
arrow_array_reader/Int8Array/byte_stream_split encoded, optional, half NULLs                               1.01     77.6±0.15µs        ? ?/sec    1.00     77.1±0.10µs        ? ?/sec
arrow_array_reader/Int8Array/byte_stream_split encoded, optional, no NULLs                                 1.01     24.5±0.03µs        ? ?/sec    1.00     24.3±0.05µs        ? ?/sec
arrow_array_reader/Int8Array/dictionary encoded, mandatory, no NULLs                                       1.01     51.1±0.02µs        ? ?/sec    1.00     50.5±0.05µs        ? ?/sec
arrow_array_reader/Int8Array/dictionary encoded, optional, half NULLs                                      1.00     94.4±0.11µs        ? ?/sec    1.00     94.7±0.14µs        ? ?/sec
arrow_array_reader/Int8Array/dictionary encoded, optional, no NULLs                                        1.00     54.6±0.08µs        ? ?/sec    1.00     54.5±0.43µs        ? ?/sec
arrow_array_reader/Int8Array/plain encoded, mandatory, no NULLs                                            1.00     13.5±0.03µs        ? ?/sec    1.02     13.7±0.03µs        ? ?/sec
arrow_array_reader/Int8Array/plain encoded, optional, half NULLs                                           1.00     74.4±0.14µs        ? ?/sec    1.00     74.3±0.11µs        ? ?/sec
arrow_array_reader/Int8Array/plain encoded, optional, no NULLs                                             1.01     17.6±0.03µs        ? ?/sec    1.00     17.3±0.03µs        ? ?/sec
arrow_array_reader/ListArray/Fixed32List/90pct NULLs                                                       1.00   1003.3±7.34µs        ? ?/sec    1.01   1010.5±7.39µs        ? ?/sec
arrow_array_reader/ListArray/Fixed32List/99pct NULLs                                                       1.00   455.1±10.80µs        ? ?/sec    1.00   454.5±10.39µs        ? ?/sec
arrow_array_reader/ListArray/Fixed32List/half NULLs                                                        1.03      2.6±0.01ms        ? ?/sec    1.00      2.5±0.01ms        ? ?/sec
arrow_array_reader/ListArray/Fixed32List/no NULLs                                                          1.00      4.3±0.02ms        ? ?/sec    1.00      4.3±0.02ms        ? ?/sec
arrow_array_reader/ListArray/Int32List/90pct NULLs                                                         1.00    922.6±4.58µs        ? ?/sec    1.00    926.8±4.06µs        ? ?/sec
arrow_array_reader/ListArray/Int32List/99pct NULLs                                                         1.00   411.7±11.15µs        ? ?/sec    1.00    409.6±8.88µs        ? ?/sec
arrow_array_reader/ListArray/Int32List/half NULLs                                                          1.00      2.1±0.01ms        ? ?/sec    1.00      2.1±0.01ms        ? ?/sec
arrow_array_reader/ListArray/Int32List/no NULLs                                                            1.01      2.9±0.01ms        ? ?/sec    1.00      2.8±0.01ms        ? ?/sec
arrow_array_reader/ListArray/StringList/90pct NULLs                                                        1.00   1095.7±5.27µs        ? ?/sec    1.00   1097.0±4.90µs        ? ?/sec
arrow_array_reader/ListArray/StringList/99pct NULLs                                                        1.00   423.3±10.77µs        ? ?/sec    1.01    426.5±9.17µs        ? ?/sec
arrow_array_reader/ListArray/StringList/half NULLs                                                         1.00      3.9±0.01ms        ? ?/sec    1.00      3.9±0.01ms        ? ?/sec
arrow_array_reader/ListArray/StringList/no NULLs                                                           1.01      7.0±0.03ms        ? ?/sec    1.00      7.0±0.05ms        ? ?/sec
arrow_array_reader/StringArray/const delta byte array encoded, mandatory, no NULLs                         1.00    518.2±6.05µs        ? ?/sec    1.04    537.9±2.72µs        ? ?/sec
arrow_array_reader/StringArray/const delta length byte array encoded, mandatory, no NULLs                  1.00    209.0±1.10µs        ? ?/sec    1.02    212.2±0.39µs        ? ?/sec
arrow_array_reader/StringArray/const prefix delta byte array encoded, mandatory, no NULLs                  1.03   789.9±39.09µs        ? ?/sec    1.00   767.3±34.24µs        ? ?/sec
arrow_array_reader/StringArray/dictionary encoded, mandatory, no NULLs                                     1.00    275.4±0.28µs        ? ?/sec    1.02    279.6±0.21µs        ? ?/sec
arrow_array_reader/StringArray/dictionary encoded, optional, half NULLs                                    1.00    386.2±1.20µs        ? ?/sec    1.00    385.8±0.62µs        ? ?/sec
arrow_array_reader/StringArray/dictionary encoded, optional, no NULLs                                      1.00    277.9±0.48µs        ? ?/sec    1.02    283.6±0.23µs        ? ?/sec
arrow_array_reader/StringArray/plain encoded, mandatory, no NULLs                                          1.02    459.5±7.35µs        ? ?/sec    1.00    452.4±5.17µs        ? ?/sec
arrow_array_reader/StringArray/plain encoded, optional, half NULLs                                         1.01    494.2±4.34µs        ? ?/sec    1.00    491.4±3.93µs        ? ?/sec
arrow_array_reader/StringArray/plain encoded, optional, no NULLs                                           1.01    463.9±7.40µs        ? ?/sec    1.00    457.6±4.63µs        ? ?/sec
arrow_array_reader/StringDictionary/dictionary encoded, mandatory, no NULLs                                1.00    246.5±0.73µs        ? ?/sec    1.00    247.6±0.46µs        ? ?/sec
arrow_array_reader/StringDictionary/dictionary encoded, optional, half NULLs                               1.00    271.9±0.93µs        ? ?/sec    1.01    275.3±1.02µs        ? ?/sec
arrow_array_reader/StringDictionary/dictionary encoded, optional, no NULLs                                 1.00    250.4±0.48µs        ? ?/sec    1.01    252.2±0.45µs        ? ?/sec
arrow_array_reader/StringViewArray/dictionary encoded, mandatory, no NULLs                                 1.00     79.6±0.04µs        ? ?/sec    1.00     79.9±0.04µs        ? ?/sec
arrow_array_reader/StringViewArray/dictionary encoded, optional, half NULLs                                1.00    107.7±0.11µs        ? ?/sec    1.00    107.6±0.07µs        ? ?/sec
arrow_array_reader/StringViewArray/dictionary encoded, optional, no NULLs                                  1.00     83.5±0.09µs        ? ?/sec    1.00     83.6±0.06µs        ? ?/sec
arrow_array_reader/StringViewArray/plain encoded, mandatory, no NULLs                                      1.00    218.2±0.63µs        ? ?/sec    1.00    217.6±0.22µs        ? ?/sec
arrow_array_reader/StringViewArray/plain encoded, optional, half NULLs                                     1.00    180.2±0.18µs        ? ?/sec    1.00    180.1±0.88µs        ? ?/sec
arrow_array_reader/StringViewArray/plain encoded, optional, no NULLs                                       1.00    225.6±0.27µs        ? ?/sec    1.00    226.4±1.12µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed increasing value                                              1.00     52.1±0.34µs        ? ?/sec    1.03     53.4±0.49µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed single value                                                  1.00     43.7±0.54µs        ? ?/sec    1.03     44.9±0.26µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip increasing value                                         1.00     32.4±0.19µs        ? ?/sec    1.03     33.4±0.19µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip single value                                             1.00     27.8±0.30µs        ? ?/sec    1.03     28.8±0.14µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip stepped increasing value                                 1.00     56.1±0.06µs        ? ?/sec    1.00     56.3±0.05µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip, mandatory, no NULLs                                     1.00     76.0±0.06µs        ? ?/sec    1.00     76.2±0.09µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip, optional, half NULLs                                    1.00     74.9±0.12µs        ? ?/sec    1.00     75.1±0.09µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed skip, optional, no NULLs                                      1.00     77.9±0.10µs        ? ?/sec    1.01     78.9±0.08µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed stepped increasing value                                      1.00     72.3±0.15µs        ? ?/sec    1.01     72.7±0.14µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed, mandatory, no NULLs                                          1.00     97.3±0.18µs        ? ?/sec    1.00     97.6±0.16µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed, optional, half NULLs                                         1.00    117.3±0.21µs        ? ?/sec    1.00    117.7±0.19µs        ? ?/sec
arrow_array_reader/UInt16Array/binary packed, optional, no NULLs                                           1.00    101.1±0.18µs        ? ?/sec    1.00    101.2±0.15µs        ? ?/sec
arrow_array_reader/UInt16Array/byte_stream_split encoded, mandatory, no NULLs                              1.00     20.8±0.02µs        ? ?/sec    1.01     20.9±0.03µs        ? ?/sec
arrow_array_reader/UInt16Array/byte_stream_split encoded, optional, half NULLs                             1.00     77.2±0.08µs        ? ?/sec    1.00     77.4±0.09µs        ? ?/sec
arrow_array_reader/UInt16Array/byte_stream_split encoded, optional, no NULLs                               1.00     24.5±0.03µs        ? ?/sec    1.01     24.7±0.04µs        ? ?/sec
arrow_array_reader/UInt16Array/dictionary encoded, mandatory, no NULLs                                     1.00     50.9±0.05µs        ? ?/sec    1.00     50.9±0.05µs        ? ?/sec
arrow_array_reader/UInt16Array/dictionary encoded, optional, half NULLs                                    1.00     94.9±0.15µs        ? ?/sec    1.00     94.8±0.13µs        ? ?/sec
arrow_array_reader/UInt16Array/dictionary encoded, optional, no NULLs                                      1.00     54.7±0.07µs        ? ?/sec    1.00     54.6±0.03µs        ? ?/sec
arrow_array_reader/UInt16Array/plain encoded, mandatory, no NULLs                                          1.00     13.7±0.02µs        ? ?/sec    1.01     13.8±0.04µs        ? ?/sec
arrow_array_reader/UInt16Array/plain encoded, optional, half NULLs                                         1.00     74.1±0.12µs        ? ?/sec    1.00     74.3±0.10µs        ? ?/sec
arrow_array_reader/UInt16Array/plain encoded, optional, no NULLs                                           1.00     17.5±0.02µs        ? ?/sec    1.01     17.6±0.03µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed increasing value                                              1.00     49.1±0.36µs        ? ?/sec    1.03     50.4±0.28µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed single value                                                  1.00     40.7±0.53µs        ? ?/sec    1.02     41.7±0.19µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip increasing value                                         1.00     30.8±0.17µs        ? ?/sec    1.03     31.8±0.07µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip single value                                             1.00     26.2±0.28µs        ? ?/sec    1.03     27.0±0.13µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip stepped increasing value                                 1.00     54.7±0.06µs        ? ?/sec    1.00     54.8±0.08µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip, mandatory, no NULLs                                     1.00     69.5±0.16µs        ? ?/sec    1.01     70.0±0.11µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip, optional, half NULLs                                    1.00     70.7±0.09µs        ? ?/sec    1.00     71.0±0.10µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed skip, optional, no NULLs                                      1.00     71.5±0.42µs        ? ?/sec    1.01     72.0±0.11µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed stepped increasing value                                      1.00     69.2±0.17µs        ? ?/sec    1.01     69.6±0.11µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed, mandatory, no NULLs                                          1.00     87.5±0.32µs        ? ?/sec    1.01     88.2±0.21µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed, optional, half NULLs                                         1.00    110.8±0.21µs        ? ?/sec    1.00    110.7±0.25µs        ? ?/sec
arrow_array_reader/UInt32Array/binary packed, optional, no NULLs                                           1.00     91.7±0.33µs        ? ?/sec    1.00     92.0±0.23µs        ? ?/sec
arrow_array_reader/UInt32Array/byte_stream_split encoded, mandatory, no NULLs                              1.00     17.5±0.02µs        ? ?/sec    1.00     17.4±0.03µs        ? ?/sec
arrow_array_reader/UInt32Array/byte_stream_split encoded, optional, half NULLs                             1.00     74.4±0.11µs        ? ?/sec    1.00     74.5±0.09µs        ? ?/sec
arrow_array_reader/UInt32Array/byte_stream_split encoded, optional, no NULLs                               1.00     21.0±0.03µs        ? ?/sec    1.00     20.9±0.02µs        ? ?/sec
arrow_array_reader/UInt32Array/dictionary encoded, mandatory, no NULLs                                     1.01     47.9±0.03µs        ? ?/sec    1.00     47.6±0.05µs        ? ?/sec
arrow_array_reader/UInt32Array/dictionary encoded, optional, half NULLs                                    1.00     91.3±0.12µs        ? ?/sec    1.00     91.5±0.14µs        ? ?/sec
arrow_array_reader/UInt32Array/dictionary encoded, optional, no NULLs                                      1.00     51.4±0.04µs        ? ?/sec    1.00     51.2±0.03µs        ? ?/sec
arrow_array_reader/UInt32Array/plain encoded, mandatory, no NULLs                                          1.01     10.2±0.02µs        ? ?/sec    1.00     10.1±0.03µs        ? ?/sec
arrow_array_reader/UInt32Array/plain encoded, optional, half NULLs                                         1.00     72.3±0.10µs        ? ?/sec    1.00     72.2±0.08µs        ? ?/sec
arrow_array_reader/UInt32Array/plain encoded, optional, no NULLs                                           1.00     13.6±0.02µs        ? ?/sec    1.02     13.9±0.01µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed increasing value                                              1.00     40.7±0.11µs        ? ?/sec    1.00     40.6±0.14µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed single value                                                  1.00     37.6±0.13µs        ? ?/sec    1.00     37.5±0.20µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip increasing value                                         1.00     24.5±0.06µs        ? ?/sec    1.00     24.4±0.06µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip single value                                             1.00     22.9±0.06µs        ? ?/sec    1.00     22.8±0.05µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip stepped increasing value                                 1.00     47.9±0.05µs        ? ?/sec    1.00     48.1±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip, mandatory, no NULLs                                     1.00     60.1±0.04µs        ? ?/sec    1.00     60.2±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip, optional, half NULLs                                    1.01     71.5±0.04µs        ? ?/sec    1.00     70.7±0.07µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed skip, optional, no NULLs                                      1.00     62.3±0.05µs        ? ?/sec    1.00     62.3±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed stepped increasing value                                      1.00     62.1±0.10µs        ? ?/sec    1.00     62.0±0.08µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed, mandatory, no NULLs                                          1.00     77.2±0.11µs        ? ?/sec    1.00     77.2±0.11µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed, optional, half NULLs                                         1.01    115.6±0.11µs        ? ?/sec    1.00    114.9±0.12µs        ? ?/sec
arrow_array_reader/UInt64Array/binary packed, optional, no NULLs                                           1.00     81.2±0.11µs        ? ?/sec    1.00     81.2±0.13µs        ? ?/sec
arrow_array_reader/UInt64Array/byte_stream_split encoded, mandatory, no NULLs                              1.00     45.5±0.05µs        ? ?/sec    1.01     46.0±0.05µs        ? ?/sec
arrow_array_reader/UInt64Array/byte_stream_split encoded, optional, half NULLs                             1.01    100.0±0.10µs        ? ?/sec    1.00     99.0±0.31µs        ? ?/sec
arrow_array_reader/UInt64Array/byte_stream_split encoded, optional, no NULLs                               1.00     49.7±0.04µs        ? ?/sec    1.03     51.0±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/dictionary encoded, mandatory, no NULLs                                     1.00     49.5±0.11µs        ? ?/sec    1.00     49.6±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/dictionary encoded, optional, half NULLs                                    1.01    102.8±0.11µs        ? ?/sec    1.00    101.9±0.07µs        ? ?/sec
arrow_array_reader/UInt64Array/dictionary encoded, optional, no NULLs                                      1.00     53.0±0.14µs        ? ?/sec    1.01     53.2±0.07µs        ? ?/sec
arrow_array_reader/UInt64Array/plain encoded, mandatory, no NULLs                                          1.00     16.4±0.05µs        ? ?/sec    1.02     16.6±0.04µs        ? ?/sec
arrow_array_reader/UInt64Array/plain encoded, optional, half NULLs                                         1.01     85.1±0.09µs        ? ?/sec    1.00     84.1±0.06µs        ? ?/sec
arrow_array_reader/UInt64Array/plain encoded, optional, no NULLs                                           1.04     21.0±0.04µs        ? ?/sec    1.00     20.2±0.05µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed increasing value                                               1.00     53.0±0.49µs        ? ?/sec    1.00     53.2±0.46µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed single value                                                   1.00     44.7±0.25µs        ? ?/sec    1.00     44.5±0.23µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip increasing value                                          1.00     32.9±0.23µs        ? ?/sec    1.00     33.1±0.22µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip single value                                              1.00     28.4±0.14µs        ? ?/sec    1.00     28.4±0.14µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip stepped increasing value                                  1.00     55.9±0.06µs        ? ?/sec    1.00     56.1±0.06µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip, mandatory, no NULLs                                      1.00     75.2±0.07µs        ? ?/sec    1.00     75.2±0.07µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip, optional, half NULLs                                     1.00     74.6±0.09µs        ? ?/sec    1.00     74.8±0.10µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed skip, optional, no NULLs                                       1.00     77.4±0.06µs        ? ?/sec    1.00     77.5±0.05µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed stepped increasing value                                       1.00     72.2±0.15µs        ? ?/sec    1.00     72.3±0.19µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed, mandatory, no NULLs                                           1.00     96.4±0.14µs        ? ?/sec    1.00     96.5±0.11µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed, optional, half NULLs                                          1.01    117.3±0.21µs        ? ?/sec    1.00    116.3±0.16µs        ? ?/sec
arrow_array_reader/UInt8Array/binary packed, optional, no NULLs                                            1.00    100.1±0.12µs        ? ?/sec    1.00    100.2±0.13µs        ? ?/sec
arrow_array_reader/UInt8Array/byte_stream_split encoded, mandatory, no NULLs                               1.00     20.6±0.05µs        ? ?/sec    1.00     20.7±0.03µs        ? ?/sec
arrow_array_reader/UInt8Array/byte_stream_split encoded, optional, half NULLs                              1.00     77.3±0.10µs        ? ?/sec    1.00     76.9±0.13µs        ? ?/sec
arrow_array_reader/UInt8Array/byte_stream_split encoded, optional, no NULLs                                1.01     24.5±0.04µs        ? ?/sec    1.00     24.3±0.04µs        ? ?/sec
arrow_array_reader/UInt8Array/dictionary encoded, mandatory, no NULLs                                      1.01     51.1±0.04µs        ? ?/sec    1.00     50.4±0.06µs        ? ?/sec
arrow_array_reader/UInt8Array/dictionary encoded, optional, half NULLs                                     1.00     95.1±0.13µs        ? ?/sec    1.00     95.6±0.22µs        ? ?/sec
arrow_array_reader/UInt8Array/dictionary encoded, optional, no NULLs                                       1.00     54.9±0.06µs        ? ?/sec    1.00     54.7±0.18µs        ? ?/sec
arrow_array_reader/UInt8Array/plain encoded, mandatory, no NULLs                                           1.01     13.7±0.03µs        ? ?/sec    1.00     13.6±0.03µs        ? ?/sec
arrow_array_reader/UInt8Array/plain encoded, optional, half NULLs                                          1.01     74.3±0.12µs        ? ?/sec    1.00     73.5±0.16µs        ? ?/sec
arrow_array_reader/UInt8Array/plain encoded, optional, no NULLs                                            1.02     17.5±0.03µs        ? ?/sec    1.00     17.1±0.03µs        ? ?/sec
arrow_array_reader/struct/Int32Array/plain encoded, mandatory struct, optional data, half NULLs            1.00     71.9±0.13µs        ? ?/sec    1.00     72.1±0.09µs        ? ?/sec
arrow_array_reader/struct/Int32Array/plain encoded, mandatory struct, optional data, no NULLs              1.00     13.9±0.03µs        ? ?/sec    1.00     13.9±0.04µs        ? ?/sec
arrow_array_reader/struct/Int32Array/plain encoded, optional struct, optional data, half NULLs             1.01    134.0±0.20µs        ? ?/sec    1.00    132.1±0.16µs        ? ?/sec
arrow_array_reader/struct/Int32Array/plain encoded, optional struct, optional data, no NULLs               1.04     67.9±0.54µs        ? ?/sec    1.00     65.1±0.03µs        ? ?/sec

Resource Usage

base (merge-base)

Metric Value
Wall time 2925.7s
Peak memory 3.9 GiB
Avg memory 3.8 GiB
CPU user 2923.0s
CPU sys 1.3s
Peak spill 0 B

branch

Metric Value
Wall time 2915.7s
Peak memory 3.9 GiB
Avg memory 3.9 GiB
CPU user 2912.2s
CPU sys 0.7s
Peak spill 0 B

File an issue against this benchmark runner

@etseidl
Copy link
Copy Markdown
Contributor Author

etseidl commented May 15, 2026

Curiosity satisfied. There doesn't appear to be any performance impact, but there's also no compelling correctness nor ergonomic argument to be made for this breaking change.

@etseidl etseidl closed this May 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

parquet Changes to the parquet crate parquet-derive

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants