borg/docs/man/borg-benchmark-cpu.1
2026-08-29 17:42:35 +02:00

94 lines
2.6 KiB
Groff

.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "borg-benchmark-cpu" "1" "2026-08-29" "" "borg backup tool"
.SH Name
borg-benchmark-cpu \- Benchmark CPU-bound operations.
.SH SYNOPSIS
.sp
borg [common options] benchmark cpu [options]
.SH DESCRIPTION
.sp
This command benchmarks miscellaneous CPU\-bound Borg operations.
.sp
It creates input data in memory, runs the operation and then displays throughput.
To reduce outside influence on the timings, please make sure to run this with:
.INDENT 0.0
.IP \(bu 2
an otherwise as idle as possible machine
.IP \(bu 2
enough free memory so there will be no slow down due to paging activity
.UNINDENT
.sp
By default all benchmarks run. Give one or more of \-\-chunking, \-\-hashing,
\-\-encrypting, \-\-compressing, \-\-msgpacking to run only those.
.sp
Some algorithms use multiple threads only above a size threshold, so the
hashes and the compressors are measured at more than one buffer size: the
hashes at 64MiB (roughly pack\-sized) and 2MiB (a typical borg chunk), both above
blake3\(aqs threshold, the compressors at 2MiB and 128kiB, which is below
zstd\(aqs. Within a section every row processes the same total number of
bytes \- 1 GiB, or 10 MiB for the compressors \- so the throughput column is
comparable between rows.
.sp
The compressors work on synthetic text\-like data that compresses about 4x
at zstd,3. Random data would be the worst possible input: no codec can
compress it, so all of them would take their incompressible fast path and
the levels would barely differ.
.SH OPTIONS
.sp
See \fIborg\-common(1)\fP for common options of Borg commands.
.SS options
.INDENT 0.0
.TP
.B \-\-json
format output as JSON
.TP
.B \-\-chunking
benchmark the chunkers
.TP
.B \-\-hashing
benchmark the hashes / MACs
.TP
.B \-\-encrypting
benchmark the encryption modes
.TP
.B \-\-compressing
benchmark the compressors
.TP
.B \-\-msgpacking
benchmark msgpack item packing
.UNINDENT
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH Author
The Borg Collective
.\" End of generated man page.