atlas_q.linalg_robust.robust_svd#
- atlas_q.linalg_robust.robust_svd(X)[source]#
Robust SVD with fallback cascade: CUDA → jitter → CPU
- Args:
X: Input tensor to decompose
- Returns:
U, S, Vh, driver_used
Strategy: 1. Try torch.linalg.svd on GPU (cuSOLVER backend) 2. If fails, add small jitter and retry on GPU 3. If still fails, fall back to CPU SVD 4. Return which driver succeeded for diagnostics