-1

是否可以多线程子例程?我喜欢使用 openmp 在多核上的 lapack 模块中运行 ZGEEV 子例程,以加快速度。这甚至可能吗?

4

1 回答 1

1

是的,在这种情况下。LAPACK 使用 BLAS 来获得性能,并且有许多高效的多线程 BLAS 版本(例如 MKL、ACML、ATLAS)。因此,您可以使用该级别的线程来提高性能,但我必须说,根据我的经验,对角化器的加速是有限的。

但是,更一般地说,您必须自己并行化代码。在这种情况下,您会很幸运,因为重要层的线程版本已经存在。

于 2013-01-14T13:41:19.450 回答