|
57 | 57 | - uses: actions/checkout@v6 |
58 | 58 | with: |
59 | 59 | ref: ${{ github.event.pull_request.head.sha }} |
| 60 | + - name: Setup benchmark environment |
| 61 | + run: sudo bash scripts/setup-benchmark.sh |
60 | 62 | - uses: ./.github/actions/setup-rust |
61 | 63 | with: |
62 | 64 | repo-token: ${{ secrets.GITHUB_TOKEN }} |
|
91 | 93 | env: |
92 | 94 | RUST_BACKTRACE: full |
93 | 95 | run: | |
94 | | - target/release_debug/${{ matrix.benchmark.id }} -d gh-json -o results.json |
| 96 | + bash scripts/bench-taskset.sh target/release_debug/${{ matrix.benchmark.id }} -d gh-json -o results.json |
95 | 97 |
|
96 | 98 | - name: Setup AWS CLI |
97 | 99 | if: github.event.pull_request.head.repo.fork == false |
@@ -150,3 +152,81 @@ jobs: |
150 | 152 | secrets: inherit |
151 | 153 | with: |
152 | 154 | mode: "pr" |
| 155 | + benchmark_matrix: | |
| 156 | + [ |
| 157 | + { |
| 158 | + "id": "clickbench-nvme", |
| 159 | + "subcommand": "clickbench", |
| 160 | + "name": "Clickbench on NVME", |
| 161 | + "targets": "datafusion:parquet,datafusion:vortex,duckdb:parquet,duckdb:vortex,duckdb:duckdb" |
| 162 | + }, |
| 163 | + { |
| 164 | + "id": "tpch-nvme", |
| 165 | + "subcommand": "tpch", |
| 166 | + "name": "TPC-H SF=1 on NVME", |
| 167 | + "targets": "datafusion:arrow,datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact,duckdb:duckdb", |
| 168 | + "scale_factor": "1.0" |
| 169 | + }, |
| 170 | + { |
| 171 | + "id": "tpch-s3", |
| 172 | + "subcommand": "tpch", |
| 173 | + "name": "TPC-H SF=1 on S3", |
| 174 | + "local_dir": "vortex-bench/data/tpch/1.0", |
| 175 | + "remote_storage": "s3://vortex-ci-benchmark-datasets/${{github.ref_name}}/${{github.run_id}}/tpch/1.0/", |
| 176 | + "targets": "datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact", |
| 177 | + "scale_factor": "1.0" |
| 178 | + }, |
| 179 | + { |
| 180 | + "id": "tpch-nvme-10", |
| 181 | + "subcommand": "tpch", |
| 182 | + "name": "TPC-H SF=10 on NVME", |
| 183 | + "targets": "datafusion:arrow,datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact,duckdb:duckdb", |
| 184 | + "scale_factor": "10.0" |
| 185 | + }, |
| 186 | + { |
| 187 | + "id": "tpch-s3-10", |
| 188 | + "subcommand": "tpch", |
| 189 | + "name": "TPC-H SF=10 on S3", |
| 190 | + "local_dir": "vortex-bench/data/tpch/10.0", |
| 191 | + "remote_storage": "s3://vortex-ci-benchmark-datasets/${{github.ref_name}}/${{github.run_id}}/tpch/10.0/", |
| 192 | + "targets": "datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact", |
| 193 | + "scale_factor": "10.0" |
| 194 | + }, |
| 195 | + { |
| 196 | + "id": "tpcds-nvme", |
| 197 | + "subcommand": "tpcds", |
| 198 | + "name": "TPC-DS SF=1 on NVME", |
| 199 | + "targets": "datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact,duckdb:duckdb", |
| 200 | + "scale_factor": "1.0" |
| 201 | + }, |
| 202 | + { |
| 203 | + "id": "statpopgen", |
| 204 | + "subcommand": "statpopgen", |
| 205 | + "name": "Statistical and Population Genetics", |
| 206 | + "targets": "duckdb:parquet,duckdb:vortex,duckdb:vortex-compact", |
| 207 | + "scale_factor": "100" |
| 208 | + }, |
| 209 | + { |
| 210 | + "id": "fineweb", |
| 211 | + "subcommand": "fineweb", |
| 212 | + "name": "FineWeb NVMe", |
| 213 | + "targets": "datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact", |
| 214 | + "scale_factor": "100" |
| 215 | + }, |
| 216 | + { |
| 217 | + "id": "fineweb-s3", |
| 218 | + "subcommand": "fineweb", |
| 219 | + "name": "FineWeb S3", |
| 220 | + "local_dir": "vortex-bench/data/fineweb", |
| 221 | + "remote_storage": "s3://vortex-ci-benchmark-datasets/${{github.ref_name}}/${{github.run_id}}/fineweb/", |
| 222 | + "targets": "datafusion:parquet,datafusion:vortex,datafusion:vortex-compact,duckdb:parquet,duckdb:vortex,duckdb:vortex-compact", |
| 223 | + "scale_factor": "100" |
| 224 | + }, |
| 225 | + { |
| 226 | + "id": "polarsignals", |
| 227 | + "subcommand": "polarsignals", |
| 228 | + "name": "PolarSignals Profiling", |
| 229 | + "targets": "datafusion:vortex", |
| 230 | + "scale_factor": "1" |
| 231 | + }, |
| 232 | + ] |
0 commit comments