Would you say that clapack is the most fully bound for the "basic" unstructured, dense routines with lots of function overloading?  I don't completely understand all of the complexity between the traits, bindings, lapack, etc. but I cannot find an implementation for any matrix inverses in bindings::lapack? (I know... people should try not to take inverses, but they do all the time...)
I have identified the following core functions that I want to have "easy" to call for general matrices:  transpose, matrix inverse, cholesky, non-structured eigenvalues, solve non-structured linear system, SV decomp,
 * From what I can tell, the lapack bindings don't support the "getrf/getri" LAPACK functions.  Am I missing something here?  I also don't see bindings to cholesky as well.  However I see great bindings to the different types of eigenvalue problems and linear systems
 * In CLAPACK, I see the cholesky as well as matrix inversion functions.
 * I suppose I could write something like http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?LU_Matrix_Inversion to get through the basic inversion problem, but what about cholesky?  (and on this note, does anyone have an implementation using just ublas that I can call as a function:  matrix B = InvertMatrix(A) (with all templates correct, etc.))

Thanks,
Jesse


On Tue, Aug 12, 2008 at 5:52 AM, Thomas Klimpel <Thomas.Klimpel@synopsys.com> wrote:
Hello Jesse,

I'm building und testing [boost][numeric][bindings] on some different platforms, with different blas and lapack libraries. This is an ongoing effort to improve the regression tests of the [boost][numeric][bindings] library that is not yet finished and will not be finished soon.

I have tested on Win32 (XP) with clapack-3.1.1 (http://www.netlib.org/clapack/LIB_WINDOWS/prebuilt_libraries_windows.html) and MKL 10.0.x. on VC8 and VC9. I have to use the linker option "/NODEFAULTLIB:LIBCMT" and "/NODEFAULTLIB:LIBCMTD" in order to avoid link problems when I use clapack. I use "mkl_intel_c_dll.lib", "mkl_core_dll.lib" and "mkl_sequential_dll.lib" as linker input file in case of MKL. This works fine for me and is orders of magnitude faster than clapack.

Testing with ATLAS on win32 is still on my "ToDo" list, but I tested it on linux32 and linux64 and it worked fine.

Conclusion: Both clapack and MKL should work fine on Win32 (XP). I can't tell whether they will also work fine on Vista.

Question: is "ipo: error #11035: ..." a linker error? Or is it a runtime error or even a compile error?


> At this point I am willing to accept whatever linear algebra library has the easiest installation steps for this environment.

Then you should probably start with clapack (note that the above link points to prebuild libraries), but try to move on to something more efficient (like MKL) when you feel comfortable enough.

Regards,
Thomas


From: ublas-bounces@lists.boost.org [mailto:ublas-bounces@lists.boost.org] On Behalf Of Jesse Perla
Sent: Dienstag, 12. August 2008 06:48
To: Boost::ublas Mailing List
Subject: [ublas] Help with LAPACK or ATLAS bindings to boost

I am a library user who wants to get a working ublas, lapack system up and running as easily as possible on windows.

Does anyone have a thorough step-by-step of how to get bindings installed and a test project linked?  I see lots of issues posted, but no list of detailed setup steps other than mentioning that this is possible (though noone says that they have linked to intel MKL on windows?)

I am having a hell of a time trying to get the latest bindings linking with the lapack and ublas and intel MKL's lapack.  I am using Windows Vista with Visual Studio 2008 and Intel compiler 10.1.20.  The code compiles fine (no surprise since it is just the 3-4 lines of test code I believe everyone uses), but when linking or setting up libraries, bizarre things happen.  The latest is: "ipo: error #11035: Fatal error cannot open libmmdd" when I add the MKL library folder to the Intel C++'s library folders...  Even the trusty windows "reboot and reinstall everything to a folder without any spaces" trick didn't work.

If noone has a good list of setup/linking/library steps for Intel MKL, can they suggest another?  Atlas looks scary to me since it talks about using cygwin compiling and I can't figure out if I can simply link it back into my intel compiler on windows.  But if there are binaries available or simple setup steps, that would really help me out.  At this point I am willing to accept whatever linear algebra library has the easiest installation steps for this environment.

Sorry if this may be an Intel compiler on windows specific problem, but I am at wit's end.

Thanks,
-Jesse