Numbers

What we measured, and how

Backspark is meant to be light, so we measure it. Every number here comes from a test on one Mac, with 16 cores and 128 GB of memory, while other programs kept two of those cores busy the whole time. A quiet Mac should do better.

Memory is footprint, the number Activity Monitor shows.

On real folders

Three project folders on that Mac, with 2.3 million files and 407 GB, seven runs. The encrypted data was thrown away instead of uploaded, so no time here includes the network.

First backup, without the upload6 min5 to 7 min
Memory at its peak114 MB106 to 137 MB
Kept on disk to track it all185 MB178 to 307 MB
One changed file, from the save to a new backup1.4 s0.4 to 4.6 s
Looking through everything, with nothing changed24 to 48 s
Stopping when told to pauseWithin 12 ms, 30 times of 30

The first number is the median, and the second the range. For one changed file, the range is of each run's median. A pause is timed from the request to reading and writing stopping.

When it's idle

The same folders, at the settings it ships with, sampled every 10 seconds for 70 minutes after the first backup.

CPU, as a share of one core, median0.1%
Average over the 70 minutes2.7%

Most of that average is two looks through everything, an hour apart. macOS was losing track of changes on this Mac at the time, which sets those off, so a Mac where it keeps up should need fewer.

Faster since

Then we profiled it and tried changes one at a time. Each ran against the build before it, taking turns, and stayed only if it won. These are on generated test folders, and the real folders above haven't been measured again since.

BeforeAfter
CPU to look through 300,000 files, nothing changed4.8 s2.0 s
Memory at the peak of a first backup of 900,000 small files157 MB74 MB
CPU for a first backup of 6 GB of mixed files17 s17 s

The new build won every round of the first two. Most of a first backup's time goes to compressing, reading and fingerprinting, and those weren't changed.

What these leave out