При использовании большинства (если не всех) алгоритмов для вычисления разложения по сингулярным значениям нет гарантии, что алгоритм завершится, хотя это крайне редко случается. Хорошие реализации, такие как LAPACK, остановятся после определенного числа итераций и вернут ошибку.
В вашем случае с матрицами размером около 100 (я полагаю, когда вы говорите больше, чем приблизительно 70, вы имеете в виду не очень больше), для вычисления SVD может потребоваться не более нескольких секунд. Если это занимает больше времени, ваша матрица, возможно, является одним из крайне редких случаев, когда алгоритм, используемый библиотекой, не сходится. Я бы сказал, что более вероятно, что вы нашли ошибку, и в этом случае вам, вероятно, следует обратиться к сопровождающим библиотеки.