git-annex has good support for running commands in parallel, but there are still some things that could be improved, tracked here: * Maybe support -Jn in more commands. Just needs changing a few lines of code and testing each. * Maybe extend --jobs/annex.jobs for more control. `--jobs=cpus` is already supported; it might be good to have `--jobs=cpus-1` to leave a spare cpu to avoid contention, or `--jobs=remotes*2` to run 2 jobs per remote.