Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29257 Discussions

debugging 10.1.019 with DS 2005 (and 2008) useless

kellerd
Beginner
1,180 Views

I recently found out that the ability to view host associated variables as well as the ability to view variables in modules withoutsearching for and then qualifyingEACH ONE BY HAND is not going to be supported untilsome undefined future release. These missing features render the debugger nearly useless.

We have been using CVF for years as our primary development and debuggingIDEeven though our end production machines are Linux clusters. The missing features of Intel's version force us to look for an alternative. Does anyone have any suggestions?

Dave

U Rochester Laser Lab

0 Kudos
10 Replies
bradmull
Beginner
1,180 Views

Hi Dave;

Yes, I sympathize with you on this issue. In fact, your complaint and the others I've heard about 10.1 have prevented me from wanting to upgrade my compiler. It seems strange that they would adopt a marketing strategy that would damage their product's reputation.

I have heard good things about the Lahey Fortran compiler, but I can't vouch from personal experience about their debugging capability, or their support of graphics applications.

Have you looked into their stuff? I have heard they much more serious about reliability issues.

0 Kudos
Steven_L_Intel1
Employee
1,180 Views
There is no need to qualify module variables - if the module variable is used in the routine, you can hover over it and view the value.

As mentioned in other threads, the issue of host associated variables is complex due to the change to the Intel code generator. It WILL be fixed.

Brad, I'd be interested in hearing about "other complaints". From what I can see, most of our users are satisfied with the Intel compiler compared to others. As for Lahey specifically, I think you will find that they are no longer actively developing the compiler. For an independent comparison, see www.polyhedron.com
0 Kudos
kellerd
Beginner
1,180 Views

In our application variables accessed from a module (compiled independently) need to be hand qualified. Hovering does not work for them. Even specifying them explicitly in as a watch variable does not work unless you qualify them. Is there something I am doing wrong? The code is compiled with all the deubugging switches turned on.

/nologo /Zi /Od /include:"finclude" /include:"C:Program FilesIntelMKL10.0.2.019include" /DPC /D_NOPET /assume:nocc_omp /convert:big_endian /debug-parameters:used /warn:noalignments /real_size:64 /fpe:0 /names:uppercase /iface:cref /module:"Debug"

/object:"Debug" /traceback /check:all /libs:static /threads /dbglibs /c

Although this is a major setback in our effort to get current, we will probably stick with the Intel compiler and await the fixed version while we continue to use good old CVF.

0 Kudos
Steven_L_Intel1
Employee
1,180 Views
I'd need to see an actual test case (buildable and runnable program). Since you have an open issue with Intel support,. please attach a test case to that issue if you haven't already.
0 Kudos
brianlamm
Beginner
1,180 Views
Brad,

I used Lahey as my first compiler when Fortran 90 and 95 first appeared. My experience with Lahey was they were not serious about reliability issues, and the support staff appeared not be as knowledgeable as Intel about Fortran syntax and more importantly semantics. Now, maybe they were/are a bunch of brilliant gurus reagarding building compilers, but that did not "poke through the veil" and manifest through to their support system. They were/are a nice bunch of people, don't get me wrong there, it's just I didn't see any urgency on their part to resolve problems.

And Lahey is on the down side of the slippery slope to mediocrity: they promulgate incorporating F2003 capabilities but I can find no such evidence. Their Fortran for .NET language system is, I'm sorry, a joke (practically no Fortran 90/95 array intrinsics are implemented, and optimization in Fortran for .NET is practically non-existent).

So, perhaps, just perhaps, you've not experienced Lahey's seriousness about reliability issues first-hand, just, as you indeed wrote, only "heard" Lahey is more serious about reliability issues.

With many problem reports "under my belt" submitted to Intel (this forum incorrectly reports my time "with" Intel), and all but one of them
resolved absolutely satisfactorily (the one is still pending and I'm confident it will be handled with Intel people's usual alacrity), I'm in a good position to come to Intel's defense: I'm sure they take realiability absolutely seriously. After all, correctness takes precedence over everything else (speed, memory usage, optimizations, etc.). Intel is "big"; IVF is "big", and with implementing F2003 standard on their heels, IVF will be "huge".

-Brian
0 Kudos
kellerd
Beginner
1,180 Views

Steve,

When I went back to create a concise example I found that variables satisfied by use statements ARE visible via mouse-over in the main subroutine context - but not while in a contained routine. So this issue is just a variation ofthe known 'host associated' known problem.

Dave

BTW - other than this issue I have no outstanding complaints of the Intel compiler. And I am sure glad they kept you around Steve. You have helped me out many times over thehistory of DEC/Compaq/Intel Fortran compilers for Visual Studio.

0 Kudos
g_f_thomas
Beginner
1,180 Views

Dave,

Pardon my intrusion, but for me hovering over variables in contained procedures works fine in VS 2005. IIRC it always had.

Gerry

ps I and many others would second your comments on Steve and ivf.

0 Kudos
Steven_L_Intel1
Employee
1,180 Views
What doesn't work is viewing host-associated variables in contained routines. Local variables work. We're fixing this, but it required a LOT of work in multiple parts of the compiler.

Thanks for the kind words!
0 Kudos
kellerd
Beginner
1,180 Views

Gerry,

Here is a simple example. If this works on your system I want your version!

Thanks,

Dave

module mod1
integer:: val1=10
end module mod1

subroutine sub1
use mod1, ONLY:val1
print*,val1 !breakpoint here - hover over val1 works
call cont1
contains
subroutine cont1
print*,val1+10 !breakpoint here - hover does NOT work
end subroutine cont1
end subroutine sub1

program qual_modules_test
use mod1, ONLY: val1
implicit none
call sub1

print *, 'Hello World'

end program qual_modules_test

0 Kudos
g_f_thomas
Beginner
1,180 Views

Dave,

Thanks but I'll pass as I believe you when you say it doesn't work. Steve has already pointed out that the variables in question are those of host association use. To be honest, I've never used this feature of f95/03 and I don't think I'm alone.

Gerry

0 Kudos
Reply