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)

!!!!!!!!!!!!!!!!!!!!!!!!!!!!

lda=m;ldb=m

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

end

12 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项
Steve Lionel (Intel)的头像

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

Steve
Steve Lionel (Intel)的头像

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.

Steve

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 - - -

Steve Lionel (Intel)的头像

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.

Steve

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?

Steve Lionel (Intel)的头像

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 http://software.intel.com/sites/products/documentation/doclib/stdxe/2013...

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.)

Steve

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

 

Steve Lionel (Intel)的头像

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.

Steve

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.

登陆并发表评论。