CMake ExternalProject/FetchContent Git vs. URL archive
CMake ExternalProject and FetchContent can download from Git or URL archive.
Archive download is usually much faster, especially for projects with a large number of Git commits.
Checksum of the archive can optionally be verified with URL_HASH
option.
Git submodule
At first glance since Git config can set fetchParallel Git clone submodule in parallel might be something the ExternalProject GIT_CONFIG could do, but we have not tried this.