Short Performance Test #266
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
# Workflow for triggering tests/quick_performance | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 22 * * *' | |
name: Short Performance Test | |
jobs: | |
quick-performance: | |
runs-on: nvme-zns | |
timeout-minutes: 1440 | |
steps: | |
- name: Clean | |
run: rm -rf ${GITHUB_WORKSPACE}/* | |
- name: Checkout rocksdb | |
uses: actions/checkout@v4 | |
with: | |
repository: facebook/rocksdb | |
ref: v7.0.2 | |
path: rocksdb | |
- name: Checkout zenfs | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
path: rocksdb/plugin/zenfs | |
- name: Create results directory | |
run: | | |
mkdir -p results | |
- name: Build RocksDB docker image | |
run: | | |
podman build --jobs=$(nproc) --cgroup-manager cgroupfs \ | |
-t rocksdb-zenfs \ | |
-f rocksdb/plugin/zenfs/.github/workflows/containerfiles/Dockerfile.rocksdb-zenfs \ | |
--build-arg LIBZBD_GIT_CHECKOUT=v2.0.2 \ | |
--build-arg ROCKSDB_DEBUG_LEVEL=0 \ | |
. | |
- name: Set mq-deadline scheduler for the ZBD | |
run: | | |
echo deadline > /sys/block/${ZBD0}/queue/scheduler | |
- name: RocksDB mkfs zenfs | |
run: | | |
podman run --rm -i --device /dev/${ZBD0} \ | |
rocksdb-zenfs \ | |
bash -c "zenfs mkfs --zbd ${ZBD0} --aux_path /tmp/zenfs-aux --force" | |
- name: Run short performance test | |
run: | | |
podman run --rm -i --device /dev/${ZBD0} \ | |
--volume ./results:/rocks/work/results:Z \ | |
--security-opt unmask=/sys/dev/block \ | |
rocksdb-zenfs \ | |
bash -c "FS_PARAMS=--fs-uri=zenfs://dev:${ZBD0} PLUGIN_HOST=rocksdb TOOLS_DIR=/rocks/dest/bin ZENFS_DIR=/rocks/dest/bin OUTPUT_DIR=/rocks/work/results DB_BENCH_EXTRA_PARAMS=$(/rocks/dest/zenfs/test/get_good_db_bench_params_for_zenfs.sh ${ZBD0}) /rocks/dest/zenfs/test/run.sh rocksdb-zenfs-$(date '+%Y-%m-%d_%H-%M-%S' --utc)-$(uuidgen) quick_performance" | |
- name: Archive short performance test results | |
uses: actions/upload-artifact@v3 | |
with: | |
name: quick_performance | |
path: ./results | |
if: always() | |
- name: Remove result dir | |
run: rm -rf results | |
if: always() | |
- name: Remove images | |
run: podman rmi --force --all | |
if: always() |