Quantcast
Channel: Intel® Software - Intel® Visual Fortran Compiler for Windows*
Viewing all 5691 articles
Browse latest View live

This project must be converted to the current visual C++ project format

$
0
0

I'm getting the following error when I try to open my project using Visual Studio 2010.

This project must be converted to the current visual C++ project format

It has been working previously and Visual Studio works with other projects.

The only thing I can think of is that I may have tried to open it with an old Parallel Studio XE2011 with VS 2008.

Any suggestions on how I can open my project.

THanks

 

 

 

 


Q re debugger window size

$
0
0

I have had trouble trying to readjust the size of the OUTPUT window

when I hit a break point. Very often, I want to scroll backwards, or see the 120 character lines

that a program might produce.

Is there a way to get the FULL window size and scroll history before hitting a break point?

You cannot do it AT the break point because the window disappears.

Peculiar PRINT statement behavior

$
0
0

The subroutine I am uploading has an anomaly I can't explain.

Around line 61 there is a PRINT statement for the array QU(0:NQU)

It does not print the array, just the opening character string.

I checked with the debugger, and the value NQU is just as it should be, a positive number.

furthermore the other arrays DO print out as desired -

using the same Format statement.

So I am wondering - what is special about that array that would trigger this problem?

BTW, I have a special reason for dimensioning the arrays the way I do,

starting with 0 as the first element, but I am wondering if that "fools" the compiler.

I tried taking the array QU out of the calling sequence, but that had NO effect.

 

 

AttachmentSize
Downloadtidiv.f90300 bytes
Downloadiadd.f90912 bytes
Downloadidiv.f903.23 KB
Downloadimul.f90922 bytes
Downloadisub.f90769 bytes

Difference between Intel Visual fortran Compiler and Intel Visual fortran composer

$
0
0

 What is the basic difference between  Intel Visual fortran Compiler and Intel Visual fortran composer ?

 Whether intel visual fortran COMPILER  alone sufficient for writing fortran programmes ? . WHAT IS the latest intel visual fortran compiler avialble for purchase?

 

 

 

 

Writing into a data file

$
0
0

I have the following code which is supposed to write a <LF> between two text strings in the output file (which is a CSV file for reading into Excel):

n1 = '"'//trim(ndprops(1))//char(10)//trim(ndprops(2))//'",'

write(csvu,'(a)') trim(n1)

This is so that text too long for a cell is written on two lines into that cell.

However on examination of the file written, I see 0d0a so that an extra <CR> is written to the file, which means the line is read incorrectly into Excel.

How do I tell Fortran not to write the 0d?

Error LNK2019: unresolved external symbol _Invert_LaplacianZBCS referenced in function _MAIN__ Main.obj

$
0
0

Hi,

I got this error when trying to call a C function in Fortran. The C prototype of the function is

                        void Invert_LaplacianZBCS(double *t,int nx,int ny);

I built an interface in my Fortran program

   INTERFACE
!   
      SUBROUTINE Invert_LaplacianZBCS(t, nx, ny) BIND(C, name='Invert_LaplacianZBCS')
!
         USE, INTRINSIC :: iso_c_binding, ONLY: c_int, c_ptr
!
         IMPLICIT NONE
!
         TYPE(c_ptr), VALUE :: t
!
         INTEGER(c_int) :: nx, ny         
!
      END SUBROUTINE Invert_LaplacianZBCS
!      
   END INTERFACE

Then I called the C function in the main program:

     USE, INTRINSIC :: iso_c_binding

      REAL(KIND=c_double), ALLOCATABLE, DIMENSION(:), TARGET    ::  x
!
      INTEGER(c_int)        ::  m

      CALL Invert_LaplacianZBCS(C_LOC(x), m, m)

x and m were used in previous calculations and I checked that both of them were valid before the execution of the call.

However, an error was still produced when I built the solutions and the buildlog says:

 

Deleting intermediate files and output files for project 'M639 HW4', configuration 'Debug|Win32'. Compiling with Intel(R) Visual Fortran Compiler XE 12.0.5.221 [IA-32]... ifort /nologo /debug:full /Od /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc100.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc10 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\\bin""\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Compressed_Row_Storage.f90" ifort /nologo /debug:full /Od /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc100.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc10 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\\bin""\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Iterative_Methods.f90" ifort /nologo /debug:full /Od /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc100.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc10 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\\bin""\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Main.f90" Linking... Link /OUT:"Debug\M639 HW4.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST /MANIFESTFILE:"\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Debug\M639 HW4.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Debug\M639 HW4.pdb" /SUBSYSTEM:CONSOLE /STACK:100000000 /IMPLIB:"\\pe-file\grads\jie.he\My Documents\Fortran projects\M639 HW4\M639 HW4\Debug\M639 HW4.lib""Debug\Compressed_Row_Storage.obj""Debug\Iterative_Methods.obj""Debug\Main.obj" Link: executing 'link' Main.obj : error LNK2019: unresolved external symbol _Invert_LaplacianZBCS referenced in function _MAIN__ Debug\M639 HW4.exe : fatal error LNK1120: 1 unresolved externals M639 HW4 - 2 error(s), 0 warning(s)

