Addressing Common Performance Problems

This documentation is for an older version of CCC. You can find the latest version here.
Last updated on 23 maggio 2023

There are several factors that affect the performance of your backup tasks. Here we describe the most common conditions that affect backup performance, and offer some suggestions for mitigating the effects of those conditions.

Use CCC's Quick Update feature

The Quick Update feature can greatly reduce the amount of time it takes to compare items on the source and destination. Rather than evaluating all files and folders in the source data set, CCC will collect a list of folders that have been modified since the last backup task from the macOS FSEvents service. Especially for data sets with a lot of small files in folders that are infrequently modified, this feature can improve performance by many orders of magnitude. Click the Advanced Settings button at the bottom of the CCC window, then you'll find the Quick Update option in the Performance & Analysis tab.

Reduce the number of files considered for backup

If the aforementioned Quick Update feature is not applicable (e.g. because the source volume doesn't support it), and if you have a particularly high number of files on your source volume, you may be able to reorganize your data set and apply some exclusions to improve task performance. For example, if you have a large number of files that never change (perhaps some old, completed projects), you can collect these into a folder named "Archives", back it up once, then exclude it from future backups. CCC will not delete excluded items from your destination (unless you configure the Task Filter to do so), so as long as you keep the original on your source volume, you will always have two copies of your archived content. Because these items are excluded from your daily backups, CCC will not spend time enumerating through those files for changes.

Related Documentation

Trim unnecessary content from the backup task

macOS is constantly touching log and cache files, and those files can add up to a lot of changes for every backup task. Take a moment to review your task audits to see if there is content that doesn't have to be backed up. A few minutes reviewing the audit can add up to lots of time shaved off your regular backups.

  1. Click Task History in the toolbar to open CCC's Task History window
  2. Select one of your regularly-recurring task events
  3. Click on the Audit tab in the center of the window
  4. Sort the list by Size, then browse through the changes
  5. If you see something in the audit that you don't feel needs to be backed up, especially cache folders with a particularly high file count or a large amount of data, right-click on the item and choose the option to exclude it from the backup task.

Related Documentation

Avoid simultaneous writes to the same destination

When two tasks are writing to the same destination at the same time, the two tasks will typically take more than twice as long to complete when running at the same time vs. when they are run sequentially. This is particularly true when writing to network volumes, the resulting CPU load on the NAS server can be more than it can handle. CCC offers two features to avoid running automated tasks simultaneously to the same destination:

  • Click on the Automation selector for each task and check the box next to Defer if another task is writing to the same destination
  • Rather than scheduling the individual tasks, place the tasks into a task group, then configure the group to run on a schedule. The group will then run the tasks sequentially.

Hard drive performance and interface bandwidth

Your backups will be no faster than your slowest disk. Performance will be worse for smaller rotational hard drives (e.g. physically smaller, like those in 2.5" hard drive enclosures), for older hard drives, and for hard drives that are nearly full and thus more likely to be fragmented.

You will also get longer copy times when you have lots of small files vs. a volume filled with just a few very large files. Finally, you will see better performance with faster/more efficient interfaces — USB 3.1 is faster than USB 3.0, USB 3.0 is faster than USB 2.0, etc.

Rotational hard drive performance will diminish as the disk fills up

Sectors on the disk are arranged in concentric circles. On the outside edge of the disk (the "beginning" of the disk), the disk spins faster, so data can be read at a faster rate. On a 5400RPM disk, for example, the linear speed of the outside edge of the disk is about 60 miles per hour. At the center of the disk, the linear speed is just 16 miles per hour – 4 times slower. As such, read performance at the end of the disk is considerably slower. You can easily see this performance difference if you partition a disk in half. The first partition will consistently get much faster performance than the second partition.

Another performance-affecting factor comes into play when a rotational disk gets close to its maximum capacity – fragmentation. As the filesystem becomes fuller, it becomes harder for the filesystem to find large, contiguous blocks to place files, so the filesystem starts to become fragmented. That fragmentation causes the disk to spend more time seeking when retrieving any individual file (because the pieces of the file are scattered all over the disk). Often you can hear this "chattiness" from the disk as the drive head darts back and forth across the disk.

If your source volume is nearly full and is a rotational disk, we recommend that you replace it with a larger hard drive to avoid the performance implications of filesystem fragmentation.

Filesystem performance on rotational devices

The filesystem format applied to your disks can also affect the performance of a backup task. Apple's legacy HFS+ format, for example, was designed specifically to deal with the performance characteristics of rotational devices – storage at the fastest part of the disk is preallocated for the filesystem metadata so that folder enumeration requests aren't negatively affected by seek activity. When Apple designed its newer APFS filesystem, it designed that filesystem to excel on media that has no seek penalty (SSDs). On rotational media, however, APFS has a distinct performance disadvantage, and that difference is most acutely noticed on the slowest rotational devices (e.g. 2.5" "slim" disks, and 5400RPM disks – Western Digital My {anything} and many Seagate Backup disks are among these devices).

Unless you are specifically using a disk to share files with a Mac running an OS older than High Sierra, we recommend using APFS for all backup devices – despite any potential performance disadvantage. The information above is not intended to dissuade you from choosing APFS, rather just to set expectations for performance when using an exceptionally slow rotational device. Disks that were noticeably slow on older OSes will be even slower with APFS applied. Despite the slower performance, however, an APFS backup device will offer better compatibility with the file types on your APFS sources, as well as features that are exclusive to APFS (e.g. filesystem snapshots, support for encryption).

If you're finding performance on an older/slower backup disk to be exceptionally poor, we recommend replacing the disk with something faster. An SSD is not required, but when shopping for a rotational disk, we recommend that you avoid the "slim" disks.

Related Documentation

CCC's file copier is tuned for modern, high performance storage

When we developed our new file copier in CCC v6, one of our design goals was to take full advantage of the performance that is available from modern SSD and NVMe storage devices. The CCC "Core Copy Engine" will process up to four folders at once, and copy up to eight files at a time by default when both the source and destination devices can be positively identified as APFS-formatted solid state devices. This multi-threaded approach yields blazing-fast transfers of very large amounts of data between fast devices – typically exceeding CCC v5's legacy file copier performance by 50% or more, and meeting or exceeding Finder copying performance.

When CCC cannot identify a device as a solid state device, CCC throttles back the concurrency of its file copier to a default that works better for rotational media. In these cases, CCC will still evaluate up to four folders at once, but it will only copy 1-2 files at a time (depending on file size). If you have a solid state device placed into a generic USB hard drive enclosure, that enclosure won't identify the media type to macOS, and you won't see the full potential of that device when using it with CCC. In those cases, you can improve performance by manually increasing the "File copier concurrency" setting in Advanced Settings > Performance & Analysis:

Performance and analysis settings

CCC sometimes uses the APFS clonefile function to use storage space more efficiently

If both the source and destination are APFS-formatted, and CCC can verify that they are both solid state devices, then CCC uses a special procedure to handle updates to files that are larger than 1GB. For this procedure, CCC will create a duplicate of the existing file on the destination using the "clonefile" function of the APFS filesystem. At this point, the duplicate copy doesn't consume any additional disk space because it's a "clone" of the original destination file. CCC will then open the source and cloned destination file and proceed through them one block at a time to compare the blocks. If a block differs, it's copied, if not, the existing block is left in place. When the cloned destination file is completely updated, the original file on the destination is deleted. Any space consumed by blocks that aren't used by the cloned file will be freed (or retained in a snapshot, if applicable).

The benefit of using this procedure can be quite substantial when snapshot support is enabled on the destination volume. Consider two alternatives. Suppose you have a 40GB VM container file that changes every day, but only about 1GB of data within that file changes in any given day. If CCC were to recopy that whole file every time it changes, then every snapshot would uniquely reference at least 40GB of disk space. This will add up quickly, and will impose a lower practical limit on the number of snapshots that can be retained. When using the clonefile procedure, however, only the blocks that have been modified on the source will be modified on the destination, so the 1GB of daily changes to that VM container file will have a very low net impact on snapshot disk usage.

The clonefile procedure has great benefits for using storage space more efficiently, however it is not a faster procedure than simply recopying the file. The performance of this procedure on rotational media is poor enough to make it impractical, and even on solid state media, we chose to limit the procedure based on file size so that we're only taking a performance hit when there is a large potential storage efficiency benefit.

Spotlight Indexing

Anything that causes CCC to compete for bandwidth to your source or destination volume will increase the amount of time that it takes to back up your data. Spotlight indexing is one such process that CCC typically must compete with for disk bandwidth. As you copy new data to your destination volume, for example, Spotlight wants to read those "new" files so it can index their contents. Having a Spotlight index of your backup volume may be unnecessary as you probably want to search for files only on your source volume.

To disable Spotlight indexing on a volume that is dedicated to backup, open the System Settings application, select Siri & Spotlight in the sidebar, scroll to the bottom of the window and click Spotlight Privacy…. Drag the icon of the destination volume into the "Privacy" table. If you do want the backup volume indexed, drag its icon out of the "Privacy" table after the backup completes and indexing will start immediately.

Find and replace corrupted files

CCC offers an advanced option to "Find and replace corrupted files". When using this option, CCC will re-read every file on the source and every file on the destination, calculating a checksum of each file. CCC then compares these checksums to see if a file should be recopied. While this is an excellent method for finding unreadable files on the source or destination, it will dramatically increase the amount of time that your backup task takes, and it will also increase CPU and hard drive bandwidth consumption on your Mac. We recommend limiting the use of this option to weekly or monthly, or to one of the other options offered in the popup menu adjacent to that setting.

Other applications and conditions that can lead to performance problems

Over the years we have received numerous queries about poorer performance than what is expected. Careful analysis of the system log and Activity Monitor will usually reveal the culprit. Here are some things that we usually look for:

  • Other backup software copying simultaneously to the same volume, a different volume on the same disk, or across the same interface as CCC's destination.
  • Utilities that watch filesystem activity and do things when file changes are detected. Antivirus software is a common culprit, but we have also seen problems caused by other watcher applications, such as memeod and Western Digital's SmartWare.
  • Slow interfaces — USB hubs (including the ports on a USB keyboard or display) and even some USB cables can reduce the bandwidth to your disk dramatically. If you're using USB, be sure that your device is plugged directly into one of the USB ports on your Mac.
  • Using a wireless network connection to connect to a network volume. If you're seeing poor performance with a wireless connection, compare the performance when using a wired (ethernet) connection.
  • Third-party USB device drivers can reduce the performance and/or reliability of your USB storage devices. Examples include the "SAT-SMART" drivers, as well as some ancient BlackBerry drivers. 
  • Symantec's Digital Loss Prevention (DLP) can cause performance problems when backing up a specific Microsoft font cache (e.g. /Users/yourname/Library/Containers/com.microsoft.Outlook/Data/Library/Application Support/Microsoft/FontPreviewCache). The problem appears to be specific to DLP's ability to cope with the dorky emojis that Microsoft uses in the file names in this folder (i.e. replacing the word "family" with the family emoji). Exclude that FontPreviewCache folder from your backup task to avoid the performance problem.

If you're still having trouble identifying a performance problem, we're here to help.

Related Documentation

Using the Dynamic Performance Chart to understand factors that affect performance

When a task is running, CCC presents a live chart of file evaluation rate (i.e. the number of files compared per second) and data write rate. Hover your mouse over the chart to see the rates at various points on the chart:

Dynamic performance chart

File evaluation rate and write rate are often complementary. This dynamic performance chart was designed to show how these two factors relate to each other, and also to show how the characteristics of your source data set interact with the performance characteristics of your source and destination devices. For example, you will find that when CCC is copying very large files, file evaluation rate will be low, but write rate will get very high – close to the maximum bandwidth potential of the destination (if that's slower than the source device's read rate). In contrast, when CCC is processing lots of smaller files, the file evaluation rate will get higher and the write rate will be considerably less than the maximum write rate that is achievable on that device. This is normal – it takes longer to copy a million 1KB files than it would take to copy a single 1GB file, even though you're copying the same amount of data.

The dynamic performance chart will bring NAS protocol performance into sharp focus. While we can typically process thousands of files per second on a locally-attached filesystem, NAS filesystems (e.g. AFP and SMB) can typically process tens or hundreds of files per second. This performance is wholly dependent on the NAS device, its storage, and is also strongly influenced by the overhead of the SMB and AFP protocols. The key to improving performance on a task that involves a NAS device is to reduce the number of filesystem transactions that must occur, and the only way to do that is to reduce the number of files and folders that are compared during the backup task. CCC's Quick Update feature can be instrumental in achieving that goal.

Reducing the impact of a backup task on your Mac's performance and usability

Sometimes backup tasks can have a noticeable impact on system performance. By default, the CPU priority of CCC's file copier will be comparable to that of a foreground application, yielding the fastest possible file copying performance. If you would like to reduce the impact that a particular task has on the system, you can reduce the File copier CPU priority in the Performance & Analysis tab of CCC's Advanced Settings.

Performance and analysis settings

Pausing a task

If you would like to immediately cease a task's impact on the system without stopping the task altogether, you can pause the task. Click the Pause button adjacent to the Stop button in CCC's main window to pause the task. The CCC Dashboard also offers a Pause button for quicker access to this functionality. Paused tasks will resume automatically after five minutes, or you can click the Continue button to resume the task. The five minute timeout can be adjusted in the Advanced section of CCC's Settings window.