Skip to content

Commit 28845f5

Browse files
fix[bench]: nightly config that doesn't fail (#3830)
Signed-off-by: Joe Isaacs <[email protected]> --------- Signed-off-by: Joe Isaacs <[email protected]>
1 parent 217dfc2 commit 28845f5

File tree

4 files changed

+12
-42
lines changed

4 files changed

+12
-42
lines changed

.github/workflows/nightly-bench.yml

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,37 +18,34 @@ jobs:
1818
with:
1919
mode: 'develop'
2020
machine_type: ${{ matrix.machine_type.instance_name }}
21+
# datafusion:vortex uses a lot of memory
2122
benchmark_matrix: |
2223
[
2324
{
2425
"id": "tpch-nvme",
2526
"subcommand": "tpch",
2627
"name": "TPC-H on NVME",
27-
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet",
28-
"scale_factor": "--scale-factor ${{ matrix.scale_factor }}"
28+
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex",
29+
"scale_factor": "--scale-factor 10"
30+
},
31+
{
32+
"id": "tpch-nvme",
33+
"subcommand": "tpch",
34+
"name": "TPC-H on NVME",
35+
"targets": "datafusion:parquet,duckdb:parquet,duckdb:vortex",
36+
"scale_factor": "--scale-factor 100"
2937
},
3038
{
3139
"id": "clickbench-nvme",
3240
"subcommand": "clickbench",
3341
"name": "Clickbench on NVME",
3442
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex,duckdb:duckdb",
35-
},
36-
{
37-
"id": "tpch-s3",
38-
"subcommand": "tpch",
39-
"name": "TPC-H on S3",
40-
"local_dir": "bench-vortex/data/tpch/${{ matrix.scale_factor }}",
41-
"remote_storage": "s3://vortex-bench-dev-eu/develop/tpch/${{ matrix.scale_factor }}/",
42-
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet",
43-
"scale_factor": "--scale-factor ${{ matrix.scale_factor }}"
4443
}
4544
]
4645
strategy:
4746
# A single run not should kill the others
4847
fail-fast: false
4948
matrix:
50-
# currently 100 is failing I hope to address this.
51-
scale_factor: [ 10, 100 ]
5249
machine_type:
5350
- id: x86
5451
instance_name: c6id.8xlarge

.github/workflows/sql-benchmarks.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -89,12 +89,7 @@ jobs:
8989
RUST_BACKTRACE: full
9090
run: |
9191
# Generate data, running each query once to make sure they don't panic.
92-
echo "datafusion:parquet"
93-
target/release_debug/query_bench ${{ matrix.subcommand }} --targets datafusion:parquet -i1 -d gh-json ${{ matrix.scale_factor }}
94-
echo "datafusion:vortex"
95-
target/release_debug/query_bench ${{ matrix.subcommand }} --targets datafusion:vortex -i1 -d gh-json ${{ matrix.scale_factor }}
96-
echo "duckdb:vortex"
97-
target/release_debug/query_bench ${{ matrix.subcommand }} --targets duckdb:vortex -i1 -d gh-json ${{ matrix.scale_factor }}
92+
target/release_debug/query_bench ${{ matrix.subcommand }} --targets ${{ matrix.targets }} -i1 -d gh-json ${{ matrix.scale_factor }}
9893
9994
- name: Setup AWS CLI
10095
uses: aws-actions/configure-aws-credentials@v4

bench-vortex/src/benchmark_driver.rs

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ use std::path::PathBuf;
77

88
use anyhow::Result;
99
use indicatif::ProgressBar;
10-
use itertools::Itertools;
1110
use log::warn;
1211
use vortex_datafusion::metrics::VortexMetricsFinder;
1312

@@ -44,9 +43,6 @@ pub fn run_benchmark<B: Benchmark>(benchmark: B, config: DriverConfig) -> Result
4443
&format!("{}.trace.json", benchmark.dataset_name()),
4544
)?;
4645

47-
// Validate arguments
48-
validate_args(&config)?;
49-
5046
// Generate data for each target (idempotent)
5147
for target in &config.targets {
5248
benchmark.generate_data(target)?;
@@ -107,24 +103,6 @@ pub fn run_benchmark<B: Benchmark>(benchmark: B, config: DriverConfig) -> Result
107103
)
108104
}
109105

110-
fn validate_args(config: &DriverConfig) -> Result<()> {
111-
let engines = config
112-
.targets
113-
.iter()
114-
.map(|t| t.engine())
115-
.unique()
116-
.collect_vec();
117-
118-
if (config.emit_plan || config.export_spans || config.show_metrics || config.threads.is_some())
119-
&& !engines.contains(&Engine::DataFusion)
120-
{
121-
vortex_panic!(
122-
"--emit-plan, --export-spans, --show-metrics, --threads are only valid if DataFusion is used"
123-
);
124-
}
125-
Ok(())
126-
}
127-
128106
fn execute_queries<B: Benchmark>(
129107
queries: &[(usize, String)],
130108
iterations: usize,

bench-vortex/src/tpch/tpchgen.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ struct VortexWriter {
311311
impl VortexWriter {
312312
fn new(path: PathBuf, schema: SchemaRef) -> Result<Self> {
313313
// limit the number of in flight rows.
314-
let (sender, receiver) = mpsc::channel(32);
314+
let (sender, receiver) = mpsc::channel(2);
315315
let dtype = DType::from_arrow(schema);
316316
let file_path = path;
317317
let write_task = Some(tokio::spawn(async move {

0 commit comments

Comments
 (0)