[pbs-devel] [PATCH proxmox{, -backup} 0/5] parallelize chunk reads in verification
Nicolas Frey
n.frey at proxmox.com
Wed Nov 5 16:51:24 CET 2025
This patch series aims to expand on Dominik's series [0] written for
pbs 3, parallelizing chunk reads in `VerifyWorker` using a seperate
thread pool from the verification.
The number of threads was previously hard-coded, but is now
configurable via the API and GUI with a new property called
`worker-threads`, similarly to tape backups.
The number of `worker-threads` only controls the thread pool for
reading, though if it makes sense to reuse this for the verification
pool, it could be adjusted to do so too.
In my local tests I measured the following speed difference:
verified a single snapshot with ~32 GiB (4x the RAM size) with 4 cores
1 thread: ~440MiB/s
2 threads: ~780MiB/s
4 threads: ~1140MiB/s
[0] https://lore.proxmox.com/pbs-devel/20250707132706.2854973-1-d.csapak@proxmox.com/#t
proxmox:
Nicolas Frey (1):
pbs-api-types: jobs: verify: add worker-threads to
VerificationJobSetup
pbs-api-types/src/jobs.rs | 10 ++++++++++
1 file changed, 10 insertions(+)
proxmox-backup:
Nicolas Frey (4):
api: verify: move chunk loading into parallel handler
api: verify: use worker-threads to determine the number of threads to
use
api: verify: add worker-threads to update endpoint
ui: verify: add option to set number of threads for job
src/api2/admin/datastore.rs | 13 +++-
src/api2/backup/environment.rs | 2 +-
src/api2/config/verify.rs | 8 +++
src/backup/verify.rs | 123 +++++++++++++++++++++------------
src/server/verify_job.rs | 3 +-
www/window/VerifyAll.js | 12 ++++
www/window/VerifyJobEdit.js | 13 ++++
7 files changed, 125 insertions(+), 49 deletions(-)
Summary over all repositories:
8 files changed, 135 insertions(+), 49 deletions(-)
--
Generated by git-murpp 0.8.1
More information about the pbs-devel
mailing list