乔尔克
混合精度Cholesky-QR分解及其在多核CPU上的应用。Cholesky-QR(Cholesky-QR)算法只需要在并行处理单元之间进行一次全局归约,并使用BLAS-3核进行大部分计算。因此,与其他正交化算法相比,CholQR在许多当前的计算机体系结构上获得了优越的性能,与算术运算相比,这种结构的通信变得越来越昂贵。尤其是当输入矩阵是高瘦的时候。不幸的是,CholQR的正交误差与输入矩阵的条件数成二次函数关系,当矩阵病态时,它在数值上是不稳定的。为了提高CholQR的稳定性,我们最近采用了混合精度算法;输入和输出矩阵在工作精度上,但它的一些中间结果积累在加倍精度上。本文分析了这种混合精度CholQR的数值性质。分析表明,通过选择性地使用倍增精度,混合精度CholQR的正交性误差仅与输入矩阵的条件数成线性关系。数值结果证明了混合精度CholQR在实际应用中改善了数值稳定性。然后我们研究它的性能。当目标硬件不支持所需的更高精度时,需要进行软件仿真。例如,使用软件仿真的双精度双精度工作64位双精度,混合精度CholQR需要的浮点指令比标准CholQR多8.5 imes$。另一方面,使用双倍精度的通信成本增加不太显著,并且我们在具有不同图形处理单元(GPU)的多核CPU上的性能结果表明,在更新的体系结构上,使用双双精度算法的开销正在降低,与通信相比,计算变得更便宜。因此,使用最新的NVIDIA GPU,混合精度CholQR仅比标准CholQR慢1.4 imes$。最后,我们给出了在具有多个gpu的多核CPU上使用混合精度CholQR避免Krylov子空间投影方法求解非对称线性方程组和对称特征值问题的实例研究。这些案例研究表明,通过对Krylov方法的这个小而关键的部分使用更高的精度,我们不仅可以提高解算器的整体数值稳定性,而且在某些情况下,还可以改善它们的性能。
此软件的关键字