SyncBreeze Logo

SyncBreeze File Synchronization Performance

SyncBreeze is optimized for modern multi-core and multi-CPU systems and is capable of synchronizing multiple disks, directories or network shares in parallel using all CPUs installed in the computer. SyncBreeze provides a number of different performance optimization options allowing one to tune the file synchronization operations for user-specific hardware and storage configurations.

SyncBreeze Parallel File Synchronization Threads

For example, when synchronizing large files stored on fast NVMe SSD disks, the performance of the file synchronization operations reaches up to 1,068 MB/sec with a single file synchronization stream, increases up to 1,840 MB/sec with two parallel file synchronization streams and scales up to 3,220 MB/sec with four parallel streams allowing one to synchronize huge amounts of data very fast.

NVMe SSD Disks File Synchronization Performance

When synchronizing medium-sized files stored on fast NVMe SSD disks, the performance of the file synchronization operations reaches up to 873 MB/sec with a single file synchronization stream, increases up to 1,650 MB/sec with two parallel file synchronization streams and scales up to 2,816 MB/sec still showing a very good level of the performance scalability. Usually, processing large numbers of small files incurs significant performance degradations, but in the case of NVMe SSD disks, synchronizing small files still results in a very high performance level reaching up to 598 MB/sec with a single file synchronization stream, increasing up to 927 with two parallel file synchronization streams and scaling up to 1,273 MB/sec with four parallel file synchronization streams.

SATA SSD Disks File Synchronization Performance

Regular SATA SSD drives are significantly slower than NVMe SSD drives, but still deliver a very respectable performance level. For example, when synchronizing large files stored on regular SATA SSD drives, the performance of the file synchronization operations reaches up to 330 MB/Sec with a single file synchronization stream and scales up to 478 MB/sec when synchronizing large files with 4 parallel file synchronization streams.

Synchronizing files stored on NAS storage devices via a network is more complicated because the user needs to take into account the speed and the latency of the network. If the computer, on which SyncBreeze is installed, is connected to the NAS storage device via a high-speed, low-latency network, the performance of the file synchronization operations may reach up to 79 MB/sec with a single file synchronization stream and scale up to 112 MB/sec with four parallel file synchronization streams.

NAS Server File Synchronization Performance

On the other hand, if SyncBreeze will need to access network shares via the Internet or via a long-distance, high-latency network, the performance of the file synchronization operations will be relatively slow. One of the options to increase the performance of the file sync operations in such configurations is to set the 'Parallel' directory scanning mode and increase the number of parallel file synchronization streams to 8 or even 16 disregarding how many CPUs are actually installed on the computer.

USB Flash Drive File Synchronization Performance

Modern USB flash drives provide plenty of the storage space and are reasonably fast allowing one to store vast amounts of data for backup purposes. When synchronizing large files stored on a high-speed USB flash drive, SyncBreeze can reach up to 267 MB/sec with a single file synchronization stream. But, with two parallel file synchronization streams, the performance of the file synchronization operations degrades to 170 MB/sec and remains slightly degraded with more parallel file synchronization streams showing that USB flash drives are significantly less scalable than NVMe and SATA SSD drives.

Directory Scanning Performance

Once the initial file synchronization operation is completed, SyncBreeze will begin scanning directories for changes, compare files last modifications times and sync files which should be updated. The performance of directory scanning operations is very important especially when synchronizing large numbers of files via slow, high-latency networks.

SyncBreeze Parallel Directory Scanning Threads

By default, SyncBreeze scans directories sequentially using a minimal amount of system resources, but for specific configurations where the performance of directory scanning operations is critical, the user is provided with the ability to switch to the parallel directory scanning mode and specify a number of parallel directory scanning threads to use for file synchronization operations.

When scanning directories located on two local SSD disks, the performance of directory scanning operations scales from 30,000 Files/Sec for a single directory scanning thread to 86,000 Files/Sec for 4 parallel directory scanning threads. For example, on a powerful quad-core server, two directories containing 1,000,000 files each will be scanned in just 11 seconds.

SyncBreeze Directory Scanning Performance Disks

When scanning directories via the network two additional factors should be taken into account. The first factor is the configuration of the file synchronization operation and the second is the latency of the network. If the file synchronization operation is configured to sync files between a local disk drive and a NAS storage device, SyncBreeze will need to check the last modification times for files located on the NAS storage device and the time required to fetch the last modification date for each file depends on the latency of the network. For fast, low-latency networks the time required to fetch the last modification date for each file may be under a millisecond, but for a slow, high-latency network it may be a few hundreds of milliseconds, which will have a very significant impact on the performance of the directory scanning operations.

In addition, some file synchronization operations may be configured to synchronize files between two remote servers or NAS storage devices via a slow, high-latency network. In this case the performance penalty incurred due to the high network latency will happen twice: the first time for the source directory and the second time for the destination directory.

SyncBreeze Directory Scanning Performance NAS Devices

According to our benchmarks, when scanning directories via a low-latency Gigabit Ethernet network, the performance of directory scanning operations scales from 2,200 Files/Sec for a single directory scanning thread to 14,200 Files/Sec for 12 parallel directory scanning threads.

SyncBreeze Directory Scanning Performance Network

On the other hand, when scanning directories via a slow, high-latency 100 Mbit network, the performance of directory scanning operations scales from 200 Files/Sec for a single directory scanning thread to 2,800 Files/Sec for 32 parallel directory scanning threads.

* This review was prepared for information purposes only and we strongly recommend to test the performance of SyncBreeze file synchronization operations on your specific hardware platform and with your specific data set.