Performance issues broadly fall into two categories: how to get the best performance for actions and how actions might impede the performance of your other activities.
The speed of most actions is largely dependent on I/O performance. Actions modifying an archive that is directly connected to the machine via a fast interface (say, Thunderbolt) will perform much faster than an archive that's on a file server and accessed through a local area network.
For best performance, perform actions on the computer that has the fastest connection to the archive. For example, let's say you have an archive on a NAS server used to capture two computers, a laptop and a desktop. The desktop connects via 1 GB ethernet, while the laptop connects via Wi-Fi.
With the desktop's faster connection, all of its actions will run substantially faster.
You do not need an identity key to perform maintenance actions (verify, merge, compact, repair, and so on).
If you have an macOS server that hosts an archive that several local computers capture to, you can install QRecall on the server and schedule all of the regular maintenance actions to be performed there.
Maintenance will be faster, more reliable, it won't impact the performance of your client computers, and it does not require an identity key.
Slow CPU speed and lack of memory can also retard performance. Given a choice of running maintenance actions on one of two computer with similar I/O speeds, you'll generally get the best performance from the one with the most RAM.
It's unlikely that you have too much memory, or your processor and I/O are just too fast. All of these resources are limited and must be shared amongst the processes that need them. As QRecall actions use CPU, memory, and I/O, it means that the performance of your other applications—likely the ones you need to get work done—may be negatively affected, and vice versa.
The general solution is to simply avoid doing too many things at once, and there are a variety of ways to accomplish that.
Should a QRecall action, or actions, suddenly interfere with your work there several ways to get QRecall to "step aside":
Most actions can be paused for a brief period of time, ranging from a few minutes to a few hours. This doesn't stop the action; the process is simply suspended, freeing CPU, memory, and I/O resources for other purposes.
If an actions starts while you need to get important work done, pause the action until you're done.
If you want to stop the action entirely, use the monitor's
command. This command completely stops the action, and then reschedules it to run again at a later time.This is handy when you need do something like log out or restart your system, but still want the action to run again soon.
If you have a series of actions scheduled to run, you can temporarily prevent all of them from starting using the
➤ command.Let's say you're rendering some video files on a deadline and need all available CPU and I/O resources until you're finished. Hold all schedules for a few hours, or set a specific time in the evening when you're sure to be done, and all actions that were scheduled to be run will wait until that time to start.
If QRecall actions are regularly dragging down the performance of important applications, consider deferring those actions to a time when your computer is not being used for other tasks, or intelligently skip actions that might interfere with your work.
Schedule actions to run late at night, or over the weekend, when you are unlikely to be using it for anything else.
The power management requests are particularly helpful here. Schedule your system to power up before these actions run, and shutdown again when they are finished.