Release 74 also implements new delta copying defaults and the results are ... interesting :)

Delta copying, when enabled, has always been used conditionally and the criteria was the size of the file. For smaller files the overhead of setting up the delta copier is larger than any potential savings, so these files are simply copied in full.

The file size threshold was initially set to 128KB and the value was inherited from the original Bvckup version, where it made sense because the I/O was generally slower back then.

Fast forward few years and 128KB is no longer a good default, so as of Release 71 it was increased to 2MB.


With Release 74 the criteria changes again.

First, the threshold goes up to 32MB.

Second, the delta copying will also be used for files between 2MB and 32MB, but only IF they were modified in the last 30 days OR if they were previously delta-copied.

The rationale is pretty simple - we try and not bother with delta copying unless files are large or they change frequently.


This change has two main effects.

1.   Smaller backup state.

Delta copying stores per-block hashes in a backup's configuration directory. This is done for every file that is delta-copied, so the fewer files are, the less data ends up being in the \deltas folder.

The above screenshot shows the \deltas folder stats after backing up \Windows\System32 directory. And here are the same stats after backing up with an older version -

That is, twice the disk usage and nearly 10x more files and folders in the \deltas folder.

2.   Faster overall backups.

For smaller files the overhead of setting up the delta state is comparable to the time needed for the actual copying. We skip the delta setup -> we complete the copying faster. Magic.

Before:
After:

That's nearly a 10% speed up. This is obviously specific to the contents of \Windows\System32, but it's not hard to extrapolate from here.