Free LAPACK for Intel Fortran 8 on Windows?

  • Follow


I'm helping a colleague compile a chemical equilibrium dynamics code, 
which it turns out depends on LAPACK.  The compiler we're using is Intel 
Visual Fortran (version 8, though I think he's got a copy of version 9 
coming shortly) on Windows, which means using it via the Visual Studio 
interface.

Now, I know that one can easily download a copy of LAPACK and the 
reference BLAS implementation from Netlib.  And, for our purposes, 
that's exactly what we need for now -- this isn't a situation where the 
fact that the reference BLAS is rather slow will be a problem.

The problem is: The Netlib version is designed to be built with a 
makefile, and it looks like it would be rather a distinct pain to set 
things up to compile it through Visual Studio instead.

Thus: question: Is there an easier way to obtain a compiled LAPACK 
library that is compatible with Intel Fortran, which does not involve 
lots of work translating makefiles, and which also does not involve 
buying Intel's Math Kernel Library?  If so, what is it?

Thanks much!
- Brooks


-- 
The "bmoses-nospam" address is valid; no unmunging needed.
0
Reply bmoses-nospam (1258) 8/1/2006 7:26:04 AM

You can generate a .lib file of the LAPACK Package through Intel
Compiler. And add it to the project setting->link.

0
Reply vuckerster (14) 8/1/2006 9:06:55 AM


Or you could have a try to use CXML.lib in the " visual fortran 6.6"
installation directory. Most LAPACK subroutines are contained in this
library. I hope this could help!

0
Reply vuckerster (14) 8/1/2006 9:34:10 AM

Brooks Moses wrote:
> I'm helping a colleague compile a chemical equilibrium dynamics code, 
> which it turns out depends on LAPACK.  The compiler we're using is Intel 
> Visual Fortran (version 8, though I think he's got a copy of version 9 
> coming shortly) on Windows, which means using it via the Visual Studio 
> interface.
> 
> Now, I know that one can easily download a copy of LAPACK and the 
> reference BLAS implementation from Netlib.  And, for our purposes, 
> that's exactly what we need for now -- this isn't a situation where the 
> fact that the reference BLAS is rather slow will be a problem.
> 
> The problem is: The Netlib version is designed to be built with a 
> makefile, and it looks like it would be rather a distinct pain to set 
> things up to compile it through Visual Studio instead.
> 
> Thus: question: Is there an easier way to obtain a compiled LAPACK 
> library that is compatible with Intel Fortran, which does not involve 
> lots of work translating makefiles, and which also does not involve 
> buying Intel's Math Kernel Library?  If so, what is it?
How much translation of makefiles would you need?  Either adding a few 
rules to rename .obj to .o, or changing .o rules to .obj?  Yes, 64 bit 
Windows is a bit more difficult to deal with, if you choose to use 
32-bit cygwin as a development environment, but you didn't choose to 
give that much detail.
0
Reply timothyprince1 (449) 8/1/2006 12:05:04 PM

leaf wrote:
> You can generate a .lib file of the LAPACK Package through Intel
> Compiler. And add it to the project setting->link.

Thanks!  I may have not stated my question clearly enough -- what you 
describe is exactly what I was expecting to do.  However, my question 
is: How can I generate a .lib file from the LAPACK package?

I know how to make a .lib file in general, but not how to make one from 
LAPACK -- the LAPACK package has a makefile several hundreds of lines 
long, with files in multiple different directories and what looks like a 
relatively complicated build order, and Visual Studio doesn't use makefiles.

(Or, more accurately, I know how to do that, too, with figuring out what 
the makefile does by hand, and then by hand telling Visual Studio to do 
the same thing, but I expect it will take a whole day to do.  So I'm 
asking for a faster way.)

- Brooks


-- 
The "bmoses-nospam" address is valid; no unmunging needed.
0
Reply bmoses-nospam (1258) 8/1/2006 3:52:12 PM

leaf wrote:
> Or you could have a try to use CXML.lib in the " visual fortran 6.6"
> installation directory. Most LAPACK subroutines are contained in this
> library. I hope this could help!

Unfortunately, this library is not part of Intel Visual Fortran 8, which 
is what I'm using.  I suspect it may have been moved to part of the 
Intel Math Kernel Library instead.

Thanks anyway!
- Brooks


-- 
The "bmoses-nospam" address is valid; no unmunging needed.
0
Reply bmoses-nospam (1258) 8/1/2006 3:54:07 PM

Tim Prince wrote:
> Brooks Moses wrote:
>>Thus: question: Is there an easier way to obtain a compiled LAPACK 
>>library that is compatible with Intel Fortran, which does not involve 
>>lots of work translating makefiles, and which also does not involve 
>>buying Intel's Math Kernel Library?  If so, what is it?
> 
> How much translation of makefiles would you need?  Either adding a few 
> rules to rename .obj to .o, or changing .o rules to .obj?  Yes, 64 bit 
> Windows is a bit more difficult to deal with, if you choose to use 
> 32-bit cygwin as a development environment, but you didn't choose to 
> give that much detail.

Rather more translation than that; I was envisioning a scenario in which 
I was compiling it via the Visual Studio integration, which doesn't use 
makefiles at all, but instead uses .vfproj (and Visual Studio .sln) files.

The suggestion of using Cygwin (and make through that) and the 
command-line version of the compiler may work; I'm not sure how much 
effort it will take me to get all that working....

Thanks!
- Brooks


-- 
The "bmoses-nospam" address is valid; no unmunging needed.
0
Reply bmoses-nospam (1258) 8/1/2006 3:56:03 PM

