[Disk CI benchmarks] Use 1ES.Pool=diskann-github#869
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #869 +/- ##
==========================================
- Coverage 90.60% 90.60% -0.01%
==========================================
Files 461 459 -2
Lines 85559 85482 -77
==========================================
- Hits 77525 77447 -78
- Misses 8034 8035 +1
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR moves disk benchmark workflows to the diskann-github 1ES self-hosted runner pool and adds local NVMe setup for benchmark workspace/data placement.
Changes:
- Switches disk benchmark and A/A benchmark jobs from
ubuntu-latestto self-hosted 1ES runners. - Adds NVMe formatting/mounting plus workspace symlinks in both benchmark workflows.
- Updates the shared disk benchmark setup action to install Rust if
rustupis missing.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
.github/workflows/disk-benchmarks.yml |
Runs macro benchmarks on the 1ES self-hosted pool and stages workspace paths on NVMe. |
.github/workflows/disk-benchmarks-aa.yml |
Runs scheduled A/A benchmarks on the 1ES self-hosted pool and stages workspace paths on NVMe. |
.github/actions/setup-disk-benchmark/action.yml |
Adds conditional Rust/rustup installation before showing the toolchain and downloading datasets. |
Comments suppressed due to low confidence (2)
.github/workflows/disk-benchmarks.yml:87
- These symlink creations are not idempotent. Self-hosted runner workspaces can persist between jobs, so a rerun or second matrix job on the same runner will fail here if
diskann_rustorbaselinealready exists; remove/replace the links or use an idempotent workspace setup.
ln -s /mnt/nvme/diskann_rust diskann_rust
ln -s /mnt/nvme/baseline baseline
.github/workflows/disk-benchmarks-aa.yml:64
- These symlink creations are not idempotent. Self-hosted runner workspaces can persist between jobs, so a rerun or second matrix job on the same runner will fail here if
diskann_rustorbaselinealready exists; remove/replace the links or use an idempotent workspace setup.
ln -s /mnt/nvme/diskann_rust diskann_rust
ln -s /mnt/nvme/baseline baseline
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
arkrishn94
left a comment
There was a problem hiding this comment.
Just flagged one concern raised by Copilot. Want to make sure it is a non-issue?
Also, just out of curiosity - does the CI for this PR exercise these workflows?
Switch
.github/workflows/disk-benchmarks.ymland.github/workflows/disk-benchmarks-aa.ymlto premium self-hosted VMs (L8s v3 Azure SKU with premium SSDs) to reduce noise and make performance gates more stable.After this change, disk-based graph search throughput improved significantly - from 92 QPS to 596 QPS: