Arpack

Arpack

Hi,
I'm want to solve the generlized eigen value problem (Ax=Lambda Bx) where B is not possitive definate (has zeros along some diagonals). I have been using dsygvx by putting in small bodged values along the diagonals where zero to try and push the corresponding eigen values high. However, the results are very sensitive to these bodged values.

I have found a solver called Arpack that seems to do what I want (I am interested in this solver anyway as it solves sparse matrices) but don't know how to compile it. I'm working in Visual Studio 2008 using C# which lets me call functions in Fortran Dlls.

My questions are:
Does MKL offer anything similar to what Arpack can do?
It seems that Arpack could be distributed with MKL, are there any plans to do this? This would solve my compilation problem.
If not, does anyone have any tips for compiling Arpack to a Win32/Win64 Dll? Win64 target is important for me.

Thanks

11 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I do not think MKL is really going to do this due to the reverse communication interface ARPACK is using. For most users, this interface is a little bit confusing. ARPACK itself does not offer any matrix computation functions. Users have to handle it theirselves.

I am also curious about a WIN32/64 ARPACK DLL. That would be really interesting! Please keep me posted on this problems (kleinwithu@gmail.com). Thanks!

Kai

The MKL team is considering the addition of ARPACK to MKL but have no concrete plans currently. We have received other requests for this and we're always interested in hearing what parts people are interested in.

Any others have comments on adding ARPACK to MKL?

Nice! I have been waiting for this for a while!

Since MKL has sparse matrix/vector functions already, it would be nice not to use reverse communication interface for end users. But, reverse communication would be still useful when evaluation of Ax or f(x) is not explicit. I suggest to offer two sets of interfaces. Of course, the author, Dr. Sorensen, might have some better ideas.

MAD rosenqu:The MKL team is considering the addition of ARPACK to MKL but have no concrete plans currently. We have received other requests for this and were always interested in hearing what parts people are interested in.

Any others have comments on adding ARPACK to MKL?

It would be very interesting to add ARPACK to MKL. I have used ARPACK for some time, with MKL carrying out the matrix-vector and matrix-matrix multiplications, and it can do its job very well.
Unfortunately, I found that PARPACK(the parallel version, ARPACK + mpi) can not boost the efficiency of calculation as I hope (Core 2 Duo E6400). In addition, I found that there is no multi-threaded version of ARPACK offered.
I hope that MKL team could supply us a multi-threaded version, because many computers use multi-core CPU.
A perfect version of ARPACK would be that: ARPACK can be parallelized using mpi between every computer, and multi-threaded using openmp between every core on one computer at the same time.

I wish this would help you for your development.

sunzhaoyu2000@gmail.com

Quoting - Todd Rosenquist (Intel)
The MKL team is considering the addition of ARPACK to MKL but have no concrete plans currently. We have received other requests for this and were always interested in hearing what parts people are interested in.

Any others have comments on adding ARPACK to MKL?

It would be great, if it still hasn't been added.

Quoting - Todd Rosenquist (Intel)
The MKL team is considering the addition of ARPACK to MKL but have no concrete plans currently. We have received other requests for this and were always interested in hearing what parts people are interested in.

Any others have comments on adding ARPACK to MKL?

This would be really good addition to MKL. I am dealing with large sparse Eigen systems and only interested in lowesthightest Eigen valuesvectors, and apparently ARPACK is the best answer to it. Unfortunatley, it is more involved and complicated process to install ARPACK (and other libraries that ARPACK needs) in a windows based system (MS XP or Vista).

Yes, I look forward to see ARPACK in MKL soon.
bulent

Just wondering whether there are any updates on this work? I still can not find arpack in MKL.Regards,Xin

Hello, any news? Any work in this side? it is still not in MKL..

Niriddiki.

There are good reasons not to include every old Fortran library in MKL. That it is not included is probably because of the small number of users who need Arpack and also need help with building the Arpack library.

That having been said, I found it quite simple to build the Arpack library using Intel Fortran on W8-X64. The nature of this library is such that there is no need to use the make utility, and we do not need to tweak the make.inc file(s) for working with Intel Fortran.

Download and extract the two tar.gz files from the Arpack site. Change to the SRC directory, and issue the command

ifort /MD /O2 /I. /c *.f

Do likewise in the UTIL directory. Then, combine all the *.obj files in the SRC and UTIL directories into a library, say arpack64.lib.

Now test the library using one of the Arpack examples:

ifort /Qmkl /MD /O2 examples/simple/sssimp.f ../../arpack64.lib

If you wish to use the IDE instead, create a library project and put all the source files in the SRC and UTIL directories into it. Include this library and the appropriate MKL libraries in any of your projects that depend on Arpack and build.

Please note that I have not tested Arpack built this way with any degree of thoroughness, nor am I an Arpack user. See, for example, http://software.intel.com/en-us/articles/how-to-resolve-arpack-issues-with-intel-mkl-110-update-3 .

(I have used forward slashes instead of backslashes in the path because the Forum software eats up backslashes).

Hi Niriddiki,

Since that we checked several options for Sparse Eigensolver in MKL one of which was addition of ARPACK. And we selected different approach. We added that functonality as new domain called Intel MKL Extended Eigensolver, please try it.

Best regard, Alexander

Leave a Comment

Please sign in to add a comment. Not a member? Join today