Partitioning is the answer. In a repo that size 99% of the history is useless to anyone. You wouldnt manage a database like this so why force SCM down this path?
If they used git with say only the last year of history in it they would be having zero issues.