This repository was archived by the owner on Oct 10, 2025. It is now read-only.
LDBC SNB Interactive v1 Benchmark #479
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: LDBC SNB Interactive v1 Benchmark | |
| on: | |
| schedule: | |
| - cron: "0 5 * * *" | |
| workflow_dispatch: | |
| inputs: | |
| scale_factor: | |
| description: 'Scale factor' | |
| required: true | |
| default: "1" | |
| type: choice | |
| options: | |
| - "1" | |
| - "10" | |
| - "30" | |
| - "100" | |
| jobs: | |
| benchmark: | |
| name: interactive-v1-benchmark | |
| runs-on: kuzu-self-hosted-benchmarking-xl | |
| env: | |
| SCALE_FACTOR: ${{ github.event.inputs.scale_factor }} | |
| NUM_THREADS: 128 | |
| steps: | |
| - name: Set env for scheduled run | |
| if: ${{ github.event_name == 'schedule' }} | |
| run: | | |
| echo "SCALE_FACTOR=1" >> $GITHUB_ENV | |
| - name: Set env for workflow dispatch | |
| if: ${{ github.event_name == 'workflow_dispatch' }} | |
| run: | | |
| echo "SCALE_FACTOR=${{ github.event.inputs.scale_factor }}" >> $GITHUB_ENV | |
| - name: Set checkout dir | |
| run: | | |
| echo "KUZU_DIR=$(pwd)" >> $GITHUB_ENV | |
| - name: Set CSV dir | |
| run: | | |
| echo "KUZU_CSV_DIR=$CSV_DIR/interactive-v1-dataset/social_network-sf${SCALE_FACTOR}-CsvComposite-LongDateFormatter/" >> $GITHUB_ENV | |
| - uses: actions/checkout@v4 | |
| - name: Build kuzu | |
| run: | | |
| pip3 install -r tools/python_api/requirements_dev.txt | |
| make python | |
| make java | |
| - name: Clone driver | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: ldbc/ldbc_snb_interactive_v1_driver | |
| path: ldbc_snb_interactive_v1_driver | |
| - name: Build driver | |
| working-directory: ldbc_snb_interactive_v1_driver | |
| run: mvn clean install -DskipTests | |
| - name: Clone implementation | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: kuzudb/ldbc_snb_interactive_v1_impl | |
| token: ${{ secrets.DOC_PUSH_TOKEN }} | |
| path: ldbc_snb_interactive_v1_impl | |
| - name: Update implementation | |
| working-directory: ldbc_snb_interactive_v1_impl | |
| run: | | |
| mkdir -p kuzu/src/main/resources | |
| ln -s $KUZU_DIR/tools/java_api/build/kuzu_java.jar kuzu/src/main/resources/kuzu_java.jar | |
| mvn clean package -DskipTests | |
| - name: Load database | |
| working-directory: ldbc_snb_interactive_v1_impl/kuzu | |
| run: | | |
| workflow_scripts/load-in-one-step.sh | |
| - name: Run benchmark | |
| working-directory: ldbc_snb_interactive_v1_impl/kuzu | |
| run: | | |
| echo "ldbc.snb.interactive.updates_dir=${KUZU_CSV_DIR}" >> driver/benchmark.properties | |
| echo "ldbc.snb.interactive.parameters_dir=$CSV_DIR/interactive-v1-dataset/substitution_parameters-sf${SCALE_FACTOR}/" >> driver/benchmark.properties | |
| driver/benchmark.sh | tee LDBC-SNB.log | |
| - name: Upload results | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: LDBC-SNB-interactive-v1-results | |
| path: ldbc_snb_interactive_v1_impl/kuzu/results/LDBC-SNB-results.json | |
| - name: Upload log | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: LDBC-SNB-interactive-v1-log | |
| path: ldbc_snb_interactive_v1_impl/kuzu/LDBC-SNB.log | |
| - name: Report result to server | |
| working-directory: ldbc_snb_interactive_v1_impl/kuzu | |
| run: | | |
| python3 scripts/report_results.py |