Compiler Bug (?)

Compiler Bug (?)

NEVER MIND - I SEE the ERROR.......................

But it does not explain how to access the :LAPACK routines.

That include file doesn't work.


subroutine solve(a,x,b)

parameter nrhs=1;m=4;n=10

real*8 a(m,n),x(m,nrhs),b(m,nrhs)



call gelss(m,n,nrhs,a,lda,b,ldb)


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

You have semicolons in the PARAMETER statement instead of commas. That causes m-4 and n=10 to be interpreted as assignments.

Retired 12/31/2016

First of all, you'd need a USE LAPCK95 and would have to enable the "Use MKL" option in the Visual Studio project. Second, your call to gelss doesn't match either the "Fortran 77" or "Fortran 95"  argument list for this routine.  See the MKL documentation for more information.

Retired 12/31/2016

Maybe I don't know where to look, but I searched all thru the

documentation, and could not find those options.

Where are those discussed?

Shouldn't it be more obvious? Like in the INTRODUCTION?

I could not find where to set USE MKL.

Is that in the "project properties" setup?

They should have an article called "How to use MKL libraries."

How about a sample 10 line program ?

Rather then leaving us guessing - - -

Bill, there is an entire "book" in the on-disk documentation called Intel MKL User's Guide, which has a Getting Started chapter (directly after "Overview"), a chapter on "Programming with Intel Math Kernel Library in Integrated Development Environments", and much more information.

The "Use MKL" is "Use Intel Math Kernel Library" under Fortran > Libraries.

You can then look up gelss in the index and find the documentation for that routine. Lastly, if you need help with MKL, ask in the MKL forum.

Retired 12/31/2016

Do you mean I have to have the DISK?

I was using the Web site documentation, so

I can't find it there?

What about the HELP LIBRARY AGENT?

It's not there, either.

The "HOW to use MKL Libarary" had me going in circles-  - - -

I found out where to turn on the fortran choices,

but I get 4 choices. How would I know which one

to use? Sequential, parallel, or "inherit" ?

Does it matter?

In Visual Studio, select Help > About > Intel Visual Fortran Composer XE 2013. The Help Library will come up with all the documentation. If you prefer the web, use

Yes, deciding on which MKL library type to use can be a bit of effort, but the MKL User's Guide explains it well. You probably want to start with "Sequential". When you see "Inherit from project defaults", that means reset to the default (which is No in this case.)

Retired 12/31/2016

I got it to link, but it crashes.

so apparently the documentation is not consistent with the

way it is actually used.

According to what it says,, I can get by with only two input arguments, and it

is supposed to select the routine based upon what input type is being used (REAl or DOUBLE)

Should I take this over to the MKL forum? It doesn't do what it says.

I am assumng a FORTRAN 95 interface, since I now have Build 2013.1


Yes, please take this to the MKL forum and provide your actual code. Make sure you have added USE LAPACK95 after your subroutine or program statement. My guess is that you didn't. You aren't using the "Fortran 95" interface unless you have the USE.

Retired 12/31/2016

Oh, yes, I added that to the code before I tested it.

But I doesn't work the way the documentation says.

A very simple test case.

Anyway, I put it there.

Leave a Comment

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