Does anyone know what is going wrong, please? I use Intel(R) Visual Fortran Compiler XE 12.0.5.221.

Thanks,

LNK4099 PDB vc100.pdb' was not found - nothing works. Intel fortran evaluation

$
0
0

I am evaluating Fortran Composer XE 2013 SP1 and trying to look at the debugger.  This is a fortran project converted from Compaq Visual fortran. All sorts of problems trying to look at variables, but probably related to these warnings:

utl_cfgfasc.obj : warning LNK4099: PDB 'vc100.pdb' was not found with 'utl_cfgfasc.obj' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info EXG_.lib(exg_xindex.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'EXG_.lib(exg_xindex.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info EXG_.lib(exg_cindex.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'EXG_.lib(exg_cindex.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info EXG_.lib(exg_inpdes.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'EXG_.lib(exg_inpdes.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_str.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_str.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_prc.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_prc.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_init.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_init.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_for.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_for.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_trnlnm.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_trnlnm.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_tim.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_tim.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info OS_.lib(os_fil.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'OS_.lib(os_fil.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info FIL_.lib(fil_r.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'FIL_.lib(fil_r.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info FIL_.lib(fil_a.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'FIL_.lib(fil_a.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info FIL_.lib(fil_n.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'FIL_.lib(fil_n.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info FIL_.lib(fil_l.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'FIL_.lib(fil_l.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info FIL_.lib(fil_c.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'FIL_.lib(fil_c.obj)' or at 'H:\ETP\EXPC\CFGFASC\Debug\vc100.pdb'; linking object as if no debug info

Whole program Optimization is NO. I tried changing Fotran|output Files| Program Database File name to $(TargetDir)\vc100.pdb instead of $(Intdir).

I deleted all pdb and obj files before doing a clean and rebuild.

When I look at the workspace, I see vc100.pdb does in fact live in the same directory (/debug) as the obj and either the exe or lib file.

So what have I done wrong?

MSV not recognizing fortran compiler

$
0
0

My company recently migrated all laptops to Windows 7.  when they reinstalled Microsoft Visual Studios 2008 Version 9.0.21022.8RTM and Intel Visual Fortran Compiler 9.1 I no longer can find fortran on MSV lists.

My wonderful IT group said they are responsible for only installing the components, not making sure they work properly.   Can anyone guide me to what steps to take to try to get MSV and Intel to work together.

Thank You.


Error - closes program and returns to Visual Studio

$
0
0

I am running a complex program and I'm getting an error - the program just closes. The program normally works but in this case it is using more data than normal. 

I thought if I run it within Visual Studio I would at least see which line is causing the problem.

But the program just closes and returns to Visual Studio.

Do you have any suggestions on how track down the error?

Thanks

Referencing a function from outside as well as inside when creating a DLL

$
0
0

I am creating a DLL.

I have a function that will be referenced from outside as well as inside.

For it to be referenced from outside, I have used DLLEXPORT. But then the inside referenced don't link and conplain with LNK2001 error i.e. unresolved external symbol for that function.

How can I fix this situation? Please help!

Does Static Library need to export functions?

$
0
0

I have inherited a VS 2005 solution which contains a C dll project and a Fortran static library project.  The C dll project requires the Fortran routines.  I have updated the solution for VS2010.

The C dll project has the Fortran library added as an Additional Dependency.  I have also added the Fortran library to C dll project.

However, the C project build show unresolved symbols for each of the Fortran routines.

If I add !DEC$ ATTRIBUTES DLLEXPORT to the Fortran routines, then I get no complaints.

Do I really need to export the routines from a static library, or have I missing something?

Regards, Mike

 

large data sets with OMP

$
0
0

Hi,

I have a long-running program (many days) which uses many (20 - 40) OMP threads.  It uses a large amount of input data, which is fixed during execution.  I've run into the 2 Gbyte stack limit issue and I'm now somewhat confused about the exact definitions of various compiler/linker options and the windows resource monitor reports.  I'm using the 2013 1.1.139 fortran compiler on 64-bit windows 7.  The data arrays are allocatable but, at the moment, are in modules or common...I understand that makes them static.  I'm thinking of moving the largest one into the main program and passing it to subroutines as needed.

When the stack and heap commit sizes are set to 2 GB and the reserves are set to 0, the program dies when it invokes the OMP section.  Setting /heap-arrays to 0 does not help.  No diagnostics but I assume I'm overrunning the stack or heap.  Adding 2 GB to the stack and heap reserve sizes works, however, when the OMP section is invoked, the Windows Resource monitor zooms to 10s of GB while the percent of used memory and working set reported don't change much.

Questions:

One of Steve Lionel's suggestions (5/16/2011) is to use allocatable arrays in modules rather than in common.  Did that to no effect when reserves set to 0.  It is during the module allocations that the committed and working set values reported by MS Resource Monitor get much larger.  This is in a serial part of the code but I'll soon be working with data sets that will exceed the 2 GB limits in the module as well.  Don't I have to get them out of the module?  Even if I do make everything allocatable in the main program, don't I still have the same problem when my resident data set exceeds 2GB?  If that makes them dynamic (8TB size), I assume the passing of the arrays to the OMP threads in subroutine calls will leave the data in one memory location (with fortran pointer) and not fill the memory with multiple copies.

Are the reserves placed in memory, if available or, as described, virtual memory (=disk?)?  How can the MS committed be much larger than the Linker maximums?

What is the difference, if any, between 'commit' memory according to the Intel compiler and the MS Resource Monitor report?

Why does the MS Monitor report a very large committed size while reporting almost no change in Used Physical Memory when the OMP section starts?  Does each thread get the committed or reserve memory allocation?  If it is committed, doesn't that mean it is used?  The large data sets are shared as the Used Physical Memory seems to indicate.  It seems that the invocation of the OMP, even though it does not consume much more memory, requires a much larger committed space, which somehow causes overflows.

When the MS committed exceeds the actual physical memory (while the used physical memory is well below it), does this affect execution, virtual memory, or ...?

The MS 'working set' has stayed under 2 GB.  Is the working set the amount of memory actually used?  If so, why am I blowing off if the reserves are not set?

Is Windows 8 also limited to these 2GB limits?

I gather that 'large address aware' has nothing to do with this issue? (I've tried it but not in all possible combinations.)  Is there some other method folks are using to get around this issue with large static data sets?

Once I more fully understand what these choices and reports mean, I'll be able to properly change to code to accommodate the forthcoming much larger data sets while not sacrificing speed as the programs already take up alotta time.

--Thanks,  Bruce

Windows errors for valid Fortan io

$
0
0

I have converted an application with an awful lot of  user interface from  QuickWin to Windows and am currently at the testing/fixing phase. As such I have a custom error trapping routine inserted all over the place looking at the windows error status from the sdk getlasterror() and logging such events along with a stack trace, error code etc.

I seem to get an irritating number of 'false errors' from valid Fortran i/o, for example a Fortran INQUIRE statement on a file  with EXIST or IOSTAT generates a windows error code if the file does not exist. I expect the Fortran runtime provokes windows by trying to open the file and then returns the Fortran status based on that status. It would seem to be a bit more friendly if the Fortran runtime reset and spurious errors that it generated.

Are there any options that would work around this? I suppose I could start replacing Fortran with Sdk file utilities.but that seems like wasted effort.

 

Format for DLL calls

$
0
0

My applications are DLLs intended primarily to be called from Excel/VBA, and so my entry points look like:

Subroutine WaterSatDensity_F(TempC, Value, Units)

!DEC$ ATTRIBUTES DLLEXPORT, STDCALL, ALIAS:'WaterSatDensity_F' :: WaterSatDensity_F

!DEC$ ATTRIBUTES REFERENCE :: Units

For one group of installs on a server, Excel is not installed, and so I need a simple way to check that the install is correct, my user licensing is operating and the DLL is returning valid results. I want to write a Fortran main program, which will call the DLL using the same entry points as VBA.  What should my calling program look like?  

Thanks,

David

IMSL and MKL selection using compiler directive

$
0
0

I'm using Intel Visual Fortran v.11.1.065 under Windows 7 64 bit. 
What I want to make is related with compiler directives, especially for math library.
Here's my idea :

1. There exist two kinds of debug-release configuration, for IMSL and MKL. 
Thus command line arguments contains library-specific environment variables.
2. In code, compiler directive determine which math library is selected.
Then, library-specific functions can also be selected in code.

Thanks, 
HK


IMSL and MKL selection from compiler directives

$
0
0

I'm using Intel Visual Fortran v.11.1.065 under Windows 7 64 bit. 
What I want to make is related with compiler directives, especially for math library.
Here's my idea :

1. There exist two kinds of debug configuration, for IMSL and MKL. 
Thus command line arguments contains library-specific environment variables.
2. In code, compiler directive determine which math library is selected.
Then, library-specific functions can also be selected in code.

However, I don't know how to set the compiler directives for determining libraries.

Thanks, 
HK

DEALLOCATING DATA TYPE POINTERS

$
0
0

Just a general coding question regarding data type pointer variables.

My question is for pointer data types that contain allocatable arrays such as the following example:

C DATA TYPE DECLARATION IN A MODULE
      TYPE TARRAY

	        INTEGER::POS

	        LOGICAL::USEVAL

	        DOUBLE PRECISION::VAL

	        DOUBLE PRECISION,DIMENSION(:),ALLOCATABLE::TIM,DAT

	      END TYPE 

	      !

	      TYPE TTYPE

	        INTEGER::NT

	        CHARACTER(20), DIMENSION(:),ALLOCATABLE::NAM

	        TYPE(TARRAY),DIMENSION(:),ALLOCATABLE::T

	      END TYPE

	      !

	      TYPE, EXTENDS (TTYPE):: TTYPEAUX

	        REAL,         DIMENSION(:),ALLOCATABLE:: FAC

	        INTEGER,      DIMENSION(:),ALLOCATABLE:: IDX 

	        LOGICAL                               :: PRNT

	      END TYPE
 

That are then declaired as a pointer as follows:

      TYPE(TTYPEAUX), POINTER:: DATA
      ALLOCATE(DATA)
 

After the pointer has been allocated the various allocatable parts in the data type are allocated. 

My question is will there be any memory leaks or problems if at the end of the code or when I no longer need the pointer I just use the following:

      DEALLOCATE(DATA)
 

Which would then DEALLOCATE the data type and all the allocatable arrays within it.

For that matter if DATA was only a regular pointer array would it deallocate the entire array or do I have to do something like:

      DATA=>NULL()
C or
      NULLIFY(DATA)
 

To remove it from memory or would those only disassociate the pointer leaving the array sitting in memory. (There maybe other features pointing to the pointer array.)

I personally hate pointers, but for this particle program that I am working on I have to use them.

 

Thanks for your help as always!

•Intel(R) Fortran Compiler for Intel(R) EM64T-based applications, Version 10.1

$
0
0

Hi,

For my strenth calculations I need the fortran compiler 10.1.

My questions:

Runs the 10.1 fortran compiler on windows 7?

And where can I downlaod this version?

Thanks in advance

Best Regards

Jan

Transition to Windows 7

$
0
0

Our company is about to transition from Windows XP to Windoes 7 and has asked me to test an Intel Fortran compiler with 64 bit application on a Windows 7 test machine.  The version they asked me to test was given as "2013-1-119W7".  I can't find it on the download web site and am not sure that my instructions make sense.  The latest to which I have access is 2013-SP1.1.139.  I am in the process of making the required tests using it via Visutal Studio 2010.  And all seems to be in order.

Naturally, what concerns me is that I may be testing the wrong product; that there may be issues in the nomenclature which escape me.  Do my instructions make sense to you?  And, if I am testing the wrong product, how do I get the right one?

Compaq Visual Fortran project compilation error

$
0
0

Hello!

I have a project, console application, wroted on Fortran, for two years working in Compaq Visual Fortran 6.6.0 but now project is very big and it works takes too much time for calculations so I've decide to try Visual Studio 2010 with Visual Fortran Compiler XE 12.0 but get a several errors from very start.

First, when I've tried to open old project in new Studio (all settings are default) and built it, everything seems to goes fine but project wasn't compiled. No errors in logs, just executes an cmd-window with text "%your project.exe% is not recognized as an internal or external command, operable program or batch file".

Second. I've made a new project and add all source files and datafiles from old project, trying to compile and get these log:

"Compiling with Intel(R) Visual Fortran Compiler XE 12.0.1.127 [IA-32]...
main_2c_z.FOR
C:\test\win\test\source\main_2c_z.FOR(89): error #7112: This actual argument must not be the name of a procedure.   [M_G]
compilation aborted for C:\test\win\test\source\main_2c_z.FOR (code 1)

Build log written to  "file://C:\test\win\test\test\Debug\BuildLog.htm"
test - 2 error(s), 0 warning(s)"

But there is some kind of mystery, because on 89 line in "main_2c_z.FOR" the almost same code as earlier in this file but error is only one gets.

Here is code example:

... EXTERNAL M_G,M_G1 ... CALL PART01(M_G1, ARR_A,ARR_B) ! line 81 ... CALL PART02_(M_G1, ARR_A,ARR_B) ! line 89 ...

Where M_G is subroutine with ENTRY M_G1

Viewing all 5691 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>