Brooks Moses wrote:
> I'm helping a colleague compile a chemical equilibrium dynamics code, 
> which it turns out depends on LAPACK.  The compiler we're using is Intel 
> Visual Fortran (version 8, though I think he's got a copy of version 9 
> coming shortly) on Windows, which means using it via the Visual Studio 
> interface.
> 
> Now, I know that one can easily download a copy of LAPACK and the 
> reference BLAS implementation from Netlib.  And, for our purposes, 
> that's exactly what we need for now -- this isn't a situation where the 
> fact that the reference BLAS is rather slow will be a problem.
> 
> The problem is: The Netlib version is designed to be built with a 
> makefile, and it looks like it would be rather a distinct pain to set 
> things up to compile it through Visual Studio instead.
> 
> Thus: question: Is there an easier way to obtain a compiled LAPACK 
> library that is compatible with Intel Fortran, which does not involve 
> lots of work translating makefiles, and which also does not involve 
> buying Intel's Math Kernel Library?  If so, what is it?

As I recall, my experience of compiling LAPACK with DVF back in the day 
was that it was very straightforward to do -- add all of the files into 
a project and make the output type .lib.  (I wanted to repackage the 
LAPACK LU decomposition routine to make it accessible from a dll and 
callable from VB.)
0
Reply enigma (394) 8/1/2006 4:19:42 PM

Brooks Moses wrote:
> I'm helping a colleague compile a chemical equilibrium dynamics code, 
> which it turns out depends on LAPACK.  The compiler we're using is Intel 
> Visual Fortran (version 8, though I think he's got a copy of version 9 
> coming shortly) on Windows, which means using it via the Visual Studio 
> interface.
> 
> Now, I know that one can easily download a copy of LAPACK and the 
> reference BLAS implementation from Netlib.  And, for our purposes, 
> that's exactly what we need for now -- this isn't a situation where the 
> fact that the reference BLAS is rather slow will be a problem.
> 
> The problem is: The Netlib version is designed to be built with a 
> makefile, and it looks like it would be rather a distinct pain to set 
> things up to compile it through Visual Studio instead.

Look again -- one of the available packages is lapack-pc-df.zip, which 
should be easily updated to the current version of Visual Studio.
0
Reply enigma (394) 8/1/2006 4:22:04 PM

Brooks Moses wrote:
> I'm helping a colleague compile a chemical equilibrium dynamics code, 
> which it turns out depends on LAPACK.  The compiler we're using is Intel 
> Visual Fortran (version 8, though I think he's got a copy of version 9 
> coming shortly) on Windows, which means using it via the Visual Studio 
> interface.
> 
> Now, I know that one can easily download a copy of LAPACK and the 
> reference BLAS implementation from Netlib.  And, for our purposes, 
> that's exactly what we need for now -- this isn't a situation where the 
> fact that the reference BLAS is rather slow will be a problem.
> 
> The problem is: The Netlib version is designed to be built with a 
> makefile, and it looks like it would be rather a distinct pain to set 
> things up to compile it through Visual Studio instead.

There is a Visual Studio-compatible makefile version in lapack-pc-df.zip 
on netlib.  It was designed for DVF, but I would assume that modifying 
the compiler choice to work for ifort would be straightforward. 
Although the "standard" Visual Studio way of building things is to set 
up a solution file and project files, AFAIK they still support using 
nmake to build a makefile.

Incidentally, looking through the makefile and tree for that zip file, I 
don't think it would be a huge chore to convert it to a Visual Studio 
solution.
0
Reply enigma (394) 8/1/2006 4:28:03 PM

Brooks Moses wrote:
> I'm helping a colleague compile a chemical equilibrium dynamics code, 
> which it turns out depends on LAPACK.  The compiler we're using is Intel 
> Visual Fortran (version 8, though I think he's got a copy of version 9 
> coming shortly) on Windows, which means using it via the Visual Studio 
> interface.
> 
> Now, I know that one can easily download a copy of LAPACK and the 
> reference BLAS implementation from Netlib.  And, for our purposes, 
> that's exactly what we need for now -- this isn't a situation where the 
> fact that the reference BLAS is rather slow will be a problem.
> 
> The problem is: The Netlib version is designed to be built with a 
> makefile, and it looks like it would be rather a distinct pain to set 
> things up to compile it through Visual Studio instead.
> 
> Thus: question: Is there an easier way to obtain a compiled LAPACK 
> library that is compatible with Intel Fortran, which does not involve 
> lots of work translating makefiles, and which also does not involve 
> buying Intel's Math Kernel Library?  If so, what is it?

there are optimised blas/lapack packages here
http://developer.amd.com/acml.aspx
i'd assume they'll be useable if you're using amd cpus (? for intel).
0
Reply none8140 (304) 8/3/2006 12:51:58 AM

Craig Powers <enigma@hal-pc.org> wrote:

> 
> As I recall, my experience of compiling LAPACK with DVF back in the day
> was that it was very straightforward to do -- add all of the files into
> a project and make the output type .lib.  

It should be pretty much trivial. There are just 4 directories or so?
Just compile everything and use a call at "ar" to stick them in a
library.

Only gotcha: a couple of routines (ILAENV) should be compiled wihtout
optimization. Check the makefile.

Victor.
-- 
Victor Eijkhout -- eijkhout at tacc utexas edu
ph: 512 471 5809
0
Reply see449 (230) 8/3/2006 5:01:50 PM

11 Replies
505 Views

(page loaded in 2.597 seconds)

Similiar Articles:


















7/22/2012 10:16:02 PM


Reply: