Skip to content

Nightly Benchmarks

Nightly Benchmarks #57

Workflow file for this run

name: Nightly Benchmarks
on:
schedule:
- cron: "0 0 * * *" # daily
workflow_dispatch:
permissions:
id-token: write # enables AWS-GitHub OIDC
actions: read
contents: write
deployments: write
jobs:
sql:
uses: ./.github/workflows/sql-benchmarks.yml
secrets: inherit
with:
mode: "develop"
machine_type: ${{ matrix.machine_type.instance_name }}
# datafusion:vortex uses a lot of memory
benchmark_matrix: |
[
{
"id": "tpch-nvme",
"subcommand": "tpch",
"name": "TPC-H on NVME",
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex,duckdb:duckdb",
"scale_factor": "--scale-factor 10.0"
},
{
"id": "tpch-s3",
"subcommand": "tpch",
"name": "TPC-H on S3",
"local_dir": "bench-vortex/data/tpch/10.0",
"remote_storage": "s3://vortex-bench-dev-eu/${{github.ref_name}}/tpch/10.0/",
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex",
"scale_factor": "--scale-factor 10.0"
},
{
"id": "tpch-nvme",
"subcommand": "tpch",
"name": "TPC-H on NVME",
"targets": "datafusion:parquet,duckdb:parquet,duckdb:vortex",
"scale_factor": "--scale-factor 100"
},
{
"id": "tpch-s3",
"subcommand": "tpch",
"name": "TPC-H on S3",
"local_dir": "bench-vortex/data/tpch/100.0",
"remote_storage": "s3://vortex-bench-dev-eu/${{github.ref_name}}/tpch/100.0/",
"targets": "datafusion:parquet,duckdb:parquet,duckdb:vortex",
"scale_factor": "--scale-factor 100.0"
},
{
"id": "tpch-nvme",
"subcommand": "tpch",
"name": "TPC-H on NVME",
"targets": "duckdb:parquet,duckdb:vortex",
"scale_factor": "--scale-factor 1000"
},
{
"id": "clickbench-nvme",
"subcommand": "clickbench",
"name": "Clickbench on NVME",
"targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex,duckdb:duckdb",
}
]
strategy:
# A single run not should kill the others
fail-fast: false
matrix:
machine_type:
- id: x86
instance_name: c6id.8xlarge
# TODO(joe): support other arch
# - id: arm64
# instance_name: c6gd.8xlarge