Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
是否可以多线程子例程?我喜欢使用 openmp 在多核上的 lapack 模块中运行 ZGEEV 子例程,以加快速度。这甚至可能吗?
是的,在这种情况下。LAPACK 使用 BLAS 来获得性能,并且有许多高效的多线程 BLAS 版本(例如 MKL、ACML、ATLAS)。因此,您可以使用该级别的线程来提高性能,但我必须说,根据我的经验,对角化器的加速是有限的。
但是,更一般地说,您必须自己并行化代码。在这种情况下,您会很幸运,因为重要层的线程版本已经存在。