We consider the solution of the Sylvester equation $AX+XB=C$ in mixed precision. We derive a new iterative refinement scheme to solve perturbed quasi-triangular Sylvester equations; our rounding error analysis provides sufficient conditions for convergence and a bound on the attainable relative residual. We leverage this iterative scheme to solve the general Sylvester equation. The new algorithms compute the Schur decomposition of the coefficient matrices $A$ and $B$ in lower than working precision, use the low-precision Schur factors to obtain an approximate solution to the perturbed quasi-triangular equation, and iteratively refine it to obtain a working-precision solution. In order to solve the original equation to working precision, the unitary Schur factors of the coefficient matrices must be unitary to working precision, but this is not the case if the Schur decomposition is computed in low precision. We propose two effective approaches to address this: one is based on re-orthonormalization in working precision, and the other on explicit inversion of the almost-unitary factors. The two mixed-precision algorithms thus obtained are tested on various Sylvester and Lyapunov equations from the literature. Our numerical experiments show that, for both types of equations, the new algorithms are at least as accurate as existing ones. Our cost analysis, on the other hand, suggests that they would typically be faster than mono-precision alternatives if implemented on hardware that natively supports low precision.
翻译:本文研究混合精度下Sylvester方程 $AX+XB=C$ 的求解问题。我们提出了一种新的迭代精化方案来求解扰动拟三角Sylvester方程;舍入误差分析给出了收敛的充分条件以及可达相对残差的上界。基于该迭代方案,我们进一步求解一般Sylvester方程。新算法以低于工作精度的方式计算系数矩阵 $A$ 和 $B$ 的Schur分解,利用低精度Schur因子获得扰动拟三角方程的近似解,并通过迭代精化得到工作精度解。为使原方程的解达到工作精度,系数矩阵的酉Schur因子必须满足工作精度的酉性要求,但低精度计算的Schur分解无法保证此条件。我们提出两种有效解决方案:一种基于工作精度的重正交归一化处理,另一种通过对近似酉因子进行显式求逆。由此得到的两种混合精度算法在文献中的各类Sylvester方程和Lyapunov方程上进行了测试。数值实验表明,对于两类方程,新算法至少与现有算法具有同等精度。另一方面,成本分析表明,若在原生支持低精度的硬件上实现,新算法通常将比单精度算法具有更快的计算速度。