-1

is it possible to multi thread subroutines? I like to use openmp to run ZGEEV subroutine out of the lapack module on mutiple cores to fast things up. Is that even possible?

DaPhil
  • 1,509
  • 4
  • 25
  • 47

1 Answers1

1

Yes in this case. LAPACK uses BLAS to get performance, and there are a number of efficient, multithreaded versions of BLAS (e.g. MKL, ACML, ATLAS). So you can use the threads at that level to get improved performance, though I must say that in my experience speed up is limited for diagonalisers.

More generally, though, you will have to parallelise the code yourself. In this case you get lucky because threaded versions of the important layer already exist.

Ian Bush
  • 6,996
  • 1
  • 21
  • 27