我正在尝试解决 A*x = b 其中 A 具有复杂值且密集的问题。
我使用 cuSolverDN 库中的 cusolverDnCgeqrf() 方法对一组线性方程组进行 QR 分解。但是,我想多次这样做以加快处理速度。
这种方法有“批处理”版本吗?或者我可以使用另一个 CUDA 库吗?
我正在尝试解决 A*x = b 其中 A 具有复杂值且密集的问题。
我使用 cuSolverDN 库中的 cusolverDnCgeqrf() 方法对一组线性方程组进行 QR 分解。但是,我想多次这样做以加快处理速度。
这种方法有“批处理”版本吗?或者我可以使用另一个 CUDA 库吗?
您可以使用 Magma 批量二维码:http: //icl.cs.utk.edu/projectsfiles/magma/doxygen/group__group__qr__batched.html#details
或 Nvidia 批处理库: https ://devblogs.nvidia.com/parallelforall/parallel-direct-solvers-with-cusolver-batched-qr/
我不确定它们是否有 python 包装器。我想补充一下,目前可以通过 Magma 或 Nvidia 获得许多求解器的批处理版本。
目前还没有一个单一的标准,但它正在进行中,在批量 blas 研讨会中讨论:这里
http://www.netlib.org/utk/people/JackDongarra/WEB-PAGES/Batched-BLAS-2017/ 在这里:
http://www.netlib.org/utk/people/JackDongarra/WEB-PAGES/Batched-BLAS-2016/
草案已经准备好,我希望很快会有一个标准的批量 BLAS。