Manual Benchmark #152
Workflow file for this run
This file contains 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: Manual Benchmark | |
on: | |
repository_dispatch: | |
workflow_dispatch: | |
inputs: | |
qdrant_version: | |
description: "Version of qdrant to benchmark (tags/v1.6.1, <commit-id>, my-branch, docker/v1.5.1, ghcr/dev)" | |
default: ghcr/dev | |
dataset: | |
description: "Dataset to benchmark" | |
default: laion-small-clip | |
engine_config: | |
description: "Engine config to benchmark" | |
default: qdrant-continuous-benchmark | |
jobs: | |
# runManualBenchmark: | |
# name: manual benchmark - ${{ inputs.qdrant_version }} - ${{ inputs.dataset }} | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v3 | |
# - uses: webfactory/[email protected] | |
# with: | |
# ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
# - name: Benches | |
# run: | | |
# export HCLOUD_TOKEN=${{ secrets.HCLOUD_TOKEN }} | |
# export POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} | |
# export POSTGRES_HOST=${{ secrets.POSTGRES_HOST }} | |
# export QDRANT_VERSION=${{ inputs.qdrant_version }} | |
# export DATASETS=${{ inputs.dataset }} | |
# export ENGINE_NAME=${{ inputs.engine_config }} | |
# export POSTGRES_TABLE=benchmark_manual | |
# bash -x tools/setup_ci.sh | |
# bash -x tools/run_ci.sh | |
runTenantsBenchmark: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Benches | |
id: benches | |
timeout-minutes: 120 | |
run: | | |
export HCLOUD_TOKEN=${{ secrets.HCLOUD_TOKEN }} | |
export POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} | |
export POSTGRES_HOST=${{ secrets.POSTGRES_HOST }} | |
bash -x tools/setup_ci.sh | |
declare -A DATASET_TO_ENGINE | |
DATASET_TO_ENGINE["random-768-10-tenants-100k"]="qdrant-all-on-disk-scalar-q" | |
set +e | |
for dataset in "${!DATASET_TO_ENGINE[@]}"; do | |
export ENGINE_NAME=${DATASET_TO_ENGINE[$dataset]} | |
export DATASETS=$dataset | |
export CONTAINER_MEM_LIMIT=180mb | |
# Benchmark the dev branch: | |
export QDRANT_VERSION=ghcr/dev | |
timeout 55m bash -x tools/run_ci.sh | |
# Benchmark the master branch: | |
export QDRANT_VERSION=docker/master | |
timeout 55m bash -x tools/run_ci.sh | |
done | |
set -e | |
- name: Fail job if any of the benches failed | |
if: steps.benches.outputs.failed == 'error' || steps.benches.outputs.failed == 'timeout' | |
run: exit 1 |