Skip to content

Commit f8b18d9

Browse files
Force initialisation of VortexSession before bench loop (#8479)
Change benchmarks to force initialisation of vortex session before start of benchmarking loop
1 parent 229b3bd commit f8b18d9

28 files changed

Lines changed: 82 additions & 44 deletions

‎vortex-array/benches/aggregate_grouped.rs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ use vortex_buffer::Buffer;
2828
use vortex_session::VortexSession;
2929

3030
fn main() {
31+
LazyLock::force(&SESSION);
3132
divan::main();
3233
}
3334

‎vortex-array/benches/aggregate_max.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,18 @@ use divan::Bencher;
77
use rand::prelude::*;
88
use vortex_array::IntoArray;
99
use vortex_array::VortexSessionExecute;
10+
use vortex_array::array_session;
1011
use vortex_array::arrays::PrimitiveArray;
1112
use vortex_session::VortexSession;
1213

1314
fn main() {
15+
LazyLock::force(&SESSION);
1416
divan::main();
1517
}
1618

1719
const N: usize = 100_000;
1820

19-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
21+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
2022

2123
#[divan::bench]
2224
fn max_i32(bencher: Bencher) {

‎vortex-array/benches/aggregate_sum.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,19 @@ use divan::Bencher;
77
use rand::prelude::*;
88
use vortex_array::IntoArray;
99
use vortex_array::VortexSessionExecute;
10+
use vortex_array::array_session;
1011
use vortex_array::arrays::PrimitiveArray;
1112
use vortex_array::expr::stats::Stat;
1213
use vortex_session::VortexSession;
1314

1415
fn main() {
16+
LazyLock::force(&SESSION);
1517
divan::main();
1618
}
1719

1820
const N: usize = 100_000;
1921

20-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
22+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
2123

2224
#[divan::bench]
2325
fn sum_i32(bencher: Bencher) {

‎vortex-array/benches/binary_ops.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ use vortex_array::ArrayRef;
1515
use vortex_array::Executable;
1616
use vortex_array::IntoArray;
1717
use vortex_array::VortexSessionExecute;
18+
use vortex_array::array_session;
1819
use vortex_array::arrays::BoolArray;
1920
use vortex_array::arrays::ConstantArray;
2021
use vortex_array::arrays::PrimitiveArray;
@@ -23,10 +24,11 @@ use vortex_array::scalar_fn::fns::operators::Operator;
2324
use vortex_session::VortexSession;
2425

2526
fn main() {
27+
LazyLock::force(&SESSION);
2628
divan::main();
2729
}
2830

29-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
31+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
3032

3133
const LEN: usize = 65_536;
3234

‎vortex-array/benches/bool_zip.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,18 @@ use vortex_array::ArrayRef;
1010
use vortex_array::IntoArray;
1111
use vortex_array::RecursiveCanonical;
1212
use vortex_array::VortexSessionExecute;
13+
use vortex_array::array_session;
1314
use vortex_array::arrays::BoolArray;
1415
use vortex_array::builtins::ArrayBuiltins;
1516
use vortex_mask::Mask;
1617
use vortex_session::VortexSession;
1718

1819
fn main() {
20+
LazyLock::force(&SESSION);
1921
divan::main();
2022
}
2123

22-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
24+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
2325

2426
const LEN: usize = 65_536;
2527

‎vortex-array/benches/cast_primitive.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ use rand::prelude::*;
1010
use vortex_array::Canonical;
1111
use vortex_array::IntoArray;
1212
use vortex_array::VortexSessionExecute;
13+
use vortex_array::array_session;
1314
use vortex_array::arrays::PrimitiveArray;
1415
use vortex_array::builtins::ArrayBuiltins;
1516
use vortex_array::dtype::DType;
@@ -19,14 +20,15 @@ use vortex_array::expr::stats::Stat;
1920
use vortex_session::VortexSession;
2021

2122
fn main() {
23+
LazyLock::force(&SESSION);
2224
divan::main();
2325
}
2426

2527
// Sizes used for the fallible-path benches below. Kept small enough to fit in L2 so
2628
// the kernel cost shows up clearly rather than being hidden by DRAM bandwidth.
2729
const SIZES: &[usize] = &[65_536];
2830

29-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
31+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
3032

3133
#[divan::bench(args = SIZES)]
3234
fn cast_u16_to_u32(bencher: Bencher, n: usize) {

‎vortex-array/benches/chunk_array_builder.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ use vortex_array::ArrayRef;
1111
use vortex_array::Canonical;
1212
use vortex_array::IntoArray;
1313
use vortex_array::VortexSessionExecute;
14+
use vortex_array::array_session;
1415
use vortex_array::arrays::BoolArray;
1516
use vortex_array::arrays::ChunkedArray;
1617
use vortex_array::arrays::ConstantArray;
@@ -22,6 +23,7 @@ use vortex_error::VortexExpect;
2223
use vortex_session::VortexSession;
2324

2425
fn main() {
26+
LazyLock::force(&SESSION);
2527
divan::main();
2628
}
2729

@@ -32,7 +34,7 @@ const BENCH_ARGS: &[(usize, usize)] = &[
3234
(1000, 10),
3335
];
3436

35-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
37+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
3638

3739
#[divan::bench(args = BENCH_ARGS)]
3840
fn chunked_bool_canonical_into(bencher: Bencher, (len, chunk_count): (usize, usize)) {

‎vortex-array/benches/chunked_dict_builder.rs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ use vortex_error::VortexExpect;
1515
use vortex_session::VortexSession;
1616

1717
fn main() {
18+
LazyLock::force(&SESSION);
1819
divan::main();
1920
}
2021

‎vortex-array/benches/chunked_fsl_canonicalize.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,19 @@ use divan::Bencher;
1616
use vortex_array::Canonical;
1717
use vortex_array::IntoArray;
1818
use vortex_array::VortexSessionExecute;
19+
use vortex_array::array_session;
1920
use vortex_array::arrays::ChunkedArray;
2021
use vortex_array::arrays::FixedSizeListArray;
2122
use vortex_array::validity::Validity;
2223
use vortex_buffer::Buffer;
2324
use vortex_session::VortexSession;
2425

2526
fn main() {
27+
LazyLock::force(&SESSION);
2628
divan::main();
2729
}
2830

29-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
31+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
3032

3133
/// Number of lists in each chunk.
3234
const LISTS_PER_CHUNK: usize = 1_000;

‎vortex-array/benches/dict_compare.rs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use vortex_array::Canonical;
99
use vortex_array::IntoArray;
1010
use vortex_array::RecursiveCanonical;
1111
use vortex_array::VortexSessionExecute;
12+
use vortex_array::array_session;
1213
use vortex_array::arrays::ConstantArray;
1314
use vortex_array::arrays::VarBinArray;
1415
use vortex_array::arrays::VarBinViewArray;
@@ -24,10 +25,11 @@ use vortex_array::scalar_fn::fns::operators::Operator;
2425
use vortex_session::VortexSession;
2526

2627
fn main() {
28+
LazyLock::force(&SESSION);
2729
divan::main();
2830
}
2931

30-
static SESSION: LazyLock<VortexSession> = LazyLock::new(vortex_array::array_session);
32+
static SESSION: LazyLock<VortexSession> = LazyLock::new(array_session);
3133

3234
const LENGTH_AND_UNIQUE_VALUES: &[(usize, usize)] = &[
3335
// length, unique_values

0 commit comments

Comments
 (